← Indietro

European eInvoicing Implementation Guide: From First Test to Production

Getting a European invoice conversion workflow into production involves more than picking a source and target format. You need to understand your data quality, validate that converted files behave correctly in downstream systems, and have a clear handoff between your finance, technical, and compliance teams. This guide walks through each stage in the order that works in real projects.

If you have not yet identified your source and target formats, start with the Conversion Matrix to confirm the path your workflow needs.

Implementation at a Glance

1. AssessMap your formatsand data sources2. Sample TestConvert real files,check every field3. Fix & ValidateResolve data gaps,pass Schematron4. UATFinance + compliancesign-off5. Go LiveMonitor first30 days closely

Phase 1 — Assess Your Current Invoice Landscape

Before converting a single file, answer three questions about your existing invoices:

  • What format are your invoices in today? UBL, FatturaPA, Factur-X, CII, or unstructured PDF? If the answer is unstructured PDF, you are not starting with a conversion problem — you are starting with a data capture problem that must be solved upstream before this converter applies.
  • What format does the receiving system or platform require? Check with the buyer, the procurement portal, or the country mandate. Germany federal B2G requires XRechnung-compatible UBL. Italy requires FatturaPA via SDI. Poland B2B from 2026 requires KSeF-compatible SKEF. Peppol-connected buyers accept UBL BIS 3.0.
  • How consistent is your source data quality? Run 20 to 30 real invoices through the converter in test mode and note which fields are missing or incorrectly formatted in the source. This gap list becomes your Phase 3 work.

Phase 2 — Run Sample Conversions on Real Files

Avoid testing with hand-crafted ideal invoices. Use real production documents from your archive. Real files expose the edge cases — mixed VAT rates, zero-amount lines, long addresses, special characters in company names — that ideal test files never show.

For each sample conversion, check the following before moving on:

Field groupWhat to verify in the output
Invoice headerInvoice number, issue date, and due date match the source exactly
Seller and buyerVAT numbers, legal names, and addresses are complete and not truncated
Line itemsOutput has the same line count as the source; zero-amount lines are present
VAT breakdownTax amount per category matches; total VAT equals the sum of line-level VAT
Monetary totalsNet, gross, and payable amounts match to two decimal places
Payment detailsIBAN, payment means code, and due date are present in the target format
CurrencyCurrency code is consistent on every amount field in XML targets

Phase 3 — Fix Source Data Gaps Before Scaling

The most common reason converted invoices fail downstream validation is not a converter bug — it is missing data in the source file. The converter can only map fields that exist. Fields that EN 16931 or the target format requires but the source omitted will be flagged, not invented.

The table below lists the fields most frequently missing in real source files, by format:

Source formatMost often missingImpact on target
UBLBuyer endpoint ID (BT-49), Leitweg-ID for German buyersPeppol delivery fails; XRechnung portal rejects
FatturaPACodiceDestinatario or PEC address, VAT natura codes on exempt linesSDI routing fails; EN 16931 VAT category cannot be resolved
Factur-XMINIMUM / BASIC WL profiles lack line itemsUBL target has no invoice lines — fails Peppol BIS validation
CIISellerTradeParty GlobalID schemeID attributeParty identifier scheme lost in UBL output

Fix these gaps at the source system — either by updating your ERP export template or by enriching the data programmatically before submitting to the converter. Do not work around missing mandatory fields by inserting placeholder values; receivers and tax authorities check these fields.

Phase 4 — User Acceptance Testing (UAT)

UAT for invoice conversion should involve three roles, each checking different things:

Finance team

Confirm that converted invoices import correctly into your accounting system. Check that line amounts post to the right GL accounts, VAT amounts are correctly split by tax code, and supplier references match existing records. Finance owns the go / no-go decision on business correctness.

Technical team

Run converted files through the target platform's own validator before UAT sign-off. For UBL targeting Peppol, use the OpenPeppol validation service or the phive command-line tool. For FatturaPA, use the Agenzia delle Entrate test environment. A file that passes your internal checks but fails the platform validator means there is a field mapping issue still to resolve.

Compliance team

Confirm that the output format satisfies the applicable national mandate for each trading relationship. Cross-border invoices have dual requirements — the sender's country rules and the receiver's country rules may both apply. Compliance owns the sign-off on legal suitability, which is separate from technical validity.

Realistic Timeline by Workflow Complexity

Workflow typeTypical durationMain effort
Single format pair, clean source data (e.g. UBL → PDF)1–3 daysSample test and finance review
Single format pair, source data needs fixes (e.g. FatturaPA → UBL)1–2 weeksSource enrichment, platform validator testing
Multi-country workflow (e.g. UBL → FatturaPA + SKEF + Factur-X)3–6 weeksPer-country compliance review, three separate UAT tracks
Full integration with ERP export and access point delivery6–12 weeksERP template updates, AP/AR integration, go-live monitoring

Phase 5 — Go Live and Monitor

Go live with a controlled batch first — not your full invoice volume. Choose 10 to 20 invoices that represent your typical mix: different VAT rates, different counterparties, credit notes if applicable. Confirm each one is accepted by the receiving system or platform before opening the full volume.

First 30 days checklist

  • Track rejection rates from the target platform (SDI, Peppol AP, ZRE, KSeF) separately from your own validation
  • Confirm that converted invoices reconcile with your source documents in the accounting system
  • Log every rejection with its error code and the specific invoice — this builds your edge-case library
  • Keep original source files alongside converted outputs for audit traceability for at least 90 days
  • Review any invoices with mixed VAT rates or discounts manually in the first week

ROI Factors Worth Measuring

Conversion workflows reduce manual work, but the gains are only visible if you measure the right things before and after go-live:

  • Manual re-keying time: How many minutes per invoice does your AP team spend re-entering data from incoming PDFs or foreign-format files? Structured conversion eliminates this entirely for covered format pairs.
  • Rejection rate and rework cost: Invoices rejected by SDI, Peppol, or ZRE return to the sender for correction. Each rejection costs processing time and delays payment. A reduction in rejection rate directly reduces DSO (days sales outstanding).
  • Compliance penalty risk: Italy's SDI fines non-compliant invoices. Poland's KSeF will enforce similar penalties from 2026. Correct format conversion is part of the compliance control, not just a technical convenience.
  • Partner onboarding speed: A team that can quickly convert incoming invoices from any EU format onboards new suppliers faster, without requiring suppliers to change their systems.

Common Go-Live Failures and How to Avoid Them

  • Testing only with ideal invoices: Edge cases always surface in production. Use real archived invoices during all test phases.
  • Skipping platform-side validation: An invoice that passes your internal checks but fails SDI or a Peppol access point validator means there is a field mapping gap. Always test against the actual receiving platform before go-live.
  • No ownership of rejected invoices: Define a clear owner for rejections before go-live — who receives the error, who corrects the source, and what the SLA is for resubmission. Without this, rejections sit in a queue and delay payments.
  • Assuming one format covers all countries: UBL works for Peppol and many EU countries, but it does not satisfy Italy (SDI requires FatturaPA) or Poland (KSeF requires SKEF). Map each trading relationship to its correct target format before scaling.

Ready to Start

Open the Invoice Format Converter and upload your first source file. For format-specific details that support each implementation phase, use the pages below.

Last modified: 2026