Retention (also known as a retention holdback) represents a pre-agreed portion of the invoiced amount. It is most commonly used in contracts for work of a longer-term nature, such as in the construction industry. The buyer essentially commits to paying the remaining balance only once all conditions have been met.
Flexi does not have a dedicated feature for retention. You can either itemize the invoice line by line without addressing the due date and set a future due date, or you can reclassify the retention amount to other liabilities or other receivables, as demonstrated here. We will walk through an example from both the supplier's and the buyer's perspective.
Retention from the supplier's perspective
Example: We are a construction company invoicing a client for a house build totalling
CZK 11,000,000. Of this amount, 10% is a retention holdback, which is not due until 5 years from now. We are not considering VAT or any other costs in this example.
We therefore issue a standard sales invoice for the total amount of CZK 11,000,000:
We match the invoice with a bank document for CZK 9,900,000:
For the remaining 10%, i.e. CZK 1,100,000, we create an Other Liability (or an Other Receivable with a minus sign, if you do not want a receivables account mixed in with your liabilities).
We settle this document against the original invoice via Money - Mutual Offsets.
Account 311001 is now balanced. All that remains is to create an other receivable with an extended due date (it is advisable to differentiate account 311 analytically in some way):
The remaining balance is now sitting on account 311002 until 2027, and will be cleared in the usual way against the bank once we receive the final payment from the customer.
Retention from the buyer's perspective
From the other side, the situation will be very similar. For clarity, we will use the same example as in the previous case. We have received an invoice from the supplier for CZK 11,000,000, with CZK 9,900,000 due immediately and CZK 1,100,000 not due until 5 years from now.
First, we create a received invoice for CZK 11,000,000, leaving the due date set to the current year.
We match the invoice with a bank payment for CZK 9,900,000:
For the remaining CZK 1,100,000, we create an other receivable or an other liability with a minus sign:
We settle this document against the invoice via Money - Mutual Offsets:
Account 321001 is now balanced and all that remains is to post the long-term liability with a due date 5 years from now:
In the general ledger, we can now see that account 321001 has a zero balance and the retention is sitting on account 321002:












