Contributors mailing list archives

Browse archives


Functional Question: Retention and return of retention (i.e., account_invoice_payment_retention)

Ecosoft Co. Ltd., Kitti Upariphutthiphong
- 20/07/2020 06:57:03

Dear community,

Hi, we are looking to create a module about payment retention with following features. I like to check if anyone have done something like this before.

Use Case

A company has a new PO contract with a vendor, and has a term to Retain 10% of the amount on every invoices being paid. The amount is known for warranty. And, so after the warranty period, the company will also pay the retained amount back to the vendor.


In the Accounting Configuration, add following fields,

  • Default Retention Account
  • Default Retention Amount / Percent

In the Vendor Bill, add following fields,

  • A checkbox "Has Retention"
  • Retention Amount / Percent
  • Retention Due Date

Payment against this "Vendor Bill", the payment to populate the "Retention Account" and "Retention Amount" in the write off section of the payment.

Then, Time passed until the return retention due date, it is time to pay the retained amount to vendor.

There can be 2 ways,

  1. As soon as payment is Paid!, immediately create new "Vendor Bill" for the retained amount in Draft, and with Retention Due Date as Invoice Date. The line auto populated with the amount deducted in the payment.
  2. Wait unit due time, user manually create Vendor Bill which will have option to select the old "Vendor Bill" that was once retained, and populate the line amount as it was deducted in the payment.

Validate Vendor Bill and make Payment on the retained amount to complete the job.

Note: the reference document to return retention should be PO, but for purpose of this module, the vendor bill is ok.

Would love to hear other practices. Thank you!

Kitti U.