erpnext icon indicating copy to clipboard operation
erpnext copied to clipboard

feat: Ledger for advance payment

Open ruthra-kumar opened this issue 4 months ago • 0 comments

Issue

Consider a partial advance paid against a sales / purchase order. This will update the 'Advance Paid' field in SO / PO. But, once the advance has been reconciled against an Invoice, the 'Advance Paid' is reset to '0'. Now, advance payments created against those SO / PO will have the whole amount, even though a partial advance had been received.

Current Limitation

Use of Payment Ledger (subset of General Ledger) to calculate advance amount. Payments made against SO / PO save their reference in Payment Ledger. So, upon reconciliation the references have to be updated to it's respective Invoices - this can't be changed as outstanding amount is calculated based on this. Which means, after reconciliation, there are no more references to SO / PO on the ledger leading to 'Advance Paid' calculated to be '0'.

Goal

  1. Advance against SO / PO from payment entry or journal should be captured
  2. To avoid reconciliation affecting the advance amount calculation, only submit and cancel events will be captured.

Solution

A separate ledger to track Advance Payments against SO / PO.

no-docs

ruthra-kumar avatar Oct 17 '24 06:10 ruthra-kumar