Commercial invoice
Seller, buyer, invoice number and date, currency, incoterms, country of origin, and one line per item: description, quantity, unit price, amount. Plus subtotal, freight, insurance and total.
Document type · Commercial invoices
FlowDocs reads commercial invoices and returns the fields you named, one row per line item, with amounts normalised to plain decimal numbers and dates to YYYY-MM-DD. Export as CSV, as a real Excel workbook, or have each finished job posted as signed JSON to your own endpoint.
Real doc types, real fields — configured per template. No hardcoded parser per carrier.
Seller, buyer, invoice number and date, currency, incoterms, country of origin, and one line per item: description, quantity, unit price, amount. Plus subtotal, freight, insurance and total.
Same shape, issued before shipment. Useful where the customs entry is prepared ahead of the final document.
Carries the valuation detail an entry needs — HS or commodity code per line, country of origin, incoterms and the basis of value.
The carrier’s or forwarder’s own charges: ocean or air freight, THC, bunker adjustment, documentation and handling, each as its own line.
One document carrying both the commercial values and the package detail. Define one template with the fields from both halves.
References the original invoice number and reverses lines from it. The same fields apply; the amounts are negative.
These are the recurring items ops teams name when we ask what takes their time on freight paperwork.
An invoice is a table, not a header — every line carries its own description, quantity, unit price and amount, and all of them get typed.
Amounts arrive in whatever convention the seller’s country uses: 1.234,56 and 1,234.56 are the same money, and a spreadsheet silently reads one of them as text.
Dates arrive as 05/06/2026 with nothing on the page to say which number is the month.
The same invoice is needed twice for two purposes — customs valuation and accounts payable — so it is often keyed twice by two teams.
Suppliers redesign their invoice template without telling anyone, and a position-based reader breaks the next morning.
Built for commercial invoices
Mark a field as a number or currency and FlowDocs strips the symbol and the grouping before you ever see it. $23,940.00 arrives as 23940.00; the European 1.234,56 arrives as 1234.56; the Swiss 159’911.77 arrives as 159911.77. A spreadsheet sums them without anyone reformatting a column.
Mark a field as a date and 11-Aug-2025 and 2025/8/11 both arrive as 2025-08-11. Where a format is genuinely ambiguous and FlowDocs cannot tell the day from the month, it returns what was on the document untouched rather than guessing at it.
An invoice with fourteen lines returns fourteen rows. Every row names the file it came from and its line number within that file, so a batch of invoices reconciles back to its documents without anyone tracking it by hand.
The CSV header, the Excel header and the JSON keys are the field names from your own template, in the order you defined them. FlowDocs adds exactly two of its own ahead of them: source_document and row.
The model reports how certain it was about each field. That number is stored with the value and shown beside it in the results table. A dash means the field was not found on that invoice. Nothing is withheld on the strength of a score — every row exports either way.
Export as CSV or as a real .xlsx workbook — an actual spreadsheet file, not a renamed CSV — or have FlowDocs POST each finished job as signed JSON to a URL you control. There is no accounting or TMS connector; the import into your own system stays yours.
Line items. You get one row per line, not one row per invoice — an invoice with fourteen lines returns fourteen rows, each with its own description, quantity, unit price and amount. Header fields such as seller, buyer, invoice number and currency are part of the same template and repeat on each row, so every row stands on its own.
Mark the field as a number or a currency and FlowDocs normalises it before you see it: the currency symbol and the thousands grouping are removed and the decimal separator is made a point. $23,940.00 becomes 23940.00, the European 1.234,56 becomes 1234.56, and the Swiss 159’911.77 becomes 159911.77. The result is a plain decimal a spreadsheet can sum.
Mark the field as a date and recognised formats are returned as YYYY-MM-DD — 11-Aug-2025 and 2025/8/11 both become 2025-08-11. Where the format is genuinely ambiguous and the day cannot be told from the month, FlowDocs returns the text exactly as it appeared on the document rather than guessing, so a wrong date is never invented.
Yes. FlowDocs first tries to read the text embedded in the PDF. When a document yields almost no readable text — the normal case for a scan or a photograph — it automatically falls back to OCR before extracting fields. Invoices sent as JPEG or PNG images go straight to OCR.
The same template keeps working. FlowDocs sends the document’s text and your field names to the model and asks for a value for each field, so nothing is anchored to a position on the page. A redesigned invoice that still contains the field still yields the field.
Every extracted value carries the model’s confidence for that specific field, stored with the value and shown beside it in the results table, and a dash marks any field that was not found on the invoice. FlowDocs does not hold rows back, route them anywhere, or block an export on the strength of a score — the whole extraction is there to be read and exports either way.
Not directly — there is no accounting connector and FlowDocs does not write into another system. It gives you the data in three shapes: a CSV, a real Excel workbook, and signed JSON posted to an endpoint you control as each job finishes. The import into your own system is the step you keep.
Three ways: upload them in the app, POST them to the API with a key, or forward the supplier’s email to an address FlowDocs gives your automation — the attachment on a forwarded email is read and extracted without anyone opening the app. A job can carry up to 50 documents, each up to 25 MB and 300 pages.
No signup, no call. Send one document and we’ll return clean, structured data within a day.
You can delete or paste over the names, values and routes first — the extraction still runs on whatever is left. Use a tool that removes the text rather than a black box drawn on top: a drawn box hides it from you, not from a parser.
Send a redacted document