Repository
OCA/purchase-workflow · module folder · Try on Runboat
Module version
1.0.1
Category
Purchase
Folder size
0.16 MB
License
AGPL-3
Application
No
Auto-installable
No
Website
https://github.com/OCA/purchase-workflow
Last tracking update
2026-08-13 11:29:18
Authors
Odoo Community Association (OCA), Forgeflow
Maintainers
Odoo Community Association (OCA), Forgeflow
Committers
David Vidal, Weblate, OCA-git-bot, oca-ci, Bhavesh Heliconia
Odoo dependencies
Python dependencies
None
System dependencies
None
Required by
None
Description
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.

Code Analysis

Views touched (8)
XML IDNameModelTypeStatus
purchase_order_form purchase.order.form purchase.order form Inherits purchase.purchase_order_form
purchase_order_kpis_tree purchase.order.inherit.purchase.order.tree purchase.order tree Inherits purchase.purchase_order_kpis_tree
purchase_order_view_tree purchase.order.view.tree purchase.order tree Inherits purchase.purchase_order_view_tree
res_config_settings_view_form_purchase res.config.settings.view.form.inherit.purchase - purchase_advance_payment res.config.settings form Inherits purchase.res_config_settings_view_form_purchase
view_account_payment_form account.payment.form - purchase_advance_payment account.payment form Inherits account.view_account_payment_form
view_account_payment_search account.payment.search account.payment search Inherits account.view_account_payment_search
view_account_supplier_payment_tree account.payment.tree account.payment tree Inherits account.view_account_supplier_payment_tree
view_account_voucher_wizard Advance Payment account.voucher.wizard.purchase form New
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (5)

New fields (0)

No new fields.

Public methods (1)
  • action_post(self)

New fields (1)
  • purchase_id Many2one → purchase.order
    readonly=True args: 'purchase.order'
Public methods (0)

No public methods.

New fields (11)
  • amount_advance Monetary
    currency_field='journal_currency_id' required=True args: 'Amount advanced'
  • amount_total Monetary
    readonly=True
  • available_payment_method_line_ids Many2many → account.payment.method.line
    comodel_name='account.payment.method.line' compute='_compute_available_payment_method_line_ids'
  • currency_amount Monetary
    compute='_compute_currency_amount' currency_field='currency_id' readonly=True store=True args: 'Curr. amount'
  • currency_id Many2one → res.currency
    readonly=True args: 'res.currency'
  • date Date
    default=fields.Date.context_today required=True
  • journal_currency_id Many2one → res.currency
    compute='_compute_get_journal_currency' readonly=False store=True args: 'res.currency'
  • journal_id Many2one → account.journal
    domain=[('type', 'in', ('bank', 'cash'))] required=True args: 'account.journal'
  • order_id Many2one → purchase.order
    required=True args: 'purchase.order'
  • payment_method_line_id Many2one → account.payment.method.line
    comodel_name='account.payment.method.line' compute='_compute_payment_method_line_id' domain="[('id', 'in', available_payment_method_line_ids)]" readonly=False store=True string='Payment Method'
  • payment_ref Char
    args: 'Ref.'
Public methods (3)
  • check_amount(self)
    @api.constrains('amount_advance')
  • default_get(self, fields_list)
    @api.model
  • make_advance_payment(self)
    Create customer paylines and validates the payment

New fields (4)
  • account_payment_ids One2many → account.payment
    readonly=True string='Pay purchase advanced' args: 'account.payment', 'purchase_id'
  • advance_payment_status Selection
    compute='_compute_purchase_advance_payment' copy=False readonly=True selection=[('not_paid', 'Not Paid'), ('paid', 'Paid'), ('partial', 'Partially Paid')] store=True tracking=True
  • amount_residual Float
    compute='_compute_purchase_advance_payment' readonly=True store=True args: 'Residual amount'
  • payment_line_ids Many2many → account.move.line
    compute='_compute_purchase_advance_payment' store=True string='Payment move lines' args: 'account.move.line'
Public methods (0)

No public methods.

New fields (2)
  • auto_post_purchase_advance_payments Boolean
    config_parameter='purchase_advance_payment.auto_post_advance_payments'
  • auto_reconcile_purchase_advance_payments Boolean
    config_parameter='purchase_advance_payment.auto_reconcile_advance_payments'
Public methods (0)

No public methods.

Loading…

Loading…

Loading…

Loading…

Loading…