PDF invoice to Peppol / UBL converter
Convert a PDF invoice to Peppol / UBL XML.
E-Invoice Converter reads a PDF invoice's own text layer, lets you check every field against the source before anything is generated, and produces Peppol BIS 3.0, XRechnung 3.0 or EN 16931 UBL XML — the structured file your customer's e-invoicing mandate now requires.
PDF with a text layer · 20 MB max
No account, nothing uploaded — parsing runs in your browser. Needs a text-layer PDF; a scanned invoice can't be read this way.
- Extracted
Seller VAT ID
DE 812398458
- Check this
IBAN
DE89 3704 0044 0532 0130 00
- Missing
Buyer reference
not on the invoice
Watch E-Invoice Converter turn a PDF invoice into Peppol XML, in 30 seconds.
A real PDF invoice, converted in the actual product — no account, and nothing to upload to watch it happen.
Thirty seconds, and it starts silent — turn the sound on in the player once it loads.
Nothing has been sent to YouTube yet: the image and this text came from us, and pressing play is what connects your browser to YouTube.
- 0:00Start with your PDF.
- 0:01Read here. Nothing is uploaded.
- 0:04Checked against EN 16931.
- 0:08Straight to the failing field.
- 0:10Fix it in the form.
- 0:16Five errors down to one.
- 0:19One left: the buyer reference.
- 0:23Then the XML is yours.
Why a PDF is no longer enough
European e-invoicing mandates require a structured file, not a page that merely looks like an invoice. These are the dates each one takes effect, and whom it binds.
1 January 2025
Germany
Every domestic business must be able to receive an e-invoice in the EN 16931 format. Until the end of 2026 a supplier may still choose to send another kind of invoice instead; the issuing dates follow below.
1 January 2026
Belgium
Mandatory B2B e-invoicing over Peppol, applied to all businesses at once. A Belgian customer's accounting system expects a Peppol BIS file, not a PDF attachment.
1 February 2026
Poland
KSeF, the national e-invoicing system, became mandatory on this date for the largest businesses and for receiving invoices, and on 1 April 2026 for most other businesses; the smallest join on 1 January 2027. KSeF takes its own FA(3) structure, which this converter does not write.
1 September 2026
France
Every VAT-registered business must be able to receive e-invoices from this date. Issuing follows in phases, starting with large and mid-sized companies and reaching all businesses by 1 September 2027.
1 January 2027
Germany
A business whose own turnover is above €800,000 must issue XRechnung or another EN 16931-compliant format to its German business customers from this date; the obligation reaches all domestic B2B from 1 January 2028.
1 July 2030
European Union
The EU's ViDA package, adopted on 11 March 2025, applies digital reporting requirements to cross-border B2B supplies from this date, extending the obligation beyond any single country's mandate.
If a customer names Peppol, XRechnung or UBL and hands you a deadline, this is the requirement they mean.
Dates checked against official sources on September 11, 2026.
It is not tax or legal advice
Whether a document satisfies your obligations in your country is a question for your accountant.
A PDF in, a validated UBL file out.
No AI and no OCR: deterministic rules over the text layer, every value shown beside the snippet it came from.
The file you already send
invoice-10428.pdf
- Seller VAT ID
- DE 812398458
- IBAN
- DE89 3704 0044 0532 0130 00
Review what was found
- Extracted
Seller VAT ID
DE 812398458
- Check this
IBAN
DE89 3704 0044 0532 0130 00
- Missing
Buyer reference
not on the invoice
Valid UBL XML
<Invoice>
<cbc:ID>10428</cbc:ID>
<cbc:DocumentCurrencyCode>EUR
<cbc:PayableAmount>1190.00
Reads the fields, with evidence
Supplier, buyer, VAT identifiers, line items and totals are pulled from the PDF's own text layer. Each one shows the exact snippet it came from and the page it sits on, so you can check it against the source rather than trust it.
Checks it continuously
Every field is validated against the EN 16931 core rules and your target profile's own rules as you edit, with each finding written as a sentence naming the field, the expected value against the current one, and the published rule id.
See every validation ruleGenerates the file you were asked for
Once the report is clean, download UBL XML in Peppol BIS 3.0, XRechnung 3.0 or EN 16931 form, plus a validation report you can keep alongside the invoice.
How a PDF becomes a UBL file
Upload the PDF
Parsing runs entirely in your browser, reading the PDF's own text layer. A scanned or image-only PDF has no text layer to read, and is refused rather than guessed at — there is no OCR.
Review what was found
Extracted fields sit beside the rendered page, each with a confidence status — Extracted, Check this, Missing or Invalid — and the verbatim text it was read from. You correct anything wrong; nothing is asserted until you confirm it.
Fix, validate and download
Arithmetic findings, such as a total that doesn't add up, are rebuilt in one click. When the validation report is clean, download the UBL XML for your target profile plus the report itself.
Peppol and UBL profiles it writes
Three EN 16931 profiles, suggested from the seller's country and changeable at any time.
Peppol BIS Billing 3.0
Suggested forMost of the EU
Rule familyPEPPOL-EN16931-R*
What it addsThe Peppol business process and electronic address rules — the format Belgium's mandate points to.
XRechnung 3.0 (UBL)
Suggested forGermany
Rule familyBR-DE-*
What it addsThe German public- and private-sector standard, including the BR-DE rules and the Leitweg-ID carried in the buyer reference.
EN 16931 (UBL 2.1)
Suggested forA buyer asking for the plain core model
Rule familyBR-* BR-CO-*
What it addsThe plain European core model, for a buyer whose system asks for EN 16931-compliant UBL without a national or Peppol extension.
Built for the person who was just asked. Freelancers and sole traders, small and mid-sized businesses, accountants and bookkeepers, and finance teams handling occasional volume — not a department already running an ERP with e-invoicing built in.
What this converter cannot do
Stated plainly, because a tool that overstates itself is worse than no tool.
It cannot read a scanned or image-only PDF
Without a text layer there is nothing to extract, and this tool does not add OCR to work around that. If your invoice is a scan, you'll need to enter its fields yourself or source the original file.
20 MB per file
A PDF larger than that is rejected before it is parsed.
It never generates a file without your review
The extractor proposes a value; only a value confirmed on the review screen is written into the XML. Nothing is defaulted in to make a validator pass — an absent field is reported as missing, not filled in.
It does not send the invoice anywhere
E-Invoice Converter is not connected to Peppol or any access point. You download the UBL XML and the validation report, and send them through whatever channel your customer or access point requires.
Privacy
The invoice never leaves your browser
An invoice carries customer names, bank details and VAT identifiers. E-Invoice Converter reads the PDF and builds the XML entirely on your device, and neither one is sent anywhere.
The PDF's text layer is read in your browser, and the XML is built there too. Neither is ever sent to a server, because no code on this page sends it. This page is served with a content-security policy that lets the page itself reach only our own origin, Cloudflare's two analytics hostnames and the host the demo video's player is loaded from once you press play. Our policy stops at that frame: what the player loads inside it is YouTube's, not ours to govern or count. Nothing from your invoice is in any of it.
There is no OCR, deliberately. The converter reads only the text a PDF already carries; recognising characters in a scanned image is guesswork, and a guessed IBAN or amount is worse than none.
E-Invoice Converter does not transmit the finished invoice to Peppol, an access point, or any other network. It produces the UBL XML file; delivering it is your own channel.
No account and no sign-in are needed to convert an invoice, and there is no cookie banner — the only cookie we set holds a language code and nothing else.
Before you convert anything
The four things people ask first. The rest have their own page.
More questions
Questions about converting a PDF invoice
Five more questions and three worked conversions, with the validation rule reference linked.
Read the questions page- What is E-Invoice Converter?
- A tool that reads a PDF invoice's own text layer, lets you check and correct the extracted fields against the source, validates the result against EN 16931 and your target profile's rules, and generates Peppol BIS 3.0, XRechnung 3.0 or EN 16931 UBL XML.
- Does it use AI to read the invoice?
- No. Extraction is deterministic rules over the PDF's text layer — label matching, check digits, table geometry — not a language model guessing at values. That is also why every field is reviewed before anything is generated: the tool proposes, you confirm.
- Is my invoice uploaded anywhere?
- No. The PDF is read and the XML is built in your browser, and neither is ever sent, because no code on this page sends it — that is what our code does, not something the browser enforces. What the browser enforces is reach: the page's content-security policy lets the page itself contact only our own origin, Cloudflare's two analytics hostnames and the host the demo video's player is loaded from once you press play. Our policy stops at that frame: what the player loads inside it is YouTube's, not ours to govern or count. E-Invoice Converter does not transmit the result to Peppol or any access point either — you download it and send it yourself.
- Which profile should I choose?
- E-Invoice Converter suggests one from the seller's country — Peppol BIS 3.0 for most of the EU, XRechnung 3.0 for Germany. You can change it at any time; ask your customer which one their system expects if you're unsure.
Your customer asked for a structured invoice. Send them one.
No account, nothing uploaded — parsing runs in your browser. Needs a text-layer PDF; a scanned invoice can't be read this way.