Free UBL & Peppol Invoice Validator BIS 3.0 & EN 16931
This free tool validates UBL 2.1 invoices and credit notes for XSD schema compliance and Peppol BIS Billing 3.0 business rules (EN 16931 standard). It is designed for developers, accountants, and finance teams who need to verify their e-invoices before submitting them through the Peppol network.
UBL / Peppol Validator for Italian Companies
Italy was the first large EU country to mandate B2B e-invoicing via the SDI platform since January 2019. Validate your UBL / Peppol BIS 3.0 invoices for EN 16931 compliance — free, no upload.
Open UBL ValidatorItalian e-invoicing: FatturaPA and SDI system
Italy's SDI (Sistema di Interscambio) platform, managed by the Agenzia delle Entrate, has been mandatory for all B2B and B2C invoices between Italian VAT-registered entities since January 2019. FatturaPA is Italy's national XML format, based on a data model predating EN 16931 but recognised by the European Commission as substantially equivalent.
For cross-border transactions and Peppol-connected trading partners, UBL 2.1 (Peppol BIS Billing 3.0) is increasingly used alongside FatturaPA. ValidateFin validates the UBL/Peppol format against EN 16931 and Peppol BIS 3.0 business rules. Italian B2B invoices in FatturaPA format must be submitted electronically via SDI — paper invoices are no longer accepted.
Italian e-invoicing compliance timeline
B2B mandatory: all Italian VAT-registered businesses must issue and receive electronic invoices via SDI. Paper invoices no longer accepted.
B2C: electronic invoices mandatory for supplies to Italian consumers when requested. SDI becomes the single hub for all domestic invoices.
Cross-border transactions: electronic invoicing reporting (esterometro) replaced by SDI submission of cross-border invoice data.
Italy participates in the EU ViDA negotiations and Peppol adoption. UBL/Peppol increasingly used for international B2B flows with EU trading partners.
What ValidateFin checks in your UBL invoice for Italy
For Italian companies using UBL/Peppol for cross-border invoicing, verify your invoice passes these checks:
- UBL 2.1 schema validation against EN 16931 and Peppol BIS Billing 3.0 specification
- Italian VAT number format: IT + 11 digits (Partita IVA)
- EN 16931 mandatory fields: seller/buyer VAT, invoice number, issue date, tax breakdown
- VAT consistency: tax amounts match declared rates and basis amounts
- Peppol BIS 3.0 specific rules: buyer reference, payment means, currency code
Common UBL errors for Italian cross-border invoicing
Invalid Italian VAT number format
Italian Partita IVA must follow the format IT + 11 digits (e.g. IT12345678901). Country prefix IT is mandatory in EN 16931 cbc:CompanyID for Italian entities.
Missing or wrong CustomizationID
Peppol BIS 3.0 invoices must declare urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 in cbc:CustomizationID. Mismatch causes rejection at Peppol access points.
VAT rate inconsistency
Italy applies multiple VAT rates (4%, 5%, 10%, 22%) and exempt categories. Each VAT breakdown must match the declared rate × basis amount within 0.01€.
Frequently asked questions
Does Italy accept UBL invoices via SDI?
SDI accepts FatturaPA (Italy's native XML format), not UBL directly. For cross-border Peppol transactions, UBL/Peppol BIS 3.0 is used. Italy is connected to the Peppol network, allowing Italian businesses to send and receive UBL invoices with other Peppol-connected EU companies without going through SDI.
What is the difference between FatturaPA and Peppol BIS 3.0?
FatturaPA is Italy's domestic e-invoicing format, mandatory for all Italian B2B transactions via SDI. Peppol BIS 3.0 is the pan-European e-invoicing format used on the Peppol network for cross-border transactions. Both are XML-based but use different schemas and business rules.
Can ValidateFin validate FatturaPA invoices?
ValidateFin currently validates UBL/Peppol BIS 3.0 invoices against EN 16931 rules. FatturaPA uses a different XML schema (SDICoop) not directly mapped to EN 16931. Use ValidateFin for your Peppol cross-border invoices and the Agenzia delle Entrate tools for domestic FatturaPA validation.
Validate your UBL invoice for Italian cross-border transactions
Check EN 16931 and Peppol BIS 3.0 compliance instantly. No file uploaded.
About the UBL / Peppol Invoice Validator
This free tool validates UBL 2.1 invoices and credit notes for XSD schema compliance and Peppol BIS Billing 3.0 business rules (EN 16931 standard). It is designed for developers, accountants, and finance teams who need to verify their e-invoices before submitting them through the Peppol network.
The validator checks structure, mandatory fields, VAT consistency, line item totals, and dozens of business rules defined in the European e-invoicing standard. All processing is done locally — no invoice data is ever sent to a server.
UBL (Universal Business Language) 2.1 is an OASIS standard that defines XML schemas for common business documents including invoices, credit notes, and orders. Within Europe, the Peppol network uses UBL as its primary invoice format, governed by the BIS Billing 3.0 specification which implements the EN 16931 European standard. As EU member states roll out mandatory e-invoicing (France in 2026, Germany in 2025 for B2B, Belgium via Peppol from January 2026), the ability to validate UBL invoices before transmission becomes essential for compliance.
The validation covers two layers: structural validation against the UBL 2.1 XSD schema (checking element names, data types, and cardinality) and semantic validation against Peppol business rules (checking that tax calculations are consistent, that mandatory supplier and buyer identifiers are present, and that document totals are mathematically correct). A single failed business rule can cause invoice rejection on the Peppol network, leading to delayed payments and reconciliation issues.
What is UBL?
UBL (Universal Business Language) 2.1 is an OASIS open standard that defines XML schemas for common business documents such as invoices and credit notes. In Europe, UBL is the primary format used on the Peppol network for e-invoicing, governed by the BIS Billing 3.0 specification which implements the EN 16931 European e-invoicing standard.
Key Takeaways
- UBL 2.1 is the primary invoice format for the Peppol network across Europe
- Peppol BIS Billing 3.0 enforces ~150 business rules on top of the UBL XML schema
- Tax calculations must be mathematically consistent — even 0.01€ difference causes rejection
- Mandatory fields include seller/buyer VAT, invoice number, tax breakdown, and monetary totals
- ValidateFin validates both UBL schema and Peppol business rules entirely in your browser
European e-invoicing formats compared
| Format | Syntax | Primary markets | Use case |
|---|---|---|---|
| UBL 2.1 (Peppol BIS 3.0) | XML | All EU via Peppol | B2B/B2G e-invoicing network |
| Factur-X / ZUGFeRD | PDF/A-3 + XML | France, Germany, Belgium | Hybrid human+machine invoices |
| CII (Cross Industry Invoice) | XML | Germany (XRechnung) | Government invoicing (B2G) |
| FatturaPA | XML (SDI) | Italy | Mandatory B2B since 2019 |
All formats implement EN 16931. Peppol BIS 3.0 uses UBL syntax and is the most widely adopted across the EU.
Frequently Asked Questions
Which UBL invoice versions are supported?
The validator supports UBL 2.1 invoices and credit notes, with Peppol BIS Billing 3.0 business rule validation (EN 16931 standard). See our UBL/Peppol invoicing guide for details.
What is the difference between XSD validation and Peppol rules?
XSD validation checks the document structure and data types. Peppol BIS 3.0 rules add business logic checks such as VAT consistency, mandatory supplier fields, and line item totals.
Is this tool suitable for e-invoicing compliance in Europe?
Yes. The tool validates against EN 16931, the European standard for electronic invoicing, making it suitable for compliance checks in all EU member states. Read more about upcoming requirements in our e-invoicing in Europe 2026 article.
Do I need to install any software?
No installation required. The validator runs entirely in your browser with no plugins or extensions needed.
What is Peppol BIS Billing 3.0?
Peppol BIS Billing 3.0 (Business Interoperability Specification) is the standard specification for electronic invoices exchanged over the Peppol network. It implements the EN 16931 European standard and defines specific business rules around VAT, payment terms, allowances, charges, and document totals. It is used across all EU member states and many international partners.
Why does my UBL invoice pass XSD validation but fail Peppol rules?
XSD validation only checks structure and data types — it cannot verify business logic. Peppol BIS 3.0 rules include checks like: the sum of line amounts must equal the document taxable amount, each tax subtotal must have a matching VAT category, and certain fields are conditionally mandatory based on document type. An invoice can be structurally valid but still violate these business rules.
What is the EN 16931 standard?
EN 16931 is the European standard for electronic invoicing, published in 2017 and mandatory for all public sector e-invoicing in EU member states. It defines a semantic data model for invoice content. UBL 2.1 and UN/CEFACT CII are the two XML syntaxes that implement this standard. Peppol BIS 3.0 is a profile built on top of EN 16931.
Can I validate a credit note with this tool?
Yes. The validator supports both UBL 2.1 Invoice and UBL 2.1 Credit Note document types. The same Peppol BIS 3.0 and EN 16931 rules apply to both, with some specific rules activated only for credit notes (e.g. a CreditedQuantity or PayableAmount with a negative sign). For hybrid PDF invoices, see the Factur-X / ZUGFeRD Viewer.
Which VAT categories are supported?
The validator supports all standard EN 16931 VAT categories: S (standard rate), Z (zero rate), E (exempt), AE (reverse charge), K (intra-EU supply), G (export outside EU), O (outside scope), and IGIC/IPSI for Canary Islands and Ceuta/Melilla. Each category has specific mandatory field requirements checked by the Peppol rules.
Is my invoice data safe when using this tool?
Yes. The entire validation process runs locally in your browser using JavaScript. Your invoice XML file is never uploaded to any server, transmitted over the network, or stored anywhere. This makes the tool fully compliant with GDPR and safe to use with real supplier and customer data. See our GDPR compliance page for details.