Invoice parser

Invoices in. Clean JSON out.

Upload a PDF, a scan or a phone photo, forward it by e-mail or send it to the API. Parsevix reads the invoice in the language it is written in and returns supplier, customer, dates, line items and totals as structured data.

  • Line items across page breaks, up to 30 pages
  • Digital PDFs, scans and photos in many languages
  • Personal data masked automatically before the AI step

No credit card · 20 free pages every month

What you get back

Every field an invoice carries, already defined.

The built-in Invoice category returns 25 fields in five groups, with the line items as a table. Use it as it is, or change it in your project: add the fields your bookkeeping needs and remove the ones it doesn't.

Dates come back as ISO dates and amounts as plain numbers, however the invoice prints them. A field the invoice doesn't contain is left out, not guessed.

Seller

seller_infoobject

  • namestring
  • addressstring
  • phonestring
  • tax_idstring
  • emailstring

Buyer

buyer_infoobject

  • buyer_namestring
  • buyer_addressstring
  • buyer_phonestring
  • buyer_tax_idstring

Invoice details

invoice_detailsobject

  • invoice_numberstring
  • invoice_datedate
  • due_datedate
  • currencystring
  • po_numberstring
  • termsstring

Line items

line_itemsarray

  • descriptionstring
  • quantitynumber
  • unit_pricenumber
  • amountnumber
  • item_currencystring
  • item_taxnumber

Totals

totalsobject

  • subtotalnumber
  • tax_amountnumber
  • shippingnumber
  • total_duenumber

Your own fields

A name, a type and one sentence on what it is.

  • iban
  • cost_center
  • order_number
  • delivery_date

Made for real invoices

The cases that usually go wrong.

Supplier invoices are rarely tidy. These are the cases Parsevix is built and tested for, with invoices in eleven languages, digital and scanned.

01

Long invoices, read as one document

An invoice of up to 30 pages goes to the AI model in one piece. Line items that run over a page break stay in one list, a subtotal carried forward to the next page is not taken for the total, and a letterhead printed on every page counts once.

  • 02

    Scans and phone photos

    Every page is read as an image, born-digital PDFs included, so text outside the PDF's text layer, such as a stamp, is read too. Sideways and upside-down scans are turned upright first.

  • 03

    Any language, the same fields

    The language is detected on every page. A French, Polish or Japanese invoice fills the same fields as an English one, so your import never has to change.

  • 04

    Numbers ready to import

    03.10.2026, 3 October 2026 and 2026年10月3日 all come back as 2026-10-03; 1.234,56 and 1,234.56 both as 1234.56. The currency is a field of its own.

  • 05

    Every value linked to the page

    Each value comes with the page and the box it was printed in. Click it in the dashboard and the page shows where it came from; the API returns the same boxes.

  • 06

    Mixed mail sorted first

    Send invoices, receipts and contracts to the same address or endpoint. Parsevix picks each document's category at no extra cost and extracts the fields that category asks for.

  • 07

    No template per supplier

    There are no zones to draw and no rules to maintain. An invoice from a supplier you have never seen before is read like every other one.

How invoices get in

Upload them, mail them or send them from your code.

Dashboard

Drop in a batch of invoices. Check each result next to its page, with every value marked where it was printed, then approve it.

E-mail address

Paid plans

Every project gets its own address. Forward supplier invoices to it, or let a rule in your mailbox do it: each attachment becomes a document.

API

One request with the file returns the JSON in the same response. Results can also go out by signed webhook, or through Zapier to thousands of apps.

Request

curl https://parsevix.com/api/v1/extract \
  -H "X-API-Key: $PARSEVIX_API_KEY" \
  -F file=@invoice.pdf \
  -F category="Invoice"

The request stays open until the document is read and answers with the JSON.

  • POST /documentsUpload without waiting; the result arrives by webhook or callback.
  • POST /extract-autoNo category: every field Parsevix finds, named as in the document.
  • POST /classifyOnly the document's category, for 1 credit.
Full API reference

Response · trimmed

{
"status": "Completed",
"category": "Invoice",
"pageCount": 1,
"language": "en",
"extracted": {
"invoice_details": {
"invoice_number": "F-2026-88343",
"invoice_date": "2026-10-03",
"currency": "GBP",
"terms": "Bank transfer within 14 days"
},
"totals": {
"total_due": 7848.88
},
…
},
…
}

Security & compliance

  • PII maskedautomatically, before the AI step
  • Encryptedin transit and at rest
  • No AI trainingon your documents
  • API files deletedafter processing

Priced per page, not per feature.

Every plan reads, sorts and masks documents the same way. Picking the category is included, and a document that fails costs nothing.

See pricing
credit per page
1
free pages every month
20
a month for 500 pages
$39

Invoice FAQ

Invoices,
answered.

What teams ask before they send their first supplier invoice.

Still have a question?

Write to us. A person reads every message.

PDF, Word (DOCX), PNG, JPG and TIFF, up to 10 MB and 30 pages each. Scans and phone photos work too, and a multi-page TIFF from a scanner is read page by page.

Yes. Change the category in your project and add the fields you need, such as the IBAN, a cost centre or an order number. You can also create a category of your own, or let Parsevix pull out every field it finds without a schema.

Open the document in the dashboard: every value is linked to the spot on the page it came from. If a value is wrong, reject the document with a reason or run it again. A field the invoice doesn't contain stays empty instead of being guessed.

One credit per page: a three-page invoice uses three. Choosing the category is included, and if a document fails, its credits are given back.

Through the REST API, which returns the data in the same response; by signed webhook to your own endpoint; or through Zapier, which connects to spreadsheets and accounting apps without code.

Invoices uploaded in the dashboard or sent by e-mail stay in your project until you delete them. Files sent through the API are deleted after processing unless you turn on keeping them for the project. Your invoices are never used to train AI.