Add support for opening and closing balances

@lubos Report transformation for tax codes provide information on transactions that occurred within the specified period (selected time), but it does not provide information on the tax amount that must be paid, and this is because there may be carried forward VAT assets (carried forward or as Starting Balance) or liabilities to be considered in the period. My suggested solution is to allow the inclusion of the following in Report Transformations

  1. Account Closing balance. The closing balance of an account(s) will be included in the report transformation to help compute the tax to be paid in cash at the end of the specified period. The date for the closing balance will be the same as the report’s chosen end date.

  2. Account Starting Balance. The Starting balance of an account(s) will be included in the report transformation to help compute the tax to be paid in cash at the end of the specified period. The date for the starting balance will be the same as the report’s chosen Start date.

Use Case.

In some jurisdictions, customers are to withhold some or all the VAT amount on supplier’s invoices and pay to the tax office. It is called Withholding VAT. The supplier will disclose this VAT asset (credit) in the VAT returns provided the tax credit certificate has been received. Report transformations can include such asset (Account Closing balance) in the report to correctly compute the VAT to be paid to the tax office.

Many jurisdictions may allow a person to pay all or some of their tax liabilities due to the state later because of working capital issues, therefore, there will be a credit starting balance on the tax payable account for the current period. Others may also have output tax in excess over input tax for the prior period or may have overpaid taxes. Manager can include such balances (Account Starting Balance) in Report transformations to compute cash payable to the tax office for the current period. This will also be useful for those who have migrated to Manager with starting tax payable balances.

The second problem is that users can no longer choose accounts for tax liabilities when creating tax codes. In my opinion, users should be allowed to select the liability account they wish for tax code components. Choosing separate liability accounts for tax code components provides a second source of verification for tax code balances right on the summary screen. Also, this will be necessary to put the above suggestion into effect when working with multiple rates for tax codes.



@Ealfardan what do you think of this?

1 Like

Although this information isn’t readily available in report transformations but a similar effect can be achieved using 0% or 100% tax codes (both have their pros and cons) to make the opening balance visible in the current period tax return.

An example Journal to transfer the opening balance is this*

In the case of Bahrain, tax liabilities aren’t carried over from one return to the next but tax credits do but it’s essentially the same thing – I am just relabeling an existing balance as opening balance using a tax code. I find this method to be more advantageous because:

  • It’s more deliberate,

  • It forces the user to review the “Tax Summary” and “Tax Reconciliation” reports – which are essential to ensure accuracy,

  • It avoids mismatching opening balances for whatever reason


  • It enables the transfer opening balances from multiple accounts

Having said that, I wouldn’t mind the convenience of having the opening balance available for use in transformations.

A similar approach can be used for relabeling closing balances.

When did that happen? I’m not sure if this counts as an improvement because how would users maintain multiple tax accounts?

Please @lubos, give us back the ability to setup multiple tax accounts. :pray:

Edit: @Abeiku, just enter a tax rate and account selection will appear. How did we both miss this? :crazy_face:

This is the correct way to approach this. There have been quite a few changes to report transformations in the past month and this specific thing is rather easy to implement now.


Looking forward to see how this works.

Oh I see, I didn’t try. The field used to pop up automatically :smile: