Thursday, July 9, 2026
1 change
New functionality added to Odoo
Adds the Vietnam-required General Ledger report format S03b-DN so companies can produce reports aligned with Vietnamese Accounting Standards. The report calculates and displays counterpart accounts, debit and credit balances, period totals, and flags entries that need better labeling for accurate reporting.
Original PR description
Vietnamese Accounting Standards (VAS) require a specific format for the General Ledger (S03b-DN), which strictly mandates the display of counterpart accounts for every transaction line, along with…
Vietnamese Accounting Standards (VAS) require a specific format for the General Ledger (S03b-DN), which strictly mandates the display of counterpart accounts for every transaction line, along with specific debit/credit balances and period totals. Because Odoo's default general ledger does not natively compute and display counterparts in the exact layout required by VAS, a custom report engine and handler were introduced. Technical decisions: * Implemented a custom SQL query to calculate counterpart accounts dynamically. Instead of forcing rigid data entry constraints on the user, it uses a matching heuristic based on balanced amounts and identical labels to pair counterpart lines (handling 1-to-1, 1-to-N, and proportional splits). * Tax journal lines are isolated, grouped by account, and split proportionally to ensure accurate counterpart reflection. * Added a post-processor and custom UI warnings to handle edge cases where lines cannot be matched cleanly (e.g., complex N-to-N entries without matching labels). These are isolated into an "Uncategorized" section to prompt the user to correct their entry labels. task-6092253