warningbusinessPeppol BIS 3.0

IN-TAX-CATEGORY-CODES:Tax category codes validation

Fix: Update the `cbc:ID` element to use a value from the allowed code list.

Tax category codes should be from UNCL5305 Peppol subset (AE, E, G, K, L, M, O, S, Z)

Severity
Warning
Rule set
Peppol BIS 3.0
Country
All EU
Fix type
BLOCKED

Engine Classification

Financial or legal field · Modification blocked by policy

Reason: Tax category codes affect tax calculation and reporting. The correct code must be determined based on the transaction type and applicable tax rules.

What is IN-TAX-CATEGORY-CODES?

IN-TAX-CATEGORY-CODES is a warning validation rule defined in the Peppol BIS 3.0 specification. It validates the Percent element under TaxCategory in the UBL invoice XML.

The invoice may pass transmission, but this non-compliance can cause problems during tax audits or buyer-side processing.

Target path: XPath: //cac:TaxCategory/cbc:Percent

This error requires manual correction — financial fields are protected by policy.

Why This Error Matters

VAT rate must be correct for proper tax calculation and reporting.

IN-TAX-CATEGORY-CODES is a soft failure that can cause issues at the receiving end — tax audits, ERP processing, or VAT reconciliation mismatches.

Validator Behavior

  • ·Generates validation warning
  • ·Rejected by PEPPOL Access Points
  • ·Error returned: IN-TAX-CATEGORY-CODES
  • ·Specification: Peppol BIS 3.0

How to Fix It

1.

Check category

S requires standard rate (19-27% in EU)

2.

Zero categories

Z, E, AE, K, G should have 0 or no percent

3.

Reduced rates

AA for reduced rate with applicable percentage

Before / After

Failing XML
<cac:TaxCategory>
  <cbc:ID>INVALID_CODE</cbc:ID>
</cac:TaxCategory>
Corrected XML
<cac:TaxCategory>
  <cbc:ID>VALID_CODE</cbc:ID>
</cac:TaxCategory>

Technical Reference

XPathXPath: //cac:TaxCategory/cbc:Percent
SpecPeppol BIS 3.0

Code Example

<cac:TaxCategory>
  <cbc:ID>S</cbc:ID>
  <cbc:Percent>21</cbc:Percent>
</cac:TaxCategory>

Common Causes

  • ·Wrong rate for country
  • ·Using 0% with S category
  • ·Invalid percentage value

Seeing this in production? The API handles IN-TAX-CATEGORY-CODES automatically. See the fix response →

Commonly Seen In

All invoicing software

Frequently Asked Questions

The VAT percentage must be a valid rate for the tax category.

Update the `cbc:ID` element to use a value from the allowed code list. This error involves a protected field — Invoice Navigator flags it in your pipeline so your team can correct it at the source.

Yes, PEPPOL-EN16931-R007 is a critical error that must be fixed.

Related Errors

Related Content

Last updated: 3 March 2026

Share this guide:

Validate your invoice

Drop your XML here to check for IN-TAX-CATEGORY-CODES

Detect IN-TAX-CATEGORY-CODES before submission

This error involves a financial field that can't be auto-modified. We'll flag it with a clear diagnosis so you can fix it at the source.