# Turn a scanned PDF into any e-invoice

Bring a scanned PDF, a photo of the invoice, or an e-invoice you already have. Browser OCR fills the form; check the fields, then download it as XRechnung, ZUGFeRD, Peppol, FatturaPA, Facturae, KSeF or plain EN 16931.

Source: https://tally-stick.com/pdf-to-xrechnung

## How it works

Drop a scanned or text PDF invoice, or a photo of one, onto the page. Browser OCR reads scans and photos locally in this tab and fills the same form as Create XRechnung. An e-invoice you already have goes on the same page: drop the XML, or a ZUGFeRD or Factur-X PDF, and the fields are read from it rather than guessed at. The invoice file is not sent away.

Check every field before you download. Totals are recomputed from the line items. A missing field the standard requires blocks the download and is listed, not filled in for you.

`Download e-invoice` asks for the format at the moment of writing: XRechnung, Peppol BIS, NLCIUS or plain EN 16931 as UBL, ZUGFeRD or Factur-X as CII, and the national formats FatturaPA, Facturae and KSeF FA(3). Each choice is measured against what was read and names the fields it still needs. `Download ZUGFeRD PDF` writes a readable PDF/A-3B carrying the same invoice as `factur-x.xml`.

## What is checked before anything is written

The download is refused when a field EN 16931 treats as mandatory is absent: invoice number, issue date, document type, currency, buyer reference or Leitweg-ID, seller and buyer name, street, city, postcode and country, an electronic address for each party, at least one line, a positive quantity, a description and a unit per line, and a VAT rate inside 0 to 100. Totals are computed from the lines.

## Common questions

### What comes out?

Any e-invoice format this site writes: XRechnung 3.0, Peppol BIS, NLCIUS or plain EN 16931 in UBL 2.1, ZUGFeRD or Factur-X in CII, FatturaPA, Facturae, KSeF FA(3), and optionally a ZUGFeRD PDF that carries the same data inside a readable invoice.

### The fields look wrong.

Edit them. The form is the invoice. Nothing is written until you press download.

### Can it read a scanned or photographed invoice?

It is read by text recognition, which also runs in this tab. A scan and a photo from your phone take the same road. How much it gets right depends on the picture, so check every field before you download. Dropping the file makes the page fetch two open-source libraries, pdf.js and Tesseract.js, from the jsDelivr CDN; the invoice itself stays here. The [privacy page](https://tally-stick.com/privacy) says exactly what that fetch reveals.

### I already have a spreadsheet.

Use [Excel to XRechnung](https://tally-stick.com/excel-to-xrechnung).

### Do I need an account?

No. There is no sign-up. Free under the site's fair usage limit.

## Related tools

- [XRechnung to PDF](https://tally-stick.com/xrechnung-to-pdf)
- [XRechnung to Excel](https://tally-stick.com/xrechnung-to-excel)
- [Excel to XRechnung](https://tally-stick.com/excel-to-xrechnung)
- [Create XRechnung](https://tally-stick.com/create-xrechnung)
