OdooWiki OCA HUB

OCA purchases modules for Odoo

Purchase requests and orders, approvals, supplier agreements and purchase reports to keep spending and procurement under control. The catalogue has 233 modules in this area, 2 of them confirmed in Odoo 20.0 (reviewed on 2026-11-03).

Confirmed modules per version

12.0
72 modules
13.0
79 modules
14.0
108 modules
15.0
108 modules
16.0
119 modules
17.0
84 modules
18.0
112 modules
19.0
53 modules
20.0
2 modules

OCA repositories in this area

Other areas

Modules in this area

  • Purchase Line Procurement GroupOdoo 12, 13, 14, 16, 18
    purchase_line_procurement_group

    Keeps purchase order lines and their stock moves separate when they come from different procurement groups, so demands from different sources are not merged into one line.

  • Purchase Line ReassignOdoo 15, 18, 19
    purchase_line_reassign

    Lets you move selected purchase order lines from one purchase order to another using a small wizard, without retyping them.

  • purchase_line_service_qty_received

    Marks service purchase order lines as fully received when any other line on the same purchase order has been received. This helps keep service lines in sync with the receipt of goods.

  • purchase_line_vendor_comment

    Adds a free-text "vendor comment" field to each purchase order line, visible in the order form (hidden by default) and printed on purchase orders and requests for quotation.

  • Purchase Location by LineOdoo 12, 13, 14, 15, 16, 17, 18
    purchase_location_by_line

    Lets you set a specific destination location on each purchase order line, so products on the same order can be received into different warehouses or locations.

  • Purchase LotOdoo 14, 16, 17, 18
    purchase_lot

    Adds a Serial Number / Lot field on purchase order lines so buyers can specify which lot they want to buy. The chosen lot is carried over to the receipt stock moves, keeping the purchase linked to that specific lot.

  • Purchase - Manual CurrencyOdoo 13, 14, 15, 17, 18
    purchase_manual_currency

    Lets buyers set a manual currency rate on draft purchase orders instead of using Odoo's automatic rate, and choose whether vendor bills inherit that rate from the purchase order or use their own.

  • Purchase Manual DeliveryOdoo 12, 13, 14, 16, 17, 18
    purchase_manual_delivery

    Stops Odoo from automatically creating incoming shipments when a purchase order is confirmed, and lets you create those receipts manually for the lines your supplier has actually confirmed.

  • purchase_mass_mail

    Adds a "Send email to selected purchases" action on purchase orders so you can email many requests for quotation or purchase orders at once using the standard purchase template.

  • Purchase MergeOdoo 15, 16, 17
    purchase_merge

    Lets purchasing users combine several draft purchase orders from the same supplier into one, moving all lines to a chosen destination order and cancelling the emptied ones.

  • Purchase Minimum AmountOdoo 12, 13, 14, 16
    purchase_minimum_amount

    Set a minimum purchase amount per vendor and let Odoo automatically block purchase orders that fall below it, with a clear approval block reason.

  • purchase_mto_owner

    When Odoo automatically creates a request for quotation from a make-to-order stock rule, this module copies the owner (the customer who owns the goods) onto that purchase order, so the purchase is linked to the right owner.

  • purchase_no_rfq

    This module simplifies the purchase workflow by removing the 'Request for Quotation' concept, so users only see 'Purchase Order' with states 'Draft' and 'Sent' instead of 'RFQ' and 'RFQ sent'.

  • purchase_only_by_packaging

    Lets you restrict a product so it can only be bought in whole packagings on purchase orders, and optionally force the ordered quantity up to the next full packaging.

  • Purchase Open QtyOdoo 12, 13, 14, 15, 16, 17, 18
    purchase_open_qty

    Shows, on purchase orders and purchase order lines, how much quantity is still pending to receive or to bill, and lets users filter purchase orders that have pending quantities.

  • purchase_order_analytic_search

    Search purchase orders by analytic account (code, name or manager) and get a new Purchasing menu listing purchase order lines with their analytic account.

  • Purchase Order Approval BlockOdoo 12, 13, 14, 15, 16, 18
    purchase_order_approval_block

    Lets you flag a request for quotation with an approval block reason so it cannot be approved until a manager releases the block. Block reasons are managed in a new configuration menu.

  • Purchase Order ApprovedOdoo 12, 13, 14, 15, 16, 17, 18, 19
    purchase_order_approved

    Adds an extra 'Approved' stage to purchase orders before they become real Purchase Orders, so a second person can validate them. You can also send an approved order back to draft or release it to create the incoming shipments.

  • Purchase Order ArchiveOdoo 12, 13, 14, 16, 17, 18, 19
    purchase_order_archive

    This module lets you archive purchase orders that are Locked or Cancelled, hiding them from the normal purchase orders list. Archived orders show a red 'Archived' ribbon and can be found again with a dedicated search filter.

  • purchase_order_date_approve_editable

    Lets users change the Approval Date on a confirmed purchase order instead of it being locked by Odoo. The field stays editable until the order is locked (done).

  • purchase_order_downpayment

    Create supplier down payments directly from a purchase order. Choose a regular payment, a percentage, or a fixed amount, and the payment is created in draft for review.

  • purchase_order_duplicate_check

    Warns buyers when confirming a purchase order or RFQ that already has pending orders for the same products, showing a confirmation wizard before proceeding. It also shows a 'Pending Orders' field on purchase order lines and can create an activity for the…

  • purchase_order_etd_eta

    Adds ETD (Estimated Time of Departure), ETA (Estimated Time of Arrival) and a Shipping Schedule Note to purchase orders and requests for quotation, and shows them on the printed documents.

  • Purchase Order General DiscountOdoo 12, 13, 14, 15, 16, 17, 18, 19
    purchase_order_general_discount

    Adds a general discount percentage on purchase orders that is copied to every order line, and lets you set a default discount per supplier and choose which line discount field receives it.

  • purchase_order_hide_receipt_status

    Hides the receipt status field on purchase order forms and lists, so users no longer see this column or indicator when working with purchase orders.

  • purchase_order_internal_note

    Adds an Internal Note tab to purchase orders where buyers can write private notes that are not printed on the purchase order report.

  • Purchase Order Line Deep SortOdoo 12, 13, 14, 15, 16, 17, 19
    purchase_order_line_deep_sort

    Automatically sorts the product lines of a purchase order by a chosen criterion (name, product, reference, planned date, price or quantity), either ascending or descending. A default sort can be set for the whole company, and each order can override it.

  • purchase_order_line_description

    When adding a product to a purchase order line, Odoo now fills the line description with the product's purchase description only, instead of combining it with the product name.

  • purchase_order_line_description_picking

    Copies the description written on a purchase order line onto the related stock transfer lines, so warehouse staff see the same text on the receipt as on the order.

  • purchase_order_line_effective_date

    Shows, on purchase order lines, the date the first and the last receipt of that line were actually completed, and makes these dates available in the purchase analysis report.

  • purchase_order_line_image

    Adds product images to purchase order lines and lets you optionally print them on purchase orders and quotations. A new setting in Purchase settings controls whether the image column appears on the printed documents.

  • purchase_order_line_import_sheet_file

    Adds an "Import Lines" button to requests for quotation so users can upload a spreadsheet and create one purchase order line per row, instead of typing lines manually.

  • purchase_order_line_invoicing

    Lets purchase users select lines from several purchase orders of the same supplier and create one single vendor bill for them, instead of invoicing each order separately.

  • Purchase Order Line MenuOdoo 13, 14, 15, 16, 17, 18, 19
    purchase_order_line_menu

    Adds a dedicated "Purchase Order Lines" menu under Purchase, where you can browse, filter, group and pivot all purchase order lines in one list, instead of opening each order.

  • purchase_order_line_merge

    Lets purchasing users select several purchase order lines and combine them into one new purchase order, grouping identical lines together. Remaining quantities stay on the original orders, and emptied orders are cancelled automatically.

  • purchase_order_line_note

    Adds a free-text Note field to each purchase order line, visible in the order lines list and in the detailed line form.

  • purchase_order_line_original_date

    Keeps a record of the expected arrival date that was promised when a purchase order was confirmed, so you can compare it with later changes and measure real supplier delays.

  • purchase_order_line_packaging_qty

    Adds a Package and Package quantity field to purchase order lines, so buyers can order products by packaging (e.g. boxes, pallets) instead of individual units.

  • purchase_order_line_price_history

    Adds a clock button on each purchase order line that opens a pop-up showing the last prices paid to the supplier for that product, and lets you apply one of those old prices to the current line.

  • purchase_order_line_price_history_discount

    Adds a discount column to the purchase price history wizard, so buyers can see the discount applied on each past purchase line and reuse it when selecting a historical price.

  • purchase_order_line_price_unit_digits

    Restores the classic number of decimals for the unit price on purchase order lines, so prices are shown and rounded with the same precision as product prices instead of the default setting.

  • purchase_order_line_qty_to_receive

    Adds a 'To Receive' column on purchase order lines showing how much quantity is still pending receipt. It is calculated automatically as ordered quantity minus already received quantity.

  • purchase_order_line_receipt_status

    Adds a Receipt Status column to purchase order lines showing whether each line is Not Received, Partially Received or Fully Received, updated automatically as goods are received.

  • Purchase Order Line SequenceOdoo 12, 13, 14, 15, 16, 17, 18, 19
    purchase_order_line_sequence

    Adds a visible line number to purchase order lines, shows it on purchase orders, quotations and vendor bills, and copies the same number onto the related stock moves.

  • Purchase order line stock availableOdoo 12, 13, 14, 15, 16, 17, 18, 19
    purchase_order_line_stock_available

    Shows the forecasted (virtual) stock of each product directly on the purchase order lines, so buyers can see availability while ordering.

  • purchase_order_no_zero_price

    Prevents purchase order lines from having a zero unit price once the order is confirmed, helping ensure correct stock valuation. If a line has no price, Odoo shows an error and blocks the change.

  • Purchase Order OwnerOdoo 16, 18, 19
    purchase_order_owner

    Adds an "Assign Owner" field on purchase orders and quotations. When the order is confirmed, that owner is automatically copied onto the incoming stock receipt, so the goods are recorded as belonging to that contact.

  • purchase_order_partner_manual_rank

    Restricts the Vendor field on purchase orders and vendor pricelists so only contacts marked as suppliers can be selected.

  • purchase_order_payment_term_report

    Adds a checkbox on purchase orders to control whether the payment terms appear on the printed Purchase Order and Request for Quotation PDFs. The option is enabled by default.

  • purchase_order_price_recalculation

    Adds an 'Update lines info' button on draft and sent purchase orders that recalculates the prices of all order lines based on the currently selected vendor.

  • purchase_order_product_attachment_mgmt

    Adds an Attachments button on the purchase order form that opens a list of all files attached to the products and product templates contained in the order lines.

  • Purchase Order Product RecommendationOdoo 12, 13, 15, 16, 17, 18
    purchase_order_product_recommendation

    Adds a "Recommended Products" button on draft purchase orders that opens a wizard suggesting products to buy from the vendor, based on past deliveries and receipts. Users can adjust quantities and push the suggestions into the order.

  • purchase_order_product_recommendation_brand

    Adds a Brands filter to the product recommendation wizard in Purchase Orders, so buyers can narrow suggested products down to specific brands.

  • purchase_order_product_recommendation_classification

    Adds classification filters to the purchase order product recommendation wizard, so buyers can suggest products based on their sales ABC classification and seasonality.

  • purchase_order_product_recommendation_forecast

    Adds a "Year of reference" option to the purchase product recommendation wizard, so Odoo can forecast next-period quantities by comparing the same period in a past year and applying the observed growth or decline.

  • purchase_order_product_recommendation_secondary_unit

    Adds secondary unit columns to the product recommendation wizard in purchase orders, so buyers can order recommended products in a second unit of measure and see the quantity converted automatically.

  • purchase_order_product_recommendation_xlsx

    Adds an Export button to the product recommendation wizard so users can download the recommended products for a supplier as an Excel (XLSX) file.

  • purchase_order_purchase_manager

    Automatically fills the buyer (Purchase Representative) on a purchase order with the purchasing manager defined on the supplier, as long as the order is still a draft or sent.

  • purchase_order_qty_by_product_category

    Adds a new tab on purchase orders that shows ordered, received and pending quantities grouped by product category, optionally split by unit of measure. Two settings let you control this grouping behaviour.

  • Purchase Order Qty change no recomputeOdoo 13, 14, 15, 16, 17, 18
    purchase_order_qty_change_no_recompute

    Stops Odoo from recalculating purchase order line details (like description, planned date, unit price and discount) when only the ordered quantity or unit of measure is changed.

Data imported from GitHub: “confirmed” means branch, module directory and installable manifest checked on the review date. A module that is not confirmed in a version may still exist: it may be in another repository or pending the next review. Active support and OCA certification are not assessed.