UBL/XML Validation
Bring your invoice output into compliance with Peppol BIS 3.0 and EN16931. We fix the schematron violations, country profile mismatches, and long-tail edge cases that break in production.
Who this is for
- Finance and ERP teams whose invoices are getting rejected or returned by receivers and access points.
- Companies expanding from one country profile (e.g. XRechnung) into additional Peppol markets like Belgium or the Netherlands.
- Organisations that pass test validation but see failures in production with real invoice data.
- Teams preparing for go-live that need a clean compliance baseline across all document types.
Who it isn't for
- Companies that have not yet mapped their invoice data to UBL. Start with a Readiness Assessment.
- Teams looking for a one-click validator tool. Our free Peppol Validator handles that.
- Organisations that only send domestic invoices within a single, stable country profile.
What you get
Schematron audit
Rule-by-rule audit of your invoice output against EN16931 business rules and Peppol BIS 3.0 schematron. Every violation documented with root cause and fix path.
- BR-CO-15
- BR-S-08
- BR-CL-10
- PEPPOL-R004
Country profile coverage
Validation against each country profile in scope. Belgian e-FFF, XRechnung, NLCIUS, Factur-X, and others. Cross-country mismatches surfaced and resolved.
Validation Report
Full report with pass/fail/warning for every rule checked. Grouped by rule set, annotated with severity and remediation guidance. The deliverable you hand to your ERP team.
Fix implementation
We work with your ERP team to implement fixes. Mapping corrections, tax breakdown adjustments, attachment encoding, and credit-note edge cases. Not just a report. Fixes that land in production.
BR-CO-15FixedBR-S-08FixedATT-01FixedPEPPOL-R004In reviewRegression test suite
Test suite covering all document types and country profiles in scope. Re-run after fixes to confirm compliance. Handed over so your team can run it on future changes.
Anonymised customer profile. Names and figures changed. Company details available on request under NDA.
German manufacturer expanding into Belgian and Dutch e-invoicing
The situation
A German Mittelstand manufacturer with around 250 staff has been sending XRechnung invoices to German public-sector customers for two years. The process works. But rejection rates have been climbing as the country profile validation rules tighten with each schematron update.
The head of finance and the ERP lead share ownership of the initiative. The company plans to extend e-invoicing to B2B customers and expand into Belgian and Dutch markets. Both countries require Peppol BIS 3.0 compliance with their own country profile extensions. The current XRechnung output has never been tested against those profiles.
What commonly goes sideways
For a profile like this, the most common issues we would surface in the validation audit include:
Cross-country rejections cluster around the BR-CO-15 family of tax breakdown rules. The German profile tolerates certain rounding approaches that the Belgian profile rejects outright. Multi-rate invoices are the worst offenders.
PDF-attachment embedding that works for XRechnung breaks Peppol BIS in production. The MIME type encoding accepted by German receivers is rejected by the Peppol BIS 3.0 schematron when the same invoice targets Belgian or Dutch receivers.
Long-tail credit-note edge cases never caught in test. Negative amount handling, tax rounding on partial credits, and multi-line credit notes with mixed VAT rates all surface only with real production data.
Fields required by the Belgian e-FFF profile (such as TaxRepresentativeParty for non-BE sellers) are absent from the XRechnung output. The ERP mapping was built for a single country and has no awareness of multi-profile requirements.
What a UBL/XML Validation engagement covers for this profile
In a validation engagement for this profile we would collect production invoice samples across all document types: standard invoices, credit notes, and self-billing documents. We run every sample against the full EN16931 business rule set, the Peppol BIS 3.0 schematron, and each country profile in scope.
The Validation Report documents every violation with root cause and severity. We then work with the ERP team to implement fixes. Tax breakdown recalculations, attachment MIME type corrections, credit-note rounding adjustments, and country-profile-specific field additions. Every fix is re-validated before sign-off.
The engagement ends with a regression test suite that covers all document types and country profiles. The team can re-run it on future ERP changes or schematron updates. No dependency on us for ongoing compliance checks.
reissue and rejection volume cut within 4 weeks
Systematic fix of the top violation families eliminates the bulk of rejections. Remaining cases addressed in regression testing.
rejection-driven AR delay reduced
Every rejected invoice restarts the AR clock. Eliminating rejections recovers cash flow that was stuck in the reissue-and-wait cycle.
manual re-issuing workload eliminated
Finance staff currently re-keying and re-sending rejected invoices. Fixing the root cause removes the manual loop entirely for the addressed violation classes.
UBL/XML Validation Report
Client: ████████ GmbH
BR-CO-15errorInvoice total with VAT must equal Invoice total without VAT plus Invoice total VAT amount
Tax breakdown rounding differs between DE and BE country profiles. ██████ line-level amounts.
BR-CO-16errorAmount due for payment must equal Invoice total with VAT
BR-S-08errorFor each tax breakdown where category code is Standard, the taxable amount must equal the sum of line extension amounts
Multi-rate invoices split incorrectly. ██% VAT category not summed across all line items.
BR-CL-10errorEndpoint identifier scheme must be from code list
PEPPOL-EN16931-R004errorTax calculation tolerances exceeded on credit note
Credit-note tax rounding edge case. Negative amounts produce ██████ cent deviation.
PEPPOL-EN16931-R002errorCustomization ID must correspond to the specification
PEPPOL-EN16931-R080warningDocument level allowance reason must be provided
Commercial discount lines missing AllowanceChargeReason. Accepted by DE profile, rejected by BE.
BE-R-001errorBelgian structured communication (OGM) must follow +++DDD/DDDD/DDDDD+++ format
BE-R-003warningTax representative party name required for non-BE seller
DE seller entity missing TaxRepresentativeParty. Required for BE-destined invoices.
BR-DE-01errorBuyer reference (Leitweg-ID) must be provided for German public sector
BR-DE-15errorSeller contact telephone number is required
ATT-01errorPDF/A-3 embedded XML attachment must reference correct MIME type
PDF attachment uses application/pdf MIME type. Works for XRechnung viewer but breaks Peppol BIS ██████ validation.
ATT-02errorAdditional document reference must include attachment
Report generated against Peppol BIS 3.0, EN16931, and applicable country profiles. Redacted fields (██) contain client-specific data available under NDA.
How we run it
Kickoff and sample collection
Week 1Align on country profiles in scope, document types, and known rejection patterns. Collect production invoice samples across all ERP outputs.
Full validation audit
Week 1–2Run every sample against EN16931 business rules, Peppol BIS 3.0 schematron, and applicable country profiles. Document every violation with root cause analysis.
Validation Report delivery
Week 2–3Deliver the full Validation Report. Walk through findings with finance and ERP teams. Prioritise fixes by severity and business impact.
Fix implementation
Week 3–5Work alongside your ERP team to implement mapping corrections, tax breakdown fixes, attachment encoding changes, and credit-note adjustments.
Regression testing and handover
Week 5–6Re-run the full test suite against corrected output. Confirm compliance across all profiles. Hand over the regression suite for ongoing use.
Format and pricing
From €8,000
Fixed scope. Fixed price. Final price depends on country profile coverage and invoice volume.
Often followed by
Implementation
End-to-end pipeline setup. Peppol registration, format mapping, ERP integration, test cycles, and supervised go-live.
ImplementationOften starts with
Readiness Assessment
Gap analysis of your ERP, formats, and processes against applicable mandates. Includes a Peppol Readiness Scan.
Readiness AssessmentFrequently asked questions
Do you fix the issues or just report them?
Which country profiles do you cover?
Our invoices pass the free validator. Why do we still get rejections?
How is this different from running your free Peppol Validator?
Can you work with our ERP vendor directly?
How long does the engagement take?
Discuss on a discovery call
30 minutes with a co-founder or senior e-invoicing expert. You leave the call with a clear next step. Tailored proposal in your inbox within 48 hours.
Vendor-neutral. No obligation to switch platforms.