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
OCA repositories in this area
Other areas
- Accounting and finance
- Sales
- CRM and marketing
- Inventory and logistics
- Manufacturing and maintenance
- Products and catalogue
- Human resources
- Projects and timesheets
- Field service and customer support
- Point of sale
- Website and e-commerce
- Country localisations
- Contracts and documents
- Integrations, EDI and connectors
- Industries and verticals
- Technical tools and administration
Modules in this area
- Purchase Order Report Grouped By VendorOdoo 15, 17, 19purchase_order_report_grouped_by_vendor
Adds a printable PDF report that groups the selected purchase orders by vendor, showing each vendor's orders and lines with a total per vendor.
- Purchase order line hide tax in reportOdoo 16, 18, 19purchase_order_report_hide_tax
Automatically hides the Taxes column on the Purchase Order PDF sent to vendors when every line uses the same taxes, keeping the document cleaner. You can force the column to always appear per tax group.
- Purchase Order Report XLSXOdoo 19purchase_order_report_xlsx
Adds a 'Purchase Order XLSX' export option on purchase orders, producing a spreadsheet with one row per order line (vendor, dates, product, quantity, unit price, discount, taxes and subtotal).
- Purchase order revisionsOdoo 15, 16purchase_order_revision
Lets buyers create a new revision of a cancelled or sent request for quotation/purchase order, keeping the same base reference with a revision suffix and archiving the old versions.
- Purchase Order Secondary UnitOdoo 12, 13, 14, 15, 16, 17, 18, 19purchase_order_secondary_unit
Buy products from vendors using a secondary unit of measure (for example a box instead of a single piece) directly on purchase orders and vendor pricelists, with quantities and prices converted automatically.
- Purchase Order Shipping DateOdoo 14purchase_order_shipping_date
Adds a Shipping Date field to purchase orders so you can record the date the vendor promised to ship. The date appears on the purchase order form, in the purchase orders list, and on printed purchase orders and quotations.
- Purchase Order Supplier ReturnOdoo 16, 18purchase_order_supplier_return
When you return products to a supplier on a purchase order that has a negative quantity, this module automatically marks the stock move as a refund so the received quantity is updated correctly.
- Purchase Order Supplierinfo UpdateOdoo 13, 15, 16, 17, 18, 19purchase_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, 19purchase_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, 18purchase_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, 18purchase_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 Line Uninvoiced AmountOdoo 15, 16, 17, 18purchase_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, 19purchase_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 Order Origin LinkOdoo 13purchase_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 PackagingOdoo 13purchase_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 DefaultOdoo 16purchase_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 Packaging ReportOdoo 16, 17, 18purchase_packaging_report
Adds packaging information (packaging type and quantity) to purchase order and request-for-quotation PDFs and to the Purchase analysis report, so buyers can see how products were packed.
- Purchase Partner ApprovalOdoo 14purchase_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, 19purchase_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, 18purchase_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 StateOdoo 12, 14purchase_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 RecalculationOdoo 12purchase_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, 14purchase_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 QuantityOdoo 12, 13, 14purchase_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, 16purchase_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 DiscountOdoo 16purchase_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 ExpectationOdoo 15, 18purchase_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, 18purchase_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, 19purchase_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 LineOdoo 15, 17, 18, 19purchase_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 Receipt ThresholdOdoo 17purchase_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 ControlOdoo 16, 17purchase_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 Date FormatOdoo 14, 16, 17, 18purchase_report_date_format
Changes the Expected Date shown on the Request for Quotation printout so it displays as a simple date instead of a full date and time.
- Purchase Report ExtensionOdoo 12purchase_report_extension
Adds order, ordered, received, billed and to-be-billed quantity columns to the Purchase Analysis report, so users can see how much was ordered, received, invoiced and still needs to be billed per purchase order.
- Purchase Report Hide LineOdoo 17purchase_report_hide_line
Lets you hide selected purchase order lines from the printed Purchase Order report, either manually per line or automatically based on a company-wide default rule.
- Purchase Report Menu MoveOdoo 14purchase_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 Report Payment TermOdoo 16, 17purchase_report_payment_term
Adds the payment term note to the printed Purchase Order and Request for Quotation PDFs, right after the order notes.
- Purchase Report Shipping AddressOdoo 16, 17, 18, 19purchase_report_shipping_address
Lets you store a translatable warehouse address on each warehouse and print it on purchase orders and requests for quotation, replacing the standard warehouse address block when filled in.
- Purchase RepresentativeOdoo 13, 14, 15, 18purchase_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, 19purchase_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 ConfirmOdoo 14, 15, 18purchase_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, 18purchase_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, 18purchase_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 ApprovedOdoo 12, 13purchase_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 Sub StateOdoo 14, 15, 18purchase_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 to Purchase AgreementOdoo 14, 15, 18purchase_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, 19purchase_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 RFQOdoo 12, 14purchase_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.