What is BR-O about?
The category "Not subject to VAT" (VAT category code O) applies to transactions that fall outside the scope of VAT. There is no VAT rate and no tax amount other than 0. In German B2B trade this covers, for example, pure disbursements, non-taxable internal transactions, or services with no place of supply in Germany. The common thread: whoever uses this category gives no VAT identifier (neither seller, tax representative nor buyer), states a reason for the non-taxability, and does not mix it with other VAT categories - an invoice with "Not subject to VAT" has exactly one VAT breakdown and only lines of that category.
All rules in group BR-O
If an invoice contains a line, an allowance or a charge with VAT category code "Not subject to VAT", it must contain exactly one VAT breakdown (BG-23) with VAT category code (BT-118) "Not subject to VAT".
If an invoice line has VAT category code (BT-151) "Not subject to VAT", the invoice must contain neither the Seller VAT identifier (BT-31) nor the Seller tax representative VAT identifier (BT-63) nor the Buyer VAT identifier (BT-48).
If a document level allowance has VAT category code (BT-95) "Not subject to VAT", the invoice must contain neither the Seller VAT identifier (BT-31) nor the Seller tax representative VAT identifier (BT-63) nor the Buyer VAT identifier (BT-48).
If a document level charge has VAT category code (BT-102) "Not subject to VAT", the invoice must contain neither the Seller VAT identifier (BT-31) nor the Seller tax representative VAT identifier (BT-63) nor the Buyer VAT identifier (BT-48).
An invoice line with VAT category code (BT-151) "Not subject to VAT" must not contain an invoiced item VAT rate (BT-152).
A document level allowance with VAT category code (BT-95) "Not subject to VAT" must not contain an allowance VAT rate (BT-96).
A document level charge with VAT category code (BT-102) "Not subject to VAT" must not contain a charge VAT rate (BT-103).
In a VAT breakdown with VAT category code (BT-118) "Not subject to VAT", the VAT category taxable amount (BT-116) must equal the sum of the net line amounts of that category minus allowances plus charges.
The VAT category tax amount (BT-117) in a VAT breakdown with VAT category code (BT-118) "Not subject to VAT" must be 0 (zero).
A VAT breakdown with VAT category code (BT-118) "Not subject to VAT" must contain a VAT exemption reason code (BT-121) or a VAT exemption reason text (BT-120).
If an invoice contains a VAT breakdown (BG-23) with VAT category code (BT-118) "Not subject to VAT", it must not contain any further VAT breakdown (BG-23).
If an invoice contains a VAT breakdown with VAT category code (BT-118) "Not subject to VAT", it must not contain any invoice line (BG-25) whose VAT category code (BT-151) is not "Not subject to VAT".
If an invoice contains a VAT breakdown with VAT category code (BT-118) "Not subject to VAT", it must not contain any document level allowance (BG-20) whose VAT category code (BT-95) is not "Not subject to VAT".
If an invoice contains a VAT breakdown with VAT category code (BT-118) "Not subject to VAT", it must not contain any document level charge (BG-21) whose VAT category code (BT-102) is not "Not subject to VAT".
Check BR-O automatically
Instead of digging through the XML by hand you can validate your ZUGFeRD or XRechnung file online – you get every violation with rule ID, affected field, fix and XPath, as a readable report or as JSON through the API.