BR-KSA-75: Prepayment lines need taxable amount, tax amount, category and rate
In an invoice with cac:LegalMonetaryTotal/cbc:PrepaidAmount > 0, every invoice line that has a cac:DocumentReference must carry cac:TaxTotal/cac:TaxSubtotal with cbc:TaxableAmount (KSA-31), cbc:TaxAmount (KSA-32), cac:TaxCategory/cbc:ID (KSA-33) and cac:TaxCategory/cbc:Percent (KSA-34). The executed check keys on the presence of cac:DocumentReference in the line, not specifically on the document type code (KSA-30).
How to fix it
In each prepayment line, add a cac:TaxTotal containing a cac:TaxSubtotal with cbc:TaxableAmount, cbc:TaxAmount and a cac:TaxCategory holding cbc:ID and cbc:Percent for the prepaid invoice's VAT category.
ZATCA's official text
[BR-KSA-75]-If Prepayment Document Type code (KSA-30) is provided in an Invoice Line, then the following data is mandatory to provide in that invoice line - Prepayment VAT category Taxable Amount (KSA-31) - Sum total of taxable amounts subject to specific VAT Category code of the prepayment invoice(s); Prepayment VAT Category Tax Amount (KSA-32) - Sum total of tax amounts subject to specific VAT Category code of the prepayment invoice(s); Prepayment VAT category code (KSA-33) - the VAT category code of the associated Prepayment invoice(s); Prepayment VAT rate (KSA-34) - VAT rate of the specific VAT Category code of the prepayment invoice(s)
Source: ZATCA SDK 3.4.8 · ZATCA KSA rules
Fails when (the condition ZATCA's SDK runs)
not( exists(../cac:TaxTotal/cac:TaxSubtotal/cbc:TaxAmount) and exists(../cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:Percent) and exists(../cac:TaxTotal/cac:TaxSubtotal/cbc:TaxableAmount) and exists(../cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID))
Related rules
- BR-KSA-73 · Prepaid amount (BT-113) requires full prepayment reference on lines
- BR-KSA-74 · Prepayment document type code (KSA-30) on lines must be 386
- BR-KSA-76 · Zero-rated (Z) prepayment line VAT rate must be 0
- BR-KSA-77 · Exempt (E) prepayment line VAT rate must be 0
- BR-KSA-78 · Not-subject (O) prepayment line VAT rate must be 0
- BR-KSA-79 · Line VAT breakdown: tax amount = taxable amount x rate / 100
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