BR-KSA-F-07: Buyer TIN must be 10 digits starting with 3
When the buyer's cac:AccountingCustomerParty/cac:Party/cac:PartyIdentification has cbc:ID with schemeID='TIN', the value must be exactly 10 digits starting with 3; otherwise a warning is raised. In the validator this test is the failure condition: the expression shown is TRUE when the value is wrong.
How to fix it
Put the correct Tax Identification Number as exactly 10 digits starting with 3, e.g. <cbc:ID schemeID="TIN">3105293847</cbc:ID> with no letters, dashes or spaces. If the number you have does not fit this shape, check that the schemeID is the right one.
ZATCA's official text
[BR-KSA-F-07] - The value provided in Other Buyer ID (BT-46) for scheme ID 'TIN' appears to be incorrect. Please recheck the value to avoid non-compliance.
Source: ZATCA SDK 3.4.8 · ZATCA KSA rules
Fails when (the condition ZATCA's SDK runs)
normalize-space(@schemeID) = 'TIN' and not(string-length(normalize-space(.)) = 10 and not(translate((.), '0123456789', '')) and starts-with(normalize-space(.), '3'))
Related rules
- BR-KSA-14 · Buyer ID must use an allowed scheme ID
- BR-KSA-49 · EDU/HEA exemption requires buyer national ID (BT-46, scheme NAT)
- BR-KSA-81 · Standard invoice without buyer VAT number needs another buyer ID
- BR-KSA-F-08 · Seller/buyer CRN must be exactly 10 digits
- BR-KSA-F-09 · Seller/buyer '700' number must be 10 digits starting with 7
- BR-KSA-F-10 · Buyer national ID (NAT) must be 10 digits starting with 1
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