Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
c0e3206
Initial check-in of modules purchase_order_import, purchase_order_imp…
alexis-via Aug 27, 2016
a2686c2
FIX Don't use _inherit = ['business.document.import']
alexis-via Oct 2, 2016
2260522
[IMP] handle the case where the xml file is generated with mime type
Oct 4, 2016
ef618eb
Add support for extraction + matching on website
alexis-via Oct 4, 2016
e4849ab
8.0 Add support for partner bank matching on invoice update (#6)
Oct 18, 2016
3d87717
Prepare v10 branch
alexis-via Feb 15, 2017
e90d482
Continue port of modules for v10.0, in particular sale_order_import_*…
alexis-via Feb 27, 2017
9cb9a29
Port purchase_order_import* to v10.0
alexis-via Feb 28, 2017
7f28716
Fix import of sale order with price_source='pricelist' when pricelist…
alexis-via Aug 14, 2018
1a32565
Check the VAT number of the destination partner, to make sure the bus…
alexis-via Aug 25, 2018
a041c0b
Update translation files
oca-transbot Nov 24, 2018
91fe040
[FIX] 10.0 bad use of play_onchange
gurneyalex Dec 12, 2019
3d0d777
[FIX] remove method defined twice
gurneyalex Dec 12, 2019
dc49325
[FIX] purchase_order_import: missing price_unit on line
gurneyalex Dec 12, 2019
9018c09
[ADD] Add support for UBL OrderResponse
lmignon Feb 12, 2020
4cd95bf
[IMP] purchase_order_import: log exception in case of parsing error
lmignon Mar 9, 2020
21df54c
FIX purchase_order_import_*: version number after manual merge
bealdav Jul 13, 2020
c32bb36
[IMP] purchase_order_import: pre-commit auto fixes
yankinmax Apr 27, 2026
9321421
[MIG] purchase_order_import: Migration to 19.0
yankinmax Apr 27, 2026
a88de77
fixup! [MIG] purchase_order_import: Migration to 19.0
yankinmax May 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
123 changes: 123 additions & 0 deletions purchase_order_import/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

=====================
Purchase Order Import
=====================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:608df04cfb2ce80c875dde9fba3a7fdd4e4d06c50264907b6a50e1b9021b9b8f
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/license-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fedi-lightgray.png?logo=github
:target: https://github.com/OCA/edi/tree/19.0/purchase_order_import
:alt: OCA/edi
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/edi-19-0/edi-19-0-purchase_order_import
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/edi&target_branch=19.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module provides the base wizards and hooks to import supplier
quotation documents and supplier OrderResponse documents on purchase
orders. It provides the generic import workflow; format-specific modules
implement the XML parsers.

The import wizards accept XML files directly and PDF files containing
embedded XML attachments. For the Universal Business Language (UBL)
format, install:

- ``purchase_order_import_ubl`` to import supplier quotations.
- ``order_response_import_ubl`` to import supplier OrderResponse
documents.

On a Request for Quotation, the **Import Quotation File** button opens a
wizard to upload the supplier quotation and choose how the RFQ should be
updated:

- update only the prices of the draft purchase order from the quotation
file (default option);
- update both prices and quantities.

When the quotation is imported, Odoo compares it with the current RFQ:

- lines present in the quotation but missing from the RFQ are created on
the purchase order;
- lines present in the RFQ but missing from the quotation are kept, and
a warning is added to the chatter;
- lines present in both documents are updated when prices or, depending
on the selected option, quantities differ;
- the incoterm is updated when the quotation contains a different
incoterm;
- the imported file is attached to the purchase order.

After importing a quotation, review the purchase order chatter because
it may contain important warnings or import details.

OrderResponse imports are matched to a purchase order by reference and
can acknowledge, accept, reject, or conditionally accept the order.
Conditional acceptance updates receipt moves according to line
amendments, including splitting moves, creating backorders, or
cancelling remaining quantities when no backorder is planned.

**Table of contents**

.. contents::
:local:

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/edi/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/edi/issues/new?body=module:%20purchase_order_import%0Aversion:%2019.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* Akretion

Contributors
------------

- Alexis de Lattre <alexis.delattre@akretion.com>
- Laurent Mignon <laurent.mignon@acsone.eu>
- Alexandre Fayolle <alexandre.fayolle@camptocamp.com>
- Maksym Yankin <maksym.yankin@camptocamp.com>

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

This module is part of the `OCA/edi <https://github.com/OCA/edi/tree/19.0/purchase_order_import>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
2 changes: 2 additions & 0 deletions purchase_order_import/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import wizard
from . import models
30 changes: 30 additions & 0 deletions purchase_order_import/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# © 2016-2017 Akretion (Alexis de Lattre <alexis.delattre@akretion.com>)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

{
"name": "Purchase Order Import",
"version": "19.0.1.0.0",
"category": "Purchase Management",
"license": "AGPL-3",
"summary": "Update RFQ via the import of quotations from suppliers",
"author": "Akretion,Odoo Community Association (OCA)",
"website": "https://github.com/OCA/edi",
"depends": [
# Odoo/core
"purchase_stock",
# OCA/edi
"base_business_document_import",
# OCA/reporting-engine
"pdf_xml_attachment",
],
"data": [
# Security
"security/ir.model.access.csv",
# Wizard
"wizard/order_response_import_view.xml",
"wizard/purchase_order_import_view.xml",
# Views
"views/purchase_order.xml",
],
"installable": True,
}
Loading
Loading