OdooWiki OCA HUB

OCA/purchase-workflow

OCA community repository with 221 Odoo modules confirmed in the OdooWiki catalogue (versions 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0). Reviewed on 2026-11-03.

Open on GitHub

Confirmed modules per version

12.0
71 modules
13.0
80 modules
14.0
105 modules
15.0
108 modules
16.0
114 modules
17.0
79 modules
18.0
109 modules
19.0
49 modules
20.0
2 modules

Modules in the repository

  • Purchase Order Supplierinfo UpdateOdoo 13, 15, 16, 17, 18, 19
    purchase_order_supplierinfo_update

    Automatically updates the supplier's price and discount on the product's vendor record when a purchase order is confirmed or its lines are changed, so future purchases suggest the latest agreed price.

  • Purchase Order TypeOdoo 12, 13, 14, 15, 16, 17, 18, 19
    purchase_order_type

    Lets you define purchase order types (such as Regular, Blanket, Contract or Planned) and assign them to vendors and purchase orders, with optional payment terms, incoterms and their own numbering sequence.

  • Purchase Order Type DashboardOdoo 13, 14, 15, 16, 17, 18
    purchase_order_type_dashboard

    Adds a Purchase Dashboard that groups requests for quotation and purchase orders by Purchase Order Type, showing counts of RFQs, orders with nothing to bill and orders waiting for bills.

  • Purchase Order Univoiced AmountOdoo 12, 13, 14, 15, 16, 17, 18
    purchase_order_uninvoiced_amount

    Adds an "Uninvoiced Amount" column to purchase order lists, showing how much of each order still has to be invoiced. The column is also totalled at the bottom of the list.

  • purchase_order_uninvoiced_amount_line

    Adds an "Uninvoiced Amount" column to the purchase order line list, showing how much of each line is still waiting to be invoiced.

  • purchase_order_vendor_product

    When you add a product line to a purchase order, Odoo only suggests products that are sold by the selected vendor. This prevents ordering products from a supplier that does not offer them.

  • Purchase Order Weight and VolumeOdoo 14, 15, 16, 17, 19
    purchase_order_weight_volume

    Shows the weight and volume of each purchase order line and the total weight and volume of the whole order, both on screen and on the printed quotation and purchase order.

  • purchase_origin_link

    Adds a clickable "Source Document" link on purchase orders. By itself it only prepares the field and hides the plain text origin; other modules must fill in the link.

  • purchase_origin_link_sale

    Adds a clickable link to the related Sale Order in the Source Document field of Purchase Orders, so buyers can jump straight from a purchase to the sale that generated it.

  • purchase_packaging

    Buy products from suppliers using their own packaging and units of measure. On purchase orders you enter the supplier's quantity and unit, and Odoo converts it to your internal quantity.

  • purchase_packaging_default

    Adds a company setting that automatically fills in a default packaging on purchase order lines, using the first packaging marked for purchase in the product configuration, and rounds the packaging quantity up to whole units.

  • purchase_packaging_level_qty

    Shows on each purchase order how many transport packages (for example pallets) are needed, based on a packaging level chosen in the Purchase settings.

  • purchase_partner_approval

    Control which partners can be used as vendors on purchase orders by marking them as approved for purchase. Vendors must be approved before they can be selected on a purchase order.

  • Default purchase incoterm per partnerOdoo 14, 15, 16, 17, 18, 19
    purchase_partner_incoterm

    Lets you set a default Incoterm, Incoterm address and Incoterm location on a supplier, which are then filled in automatically on new purchase orders for that supplier.

  • Purchase Partner Selectable OptionOdoo 13, 15, 16, 17, 18
    purchase_partner_selectable_option

    Adds a "Selectable in purchase orders" flag on contacts so you can control which vendors appear when choosing a partner on a purchase order. Only contacts with the flag enabled can be picked.

  • purchase_picking_state

    Adds a "Picking status" field on purchase orders that shows the overall state of their related receipts (cancelled, not received, partially received or transferred).

  • purchase_planned_date_container_deposit

    Keeps the planned date you set on a purchase order when container deposit lines are created for products with packaging deposits. It is a glue module that combines two other purchase modules.

  • purchase_price_recalculation

    Adds a 'Purchase recalculation' action on purchase orders that refreshes each line's unit price and taxes from the current vendor pricelist and product settings, and logs the change in the chatter.

  • purchase_product_packaging_container_deposit

    Automatically adds container deposit lines to purchase orders based on the packaging of the products ordered, and updates those deposit quantities when the related stock moves are completed.

  • Purchase Product UsageOdoo 12, 13, 14
    purchase_product_usage

    Lets buyers tag each purchase order line with a "usage" (e.g. marketing, internal use) and automatically proposes the expense account linked to that usage on the vendor bill.

  • purchase_propagate_qty

    When you change the quantity on a confirmed purchase order line, this module automatically adjusts the linked receipt operations, including reducing quantities that were already planned or partly received.

  • Quick Purchase orderOdoo 12, 14, 15, 16
    purchase_quick

    Add many products to a purchase order at once from a supplier-specific product list, with quantities and prices filled in automatically.

  • purchase_quick_discount

    Adds a Discount column to the quick purchase product list, showing the supplier discount that will be applied for the selected vendor and quantity.

  • purchase_quick_triple_discount

    Adds three separate supplier discount columns (Disc.1%, Disc.2%, Disc.3%) to the product list used for quick purchase entry, so buyers can see each discount level before adding products to a request for quotation.

  • purchase_receipt_expectation

    Adds a 'Receipt Expectation' option on purchase orders that controls how incoming receipts are created when the order is approved. By default it uses the standard Odoo behaviour.

  • purchase_receipt_expectation_from_partner

    Adds a "Receipt Expectation" setting on vendor/partner records and automatically copies it onto new purchase orders when the vendor is selected.

  • purchase_receipt_expectation_manual

    Adds a "Manual" receipt expectation option on purchase orders and a wizard that lets stock users create a receipt (picking) by hand, choosing lines and quantities, with built-in checks before confirming.

  • purchase_receipt_expectation_manual_split

    This module lets you split a purchase order line into several lines when you manually record a receipt, so each received quantity is tracked separately. It also automatically merges quantities back if a receipt is cancelled.

  • purchase_receipt_percentage

    Shows a receipt percentage on purchase orders and their lines, so buyers can quickly see how much of an order has actually been received.

  • Purchase Reception NotifyOdoo 12, 13, 14, 15, 17, 18
    purchase_reception_notify

    When an incoming shipment is validated, Odoo automatically posts a message on the related purchase order listing the products and received quantities, and notifies the employees who follow that order.

  • Purchase Reception StatusOdoo 12, 13, 14, 15, 16, 17, 18, 19
    purchase_reception_status

    Adds a Receipt Status indicator to purchase orders showing whether nothing, part, or all of the ordered quantities have been received, plus filters and grouping to find orders by that status.

  • purchase_reception_status_line

    Adds a reception status to each purchase order line (Nothing, Partially, Fully or Over Received) and uses it to compute the reception status of the whole purchase order, with an option to force a line as fully received.

  • purchase_reception_threshold

    Lets you set an allowed quantity difference (a percentage) for purchase receipts, so that when the received quantity is close enough to the ordered quantity, Odoo skips the backorder and closes the receipt automatically.

  • purchase_reorder_control

    Prevents reordering rules from being created or kept for products marked as not purchaseable, and automatically archives existing rules when a product is set to 'not purchaseable'.

  • purchase_report_menu_move

    Adds a "Purchase Analysis" entry under the Purchase Reporting menu, giving users a direct shortcut to the purchase order analysis report.

  • Purchase RepresentativeOdoo 13, 14, 15, 18
    purchase_representative

    When Odoo automatically creates a request for quotation from a stock rule, the Purchase Representative is set to the user who triggered the procurement instead of the system user.

  • Purchase RequestOdoo 12, 13, 14, 15, 16, 17, 18, 19
    purchase_request

    Lets employees record internal purchase requests for products or services, follow them through an approval workflow, and turn approved request lines into requests for quotation to suppliers.

  • purchase_request_cancel_confirm

    Adds a confirmation step when cancelling a purchase request, asking the user to confirm and optionally provide a reason before the request is rejected.

  • Purchase Request DepartmentOdoo 12, 13, 14, 15, 16, 17, 18
    purchase_request_department

    Adds a Department field to purchase requests and their lines, filled automatically from the requester's employee department, and lets you group and filter requests by department.

  • Purchase Request ExceptionOdoo 14, 15, 16, 18
    purchase_request_exception

    Adds customizable exception rules to purchase requests so blocked requests are flagged, filtered and can be reviewed or ignored before approval.

  • purchase_request_order_approved

    Shows an 'Approved' status on purchase request lines when at least one linked purchase order has been approved, and adds a 'Purchase Approved' filter to the purchase request line search.

  • purchase_request_product_usage

    Lets users tag each purchase request line with a product usage, and carries that usage over to the purchase order created from the request.

  • purchase_request_substate

    Adds sub-states to purchase requests, letting you track extra steps like 'To Verify' or 'Checked' inside the normal approval states and send an email when a request is verified.

  • Purchase Request Tier ValidationOdoo 12, 13, 14, 15, 16, 17, 18
    purchase_request_tier_validation

    Adds a multi-level approval workflow to Purchase Requests: requests must be reviewed and validated by assigned reviewers before they can be confirmed.

  • purchase_request_to_requisition

    Lets you turn purchase request lines into a purchase agreement (bid) directly from Odoo, either creating a new draft agreement or adding quantities to an existing one, and tracks the bid status back on the request.

  • Purchase Request TypeOdoo 14, 16, 18, 19
    purchase_request_type

    Lets you classify purchase requests by a configurable type (for example Regular, Contract or Reduce Step), each with its own numbering sequence and optional operation type, and to skip the request-for-quotation step for certain types.

  • purchase_request_usage_department

    Lets you set a default product usage on each HR department, and automatically fills that usage on purchase request lines when the department is chosen.

  • purchase_requisition_auto_rfq

    Adds a button on purchase requisitions to automatically generate RFQs for the suppliers registered on the products in the requisition, and highlights requisition lines whose products have no supplier.

  • purchase_requisition_grouped_by_procurement

    When Odoo automatically creates purchase requisitions from stock rules, this module reuses an existing draft requisition for the same procurement group instead of creating a new one, adding the new lines to it.

  • purchase_requisition_line_description

    Shows a product description on purchase requisition lines, filled automatically from the product's purchase description in the vendor's language, and prints it on the Purchase Requisition report.

  • purchase_requisition_multiple_vendor

    Lets you pick several vendors at once in the 'Create Alternative' wizard of a purchase requisition, so Odoo creates one alternative purchase order per vendor in a single step.

  • purchase_requisition_order_remaining_qty

    Adds a new agreement type option that lets purchase agreements (requisitions) automatically use only the remaining quantity when creating requests for quotation, avoiding ordering more than agreed.

  • Purchase Requisition Tier ValidationOdoo 12, 13, 14, 15, 16, 17, 18
    purchase_requisition_tier_validation

    Adds an approval workflow to Purchase Agreements (purchase requisitions): agreements in draft must be reviewed and validated by assigned reviewers before they can be confirmed.

  • purchase_return

    Create purchase return orders to send products back to a vendor and generate the related vendor refund bills. It adds a dedicated Purchase Return Orders menu with its own order form, lines, statuses and printable report.

  • purchase_rfq_number

    Gives purchase quotations their own RFQ numbering sequence, separate from confirmed purchase orders. When a quotation is confirmed, its RFQ number is kept for reference and the order receives a new PO number.

  • purchase_sale_link_by_origin

    This module links purchase orders and sales orders by the purchase order's Origin field, in addition to the standard line-based link. Users see related sales orders on a purchase order and related purchase orders on a sales order even when the link would…

  • Purchase Order securityOdoo 12, 13, 14, 15, 16, 17, 18, 19
    purchase_security

    Adds purchase teams and two new access levels so buyers only see the purchase orders and vendors that belong to them or to their team, while managers keep full visibility.

  • purchase_sign

    Lets vendors sign request for quotations online from the customer portal, which automatically confirms the RFQ into a purchase order and stores the signature on the order and its PDF.

  • purchase_split_by_route

    Adds a 'Split Purchase by Route' option on stock routes and a route field on purchase orders, so automatic purchases can be grouped or separated depending on the sales order route.

  • purchase_start_end_dates

    Adds Start Date, End Date and Number of Days on purchase order lines for products that require dates, and copies them to the vendor bill lines. Purchase orders can also define default start and end dates for new lines.

Data imported from GitHub: every listed version is confirmed (branch, module directory and installable manifest checked on the review date). Active support and OCA certification are not assessed.