Inconsistent Summary Tax Handling in Purchase Invoice (isSOTrx = N) – iDempiere 12,GST setup (India)

27 views
Skip to first unread message

Nisha John

unread,
Feb 11, 2026, 11:52:46 AM (9 days ago) Feb 11
to iDempiere
Hello Team,
I would like to report a possible inconsistency in summary (parent-child) tax handling in iDempiere 12.
Parent tax: SGST+CGST 18% (Summary Level = Y)
Child taxes: SGST 9% and CGST 9% (linked to parent)
Sales Invoice (isSOTrx = Y):
Parent tax explodes correctly
Two child tax lines (9% + 9%) are created in C_InvoiceTax
Amounts are calculated correctly
Purchase Invoice (isSOTrx = N):
Child tax lines are created in C_InvoiceTax
However, the full 18% amount is applied to each child
Instead of splitting correctly into 9% + 9%
It appears related to the logic in MInvoiceTax.calculateTaxFromLines():
if (!documentLevel && amt.signum() != 0 && !isSOTrx) // manually entered
;
else if (documentLevel || baseAmt.signum() == 0)
amt = Env.ZERO;
else // calculate line tax
amt = tax.calculateTax(baseAmt, isTaxIncluded(), getPrecision());
//
taxAmt = taxAmt.add(amt);
Because of the !isSOTrx condition, recalculation is skipped for Purchase invoices when an amount is already present, leading to incorrect distribution of summary tax.
From a GST perspective, consistent splitting is expected.
Reply all
Reply to author
Forward
0 new messages