Posting retail statement you might have an error like below (amounts are only an example). This might happen when you have different currencies, but not only.
“While processing the state Payments posted, generic exception encountered in retail statement XXX in the controller :
Posting results for journal batch number XXX Voucher XXX Voucher XXX
The transactions on voucher XXX do not balance as per [DATE]. (accounting currency: -14.60 - reporting currency: -38.93)
Posting results for journal batch number XXX Voucher XXX Voucher XXX
Voucher transactions Voucher XXX, date [DATE], account XXX [General Ledger account number]--, transaction currency amount -14.60, accounting currency amount -14.60, reporting currency amount -38.93, currency USD, text
Posting results for journal batch number XXX Posting has been canceled.”
As a resolution please check (setting is taken from standard Contoso USRT company):
1. Payment journal CustPay (which is set in Commerce parameters/Tab Posting/subtab Invoice/Payments/Journal name) the value of ‘New voucher’ recommended to have as ‘One voucher number only’ instead of ‘In connection with balance’:
2. The value of ‘Maximum penny difference’ keep as possible lower amount, e.g. we suggest to keep it 0,01. The value of ‘Maximum penny-rounding in the reporting currency’ – we suggest to keep also as possible lower amount, e.g. 0,10:
There is some more information about such fields in standard MS Docs:
Journal posting failure because of imbalance - Finance | Dynamics 365 | Microsoft Docs
*This post is locked for comments
In addition to above:
More about 'One voucher number only'
We have seen errors with ‘voucher do not balance’ when posting the statement. And these errors came for many reasons, but most of the time they were related to multiple vouchers were being created for one invoice when a payment was done in one currency and change was given in another currency (or multiple currencies are included in one statement, or there are different currency exchange rate types). Since there were multiple vouchers they were not balancing out correctly with the invoice, and thus an error was happening while attempting to post those payments. This was because the payment ledger journal did not have the new voucher field set to one voucher number only.
We have some blog article written, where you can see our recommended setting - see initial posting above.
e.g. Payment journal ARPay the value of ‘New voucher’ recommended to have as ‘One voucher number only’ instead of ‘In connection with balance’:
To avoid such errors, we have done some changes in 10.0.27 where by posting statement manually the pop up message will appear:
This pop up message will appear by posting statements manually. This will not impact batch execution.
There should not be any harm in following our suggested configuration, specially if customers don’t perform payments with multi currencies.
This setting will only change the behavior of journal posting if and only if there are multiple currencies in the journal.
Without feature work, “One voucher” is basically mandatory for customers doing multi-currency transactions because without it we see “random” failures that are really hard to troubleshoot and consumed multiple hours through multiple engagements in order to be able to finally understand what’s really happening.
If “One voucher” is not enabled, the ledger journal framework creates some journal lines to try to balance out the voucher, but the Commerce code also tries to do that, which leads to voucher unbalances that, as said above, are really hard to troubleshoot.
Accounting currency != store currency should not be a problem, since the payment journal will not directly reference the accounting currency, only the invoice currency (transaction currency) and the payment currencies.
It’s both:
· Multi-currency in a single transaction
· Multi-currency in a single statement
The reason why it’s both it’s because we aggregate transactions.
We can have a single transaction with multiple currencies (think Airport stores, or any touristy place that takes multiple currencies but gives change back in the local currency).
Or multiple aggregated transactions that were paid using different currencies (a store that takes both GBP and EUR, for example).
Most of the examples we’ve seen is either from European countries or places in the middle east.
If you need to disable this error message about one voucher setting - this should be done as a customization by partner/customer.
If I have any new updates on that - I will update this blog article again.
Stay up to date on forum activity by subscribing. You can also customize your in-app and email Notification settings across all subscriptions.
André Arnaud de Cal... 291,113 Super User 2024 Season 2
Martin Dráb 229,918 Most Valuable Professional
nmaenpaa 101,156