OdooWiki OCA HUB

Purchase Advance Payment

purchase_advance_payment folder_open OCA/purchase-workflow open_in_new
Purchase License: AGPL-3

The module allows to add advance payments on purchase orders and Request for Quotation. The advance payments are allowed even before confirmation and before starting the billing process.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Lets you pay a supplier in advance directly from a purchase order or request for quotation, before any bill is received. The order then shows how much is still due and whether it is fully, partially or not paid.

This module adds advance payments to purchase orders. On a purchase order form you get a "Pay purchase advanced" button (visible to invoicing users) that opens a small "Advance Payment" window where you choose the bank or cash journal, the payment method, the amount to pay in advance, the date and an optional reference. The window shows the order due amount and converts the amount into the order currency when the journal uses a different one.

  • The amount must be positive and cannot exceed the remaining amount on the order; otherwise Odoo refuses to save.
  • Confirming the window creates a supplier payment linked to the purchase order, and a "Payment advances" tab on the order lists all such payments.
  • The order form shows a "Residual amount" next to the totals, and the order lists show a coloured badge (Not Paid, Partially Paid, Paid) plus the residual amount.
  • A new "Advance Payments" menu under the Payables section of Accounting lists supplier advance payments, with a filter for vendor advance payments and for not reconciled ones.

In Settings, under Purchase invoicing, two options can be switched on: automatically posting advance payments created from purchase orders, and automatically reconciling them when the related bill is confirmed. The module touches purchase.order, account.payment, account.move and the purchase settings screen.

Depends on

purchase

Required by other modules

Menus it adds

menu_account_advance_payments_payable
Models and fields (5)
  • account.move · extends an existing model
  • purchase.order · extends an existing modelamount_residual (Residual amount), payment_line_ids (Payment move lines), account_payment_ids (Pay purchase advanced), advance_payment_status
  • account.payment · extends an existing modelpurchase_id
  • res.config.settings · extends an existing modelauto_post_purchase_advance_payments, auto_reconcile_purchase_advance_payments
  • account.voucher.wizard.purchase · new modeldate, order_id, journal_id, currency_id, payment_ref (Ref.), amount_total, amount_advance (Amount advanced), currency_amount (Curr. amount), journal_currency_id, payment_method_line_id (Payment Method), available_payment_method_line_ids

Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 6 confirmed, 3 with no information of 9 versions.

Sources · Odoo 19.0

Confirmed on 2026-11-03 in branch 19.0 of OCA/purchase-workflow.

terminal Installation and usage

OCA documentation · Odoo 19.0

To use this module, you need to:

  • Go to a purchase order.
  • Click on "Pay Purchase Advance".
  • Select the Journal and specify the amount of the advanced payment.
  • "Make Advance Payment".

When generating the invoice, the system displays the advanced payments, select those you want to add to the invoice.

No verified information in OCA: Installation, Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.