Official text (the SDK's own message)
An Invoice shall have an Invoice type code (BT-3).Error · Source: ZATCA E-Invoicing SDK 238-R3.3.8 · Electronic Invoice XML Implementation Standard v1.2, 19 May 2023, §13.2.1, p. 36 · Checked: 26 October 2026
What it means
BR-04 is one of the validation rules for the e-invoice. An error: the invoice is rejected, so fix the cause and send it again. The severity comes from ZATCA's own SDK.
Fields the rule names
The rule text names 1 field. BT is a single invoice element, BG is a group of elements and KSA is a Saudi-specific element.
BT-3
How to fix it
The steps follow the wording of the rule only; we add nothing ZATCA did not say.
- Open the invoice XML and find the fields the rule names:
BT-3. - Make sure
BT-3(Invoice type code) is present in the invoice, because the rule requires it. - Correct the value or element in the XML, or in the POS setting that writes it, then generate the invoice again.
- Check the corrected file with ZATCA's SDK 238-R3.3.8 before you send it.
- Send the invoice again: the platform rejects an invoice that raises this code.
Rule family
BR-04 belongs to the BR family. In the XML Implementation Standard this family is section 13.2.1, titled Business rules - integrity constraints (BR): integrity constraints: elements an invoice has to contain. Our data holds 32 rules of this family, all of them raised by ZATCA's SDK.
Source and verification
- ZATCA SDK 238-R3.3.8: yes
- XML Implementation Standard: yes, section 13.2.1, p. 36
Verified on 26 October 2026. Source: ZATCA E-Invoicing SDK 238-R3.3.8 · Electronic Invoice XML Implementation Standard v1.2, 19 May 2023, §13.2.1, p. 36
This page is built from the reference’s open data: /codes.json. We add nothing of our own to it beyond the layout and the wording of the steps.
Related codes
From the same section of the standard (13.2.1 Business rules - integrity constraints (BR)) or the same family:
- BR-02 An Invoice shall have an Invoice number (BT-1).
- BR-03 An Invoice shall have an Invoice issue date (BT-2).
- BR-05 An Invoice shall have an Invoice currency code (BT-5).
- BR-06 An Invoice shall contain the Seller name (BT-27).
- BR-08 An Invoice shall contain the Seller postal address (BG-5)
Terms on this page
Keep going
Go back to the e-invoicing reference, see all rejection codes, or check your invoice file in the XML checker before you send it.
Frequently asked questions
What does BR-04 mean?
BR-04 is a rule in ZATCA's e-invoice validation. Its official text is: "An Invoice shall have an Invoice type code (BT-3)."
Is the invoice rejected when BR-04 appears?
An error: the invoice is rejected, so fix the cause and send it again. This is its severity in ZATCA's SDK 238-R3.3.8.
Where is BR-04 in ZATCA's documents?
ZATCA SDK 238-R3.3.8: yes. XML Implementation Standard: yes, section 13.2.1 p. 36. We checked on 26 October 2026.
Last updated: 27 October 2026 · What we don't do · Methodology · Correct us · Changelog
First published 2026-10-27
First 500 restaurants, cafés, bakeries and sweet shops: a SAR 99 monthly cap.
Instead of SAR 149, per branch, for a full year. Free to join, no commitment.