| __pycache__ | ||
| data | ||
| models | ||
| security | ||
| views | ||
| wizard | ||
| __init__.py | ||
| __manifest__.py | ||
| README.md | ||
Purchase Advance Payment
This module allows creating advance payments directly from purchase orders. When an advance payment is created, a deposit line is automatically added to the PO. The journal entry uses the expense account from the default advance payment product and the outstanding payment account from the selected cash/bank journal.
Features
- Create advance payments directly from Purchase Order form
- Automatic deposit line creation in PO
- Proper accounting entries using:
- Expense account from default advance payment product
- Outstanding payment account from selected journal
- Payment remains in draft state for review before posting
- View all advance payments linked to a PO
- Deposit line automatically updates when payment is posted
Configuration
-
Set Default Advance Payment Product
- Go to Purchase > Configuration > Settings
- Scroll to Advance Payment section
- Set the Default Deposit Product - this product's expense account will be used for advance payment journal entries
-
Configure Outstanding Payment Accounts (Choose one option)
Option A: Journal-Specific (for multiple banks)
- Go to Accounting > Configuration > Journals
- Open each journal > Outgoing Payments tab
- Set Outstanding Payments Account in payment methods
Option B: Company Default (for single bank)
- Go to Accounting > Configuration > Settings
- Set Outstanding Payments Account in Default Accounts section
Note: Journal-specific accounts take priority over company default.
Usage
Creating an Advance Payment
- Open a Purchase Order (must be in confirmed state)
- Go to Advance Payments tab
- Click Create Advance Payment button
- Fill in the wizard:
- Journal: Select cash or bank journal
- Amount: Enter advance payment amount
- Date: Payment date
- Memo: Optional description
- Click Confirm
- The payment is created in draft state for review
- A deposit line is automatically added to the PO with negative amount
- Review the payment and click Confirm to post it
Journal Entry Accounts
When the payment is posted, the journal entry will use:
- Debit: Expense account from the default advance payment product
- Credit: Outstanding payment account from the selected journal
Vendor Bill Creation
When creating a vendor bill from the PO:
- The deposit line will be included in the bill
- The deposit reduces the total amount payable
- The advance payment is properly accounted for
Technical Details
- Module creates a deposit product line in the PO with negative price
- Payment model is extended to handle advance payment accounting
- Journal entries are customized to use correct accounts
- Deposit line updates automatically when payment is posted
Known Issues
- None