Retention in invoices

Many users — especially those dealing with clients like Aramco — are required to include a 10% retention (performance guarantee) line in their sales invoices
Aramco and similar companies will not accept an invoice unless this retention is clearly and explicitly shown

In the past, users have resorted to workarounds, such as:

  • Using the Withholding Tax field to represent the retention amount
  • Then manually editing the exported PDF to replace the wording “Withholding tax” with “Retention”

However, this method is no longer viable — especially after integrating Manager.io with the Saudi Fatoora platform, which requires invoices to be valid both in form and substance.

We kindly request that you consider adding native support for retention amounts in sales invoices, either as a dedicated field or a configurable label that replaces or supplements the withholding tax label

Use Special accounts for this. Create a control account “Retention” Settings>Control Accounts>Special Accounts and use that. But you have to manually input the retention amount.


Thank you so much for your helpful response
Yes, we already use Special Accounts for retention with some clients
However
for Com like Aramco, they require the retention to be clearly deducted from the total invoice amount
similar to how the withholding tax is shown not just as a line item under accounts
This is why the current Special Accounts method does not fully meet their invoicing requirements

Then current solution is to use Custom Themes.
And maybe if @lubos add support for deduction items for invoices just like Payslips they would appear as deduction from the total amounts.

Let me understand this. Are the mechanics the same as withholding tax?

Only label is different?

It’s still payable by the Customer, however, it’s not due until a condition is met.

Payable by customer to who? To supplier or someone else? Withholding tax is payable by customer to tax authority.

That amount will be eventually paid by the customer (Aramco) to the supplier (OP) after a certain time period. I think this amount is usually withheld by the customer in case something goes wrong with the goods/services provided by the supplier.

1 Like

It seems like it’s an invoice that can be split into 2 parts where each part has its own separate due date. Correct?

Yes, that might work too. Infact that would work for progressive/instalments billing too.

Yeah, I’m thinking it might be generic feature rather than country-specific.

3 Likes

Yes, exactly it functions just like withholding tax, only with a different label

In fact, many users have used the standard withholding tax feature for this purpose
After issuing the invoice, they would simply modify the PDF manually outside of Manager to reflect the needed changes
However, this approach has become more difficult now with the system integration and e-invoicing requirements

@Esllam_Rashwan You need to answer this question too.

My solution would be as follows:

  • Create an asset account named - Retentions
  • Issue the sales invoice for the full invoice value but add a negative line at the end to allocate the 10% retention.
  • When the retention is due for payment, clone the original invoice, remove all the sales lines and change the retention figure from a negative to a positive figure to transfer the retention to accounts receivable.

Sure, let me clarify with an example.
The discussion is related to sales invoices, and how the journal entries are recorded depending on whether retention (performance guarantee) is applied or not.

1. Without Retention (No Performance Guarantee Applied):

Let’s say we issue a sales invoice for 100,000 with 15% VAT = 15,000.

The journal entry on invoice issuance would be:

Dr Accounts Receivable      115,000  
      Cr Revenue                         100,000  
      Cr VAT Payable                    15,000  

2. With Retention (e.g., 10% Performance Guarantee Deduction):

In many industries, especially construction and government contracts, 10% retention is common. This means although the invoice is issued for the full amount, only 90% is immediately claimable, while the remaining 10% is withheld and expected to be collected later (after project completion or conditions are met).

So in this case:

  • The invoice total remains 100,000 + VAT = 115,000

  • But from an accounting perspective, we split the receivable into two parts:

    • Accounts Receivable (claimable now): 105,000
    • Retention Receivable (claimable later): 10,000

The journal entry becomes:

Dr Accounts Receivable        105,000  
Dr Retention Receivable        10,000  
      Cr Revenue                            100,000  
      Cr VAT Payable                       15,000  

Thanks, but manual solutions aren’t practical — especially with clients like Aramco who require retention to appear after the total, not as a line item
Also, with ZATCA integration, editing invoices later is very limited

Preference over the retention appearing after the total instead of a line item would hopefully be something the clients may be convinced is merely a formatting issue. In relation to the ZATCA integration, perhaps the cloned invoice is treated as a new invoice instead of an edited invoice that is reissued.

We are in need of a permanent and fundamental solution — especially since this issue seems quite close to being resolved

As I mentioned in my initial inquiry, all users simply want the same tool to behave exactly like the withholding tax tool. It works well — only the label differs
@lubos

In a few days there is going to be new theme framework which will make it much easier to customize invoices and other printed documents. I’m pretty sure it will be solve this issue.

1 Like

To solve this issue, it still needs multiple due dates.
OP is handling it wrong as withholding tax is to be paid by your customer to tax authority. Here it is paid back to the customer after retention period. So when customer pays the retention amount after retention period to the supplier i don’t know how he handles that because withholding tax receivable account cant be accessed from Receipts or Journal Entries forms.

1 Like