BR-KSA-DEC-03: Line VAT amount may have at most two decimals
In each cac:InvoiceLine, cac:TaxTotal/cbc:TaxAmount (KSA-11) must have no more than two digits after the decimal point.
How to fix it
Round the line VAT amount to 2 decimals, e.g. <cbc:TaxAmount currencyID="SAR">15.00</cbc:TaxAmount>.
ZATCA's official text
[BR-KSA-DEC-03]-VAT amount at line level (KSA-11) must have a maximum two decimals.
Source: ZATCA SDK 3.4.8 · ZATCA KSA rules
Fails when (the condition ZATCA's SDK runs)
not(string-length(substring-after(cac:TaxTotal/cbc:TaxAmount,'.'))<=2)
Related rules
- BR-KSA-51 · Line amount with VAT (KSA-12) = line net amount + line VAT
- BR-KSA-52 · Each line needs a line VAT amount (KSA-11) on standard invoices
- BR-KSA-82 · Prepayment lines must carry zero line amounts
- BR-KSA-CL-07 · Prepayment exemption reason code must fit its VAT category
- BR-KSA-DEC-01 · Document allowance percentage must be 0-100 with up to 2 decimals
- BR-KSA-DEC-02 · VAT rates must be 0-100 with at most two decimals
Validate your invoice against ZATCA's rules
Paste the XML and see every error and warning. It runs in your browser; the invoice goes nowhere.
Validate an invoice or try Matheel