BR-KSA-04: Issue date must not be in the future
cbc:IssueDate (BT-2), when it is a valid date, must be on or before the current date at the time of validation.
How to fix it
Set cbc:IssueDate to the actual issue date in YYYY-MM-DD format, e.g. <cbc:IssueDate>2022-09-07</cbc:IssueDate>, never a later date.
ZATCA's official text
[BR-KSA-04]-The document issue date (BT-2) must be less or equal to the current date.
Source: ZATCA SDK 3.4.8 · ZATCA KSA rules
Fails when (the condition ZATCA's SDK runs)
((. castable as xs:date ) and normalize-space(.)!='') and xs:date(.) > current-date()
Related rules
- BR-03 · Every invoice needs an issue date (BT-2)
- BR-KSA-73 · Prepaid amount (BT-113) requires full prepayment reference on lines
- BR-E-08 · Exempt (E) taxable amount must match the exempt lines and adjustments
- BR-E-09 · VAT amount in an exempt (E) breakdown must be 0
- BR-KSA-03 · Every invoice needs a UUID
- BR-KSA-05 · Invoice type code must be 388, 383, 381 or 386
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