Supplier invoices

Invoice automation,
reconciliation included

RIV4 reads supplier invoices in any format — PDF, scan or XML — and pulls out the order and delivery-note references even when they are buried in free text. Your ERP receives data it can reconcile on its own.

  • Any layout, no templates
  • PDF and XML e-invoices
  • References normalised for your ERP
Step 1 · Invoice as received Step 2 · Structured output
ACME FORNITURE S.R.L. Via Corsico 14 — 20144 Milano VAT IT01234567890
INVOICE
No. 2026/1147
Date 12/03/2026
Bill to RIV4 CLIENT S.P.A.
Via Trieste 8, 34121 Trieste (TS)
DescriptionQtyPriceAmount
Aluminium profile 40x401207,40888,00
Galvanised bracket603,10186,00
Stainless bolts M84000,2288,00
Net1.162,00
VAT 22%255,64
Total1.417,64
Ref. your order ORD-4471 — our delivery note 1180 of 12/03
Payment 60 days end of month — IBAN IT60 X054 2811 1010 0000 0123 456
{ "invoice_no": "2026/1147", "date": "2026-03-12", "supplier": "ACME Forniture", "vat_id": "IT01234567890", "currency": "EUR", "net": 1162.00, "vat": 255.64, "total": 1417.64, "lines": 3, "references": { "order": "ORD-4471", "delivery_note": "1180", "dn_date": "2026-03-12", "found_in": "free text" }}

Typing it in takes minutes.
Matching it takes the afternoon.

As-is process

Everybody measures invoice processing by how long it takes to key the header in. That is the smallest part of the job: the hours go into finding which order and which delivery note that invoice belongs to. An invoice that cannot be reconciled automatically is an invoice that lands on somebody's desk — no matter how clean the data capture was.

Accounts payable desk: a stack of supplier invoices, the ERP exception queue on screen, order and delivery-note references highlighted by hand
Data entry is the cost you can see. Reconciliation is the cost you pay.
01
It arrives
Email, PEC, supplier portal, paper, or an XML file downloaded from the tax portal. Four channels, one inbox to empty.
Minimal
02
Someone reads and types
Header, totals, VAT rates, then the line items one by one. Every supplier puts them somewhere else on the page.
The part everybody counts
03
The reference hunt
Which order is this? Which delivery note? The number is somewhere on the document — in the causal, in a line description, in a stamp — just not in a field anything can read.
Invisible in every report
04
The manual match
Invoice against order against delivery note, line by line, quantity by quantity, price by price — and a phone call to the supplier when a number does not add up.
The real cost of the process

Two kinds of invoice.
The same broken match.

PDF & XML

A paper or PDF invoice and an electronic XML invoice fail for opposite reasons. One has the information in plain sight but in a place no software can predict. The other has it in a machine-readable file — in the wrong element. Both end up on the same desk.

PDF, scan, paper
The layout is the problem
Problem 01
Every supplier, a different page
Invoice number top right, bottom left, or inside a logo block. A hundred suppliers is a hundred layouts — and a template breaks the day one of them redesigns its stationery.
Problem 02
The references are prose
"Ref. your order 4471 — d/n 1180" written in a free-text block, a stamp, or a note in the margin. Clear to a person, invisible to the ERP.
Problem 03
Quality is whatever arrives
Skewed scans, photographed pages, tables breaking across sheets, foreign languages and currencies. All of it normal, none of it optional.
Electronic invoice (XML)
The structure is the problem
Problem 01
Valid, and still unusable
The file passes every format check and carries the amounts correctly. That says nothing about whether the order number is in the element the ERP reads.
Problem 02
The reference in the wrong element
The supplier's software parks your order number in the free-text causal, or inside a line description. The data is in the file — just not where anything looks for it.
Problem 03
So the match never fires
No order reference means no link to the delivery note or the purchase order. The invoice goes to the exception queue, and somebody opens the XML by hand.
RIV4 One pipeline, both formats
Into your ERP, ready to reconcile
Normalised output
Header and totals
Line items
Order reference
Delivery-note reference
RIV4 isolates the references wherever they were hiding and hands them over in a single standard format, in the field the ERP actually reads. The match then closes on its own — and only the genuine discrepancies reach a person.

Every supplier,
a different page

PDF & scans

The same five values, in five different places, on every invoice you receive. Template-based capture works until the eleventh supplier — and breaks again the day one of the first ten changes its stationery. RIV4 reads the document the way a person does: by understanding what a field means, not by remembering where it sat last time.

What makes a PDF invoice hard

  • References written as prose: "ref. your order", "as per d/n", a job code inside the description of a single line.
  • Line-item tables with different columns, in a different order, continuing onto the next page.
  • Stamps, handwriting and skewed scans instead of clean digital PDFs.
  • Foreign languages, foreign currencies and several VAT rates on the same document.
Supplier invoices from different vendors, each with its own layout
Supplier A
Invoice no. Date Order ref. Delivery note Total
Supplier B
Invoice no. Date Order ref. Delivery note Total
Supplier C
Invoice no. Date Order ref. Delivery note Total
Supplier D
Invoice no. Date Order ref. Delivery note Total
No template per supplier. Nothing to train per vendor. A supplier RIV4 has never seen is processed exactly like one it has seen a thousand times — so onboarding a new vendor costs nothing, and a redesigned invoice does not break anything at two in the morning.

The reference is in the file.
Just not where your ERP looks.

Electronic invoices

An electronic invoice can be perfectly valid and still impossible to reconcile automatically. The format says where the order and delivery-note references may go; it does not force the supplier to put them there. Four real cases, one invoice, the same two references — and four different outcomes in your ERP.

Invoice XML — supplier A
<DatiGenerali>
  <DatiOrdineAcquisto>
    <IdDocumento>ORD-4471</IdDocumento>
  </DatiOrdineAcquisto>
  <DatiDDT>
    <NumeroDDT>1180</NumeroDDT>
    <DataDDT>2026-03-12</DataDDT>
  </DatiDDT>
</DatiGenerali>
RIV4 output
Order · ORD-4471
Delivery note · 1180
Delivery date · 12/03/2026
Read from the dedicated order and delivery-note fields.
Your ERP reconciles on its ownThis is the case everybody assumes is the norm. In practice it is a minority of the invoices you receive.
Invoice XML — supplier B
<DatiGeneraliDocumento>
  <Numero>2026/1147</Numero>
  <Causale>Rif. Vs. ordine ORD-4471 - ns. DDT 1180 del 12/03</Causale>
</DatiGeneraliDocumento>

<!-- DatiOrdineAcquisto: assente -->
<!-- DatiDDT: assente -->
RIV4 output
Order · ORD-4471
Delivery note · 1180
Delivery date · 12/03/2026
Read from free text, then normalised into the reference fields.
Your ERP finds nothingThe causal is a free-text note. The numbers are right there, and no reconciliation rule can reach them.
Invoice XML — supplier C
<DettaglioLinee>
  <NumeroLinea>1</NumeroLinea>
  <Descrizione>Aluminium profile 40x40 - ord. 4471 / d.n. 1180</Descrizione>
  <Quantita>120.00</Quantita>
  <PrezzoUnitario>7.40</PrezzoUnitario>
</DettaglioLinee>

<!-- riferimenti a livello documento: assenti -->
RIV4 output
Order · ORD-4471
Delivery note · 1180
Reference level · line 1
Read from the line description, and kept attached to the line it belongs to.
Your ERP finds nothingThe reference is inside the text of a single line — and on a twelve-line invoice, only some of those lines carry one.
Invoice XML — supplier D
<DatiGenerali>
  <DatiOrdineAcquisto>
    <IdDocumento>ORD-4471</IdDocumento>
  </DatiOrdineAcquisto>
  <DatiGeneraliDocumento>
    <Causale>Merce resa franco ns. magazzino - bolla 1180</Causale>
  </DatiGeneraliDocumento>
</DatiGenerali>

<!-- DatiDDT: assente -->
RIV4 output
Order · ORD-4471
Delivery note · 1180
Wording normalised · bolla ’ DDT
Order from its own field, delivery note recovered from the causal and standardised.
Half a match, which is no matchThe order links, the delivery note does not. The invoice still stops in the exception queue and still needs a person.
The output panel never changes. That is the whole point: whatever the supplier's software decided to do with your reference, RIV4 returns it in one standard shape, in the field your ERP reads — so reconciliation stops depending on the goodwill of a hundred different accounting systems.

From the inbox
to the ledger

How it works

Five steps, the same five for a scanned PDF and for an XML file. Nothing changes upstream, and your accounting system stays the system of record.

Step 01
Capture
Monitored folder, email, API, or the XML files you already download. No new habit for anyone.
Step 02
Read
Header, totals, VAT and every line item — any layout, any language, no per-supplier template.
Step 03
Find the references
Order, delivery note, contract, cost centre — wherever they are written, including free text.
Step 04
Normalise and check
One standard format, totals and VAT verified, anything uncertain flagged instead of guessed.
Step 05
Deliver
Into your ERP by API, connector or file — each reference in the field it reads to reconcile.
Reads, validates, normalises
+
Your ERP
Posts, approves, pays
=
The match closes by itself
Only the real discrepancies reach a person

What comes out

Extracted fields

Every field on the document, structured and typed, whether it started life as a scan or as an XML file. Line items stay attached to their own line, and each value carries a confidence score so your rules can decide what deserves a human glance.

The group that decides everything
References
  • Purchase order no.
  • Order line
  • Delivery note no.
  • Delivery note date
  • Contract
  • Job / project code
  • Cost centre
  • CIG / CUP
  • Supplier reference
These are the fields nobody advertises and everybody needs. Extracted wherever they are written — dedicated field, free text, line description, stamp — then normalised into one format and written where the ERP reads them.
Document
Header
  • Invoice number
  • Issue date
  • Due date
  • Document type
  • Credit note
  • Currency
  • Page count
Parties
Supplier and customer
  • Supplier name
  • VAT number
  • Tax code
  • Address
  • IBAN
  • Customer details
  • Ship-to site
Amounts
Totals and VAT
  • Taxable per rate
  • VAT rate
  • VAT amount
  • Withholding
  • Stamp duty
  • Discounts
  • Grand total
  • Payment terms
Line items
Every row, in its own right
  • Description
  • Supplier item code
  • Your item code
  • Quantity
  • Unit of measure
  • Unit price
  • Line discount
  • Line total
  • VAT rate per line
  • Per-line references
Multi-page invoices are handled as one document: a table that continues on the next sheet stays one table, and the lines keep their order.
Every value
Confidence score
  • Per-field score
  • Position on the page
  • Source element
  • Review flag
Uncertain values are proposed for review, not silently guessed.

What changes
once it is running

Numbers

Figures measured on RIV4 projects in production, across delivery notes, orders, expense receipts and invoices.

80%
Handling time per document
What used to be read, typed and cross-checked by hand comes back structured and already referenced.
<1%
Error rate on extracted data
And what the system is unsure about is flagged rather than guessed, so the residual error is visible.
25 €
What a manual document costs today
The usual internal cost of handling one document by hand — the baseline every business case starts from.
10M+
Documents processed a year
Volume running on the RIV4 platform, in production, across all document types.

Your own numbers will differ: they depend on how many suppliers you have, how many of them put the references where they belong, and how deep the reconciliation goes. We size it on a real sample of your invoices before anything is signed.

THE REFERENCES LAND WHERE THE MATCH HAPPENS

Integration

is not an accounts-payable suite and does not replace your accounting software. It produces validated invoice data and delivers it into the fields your ERP already uses to reconcile.

It works with your ERP

Data arrives through native APIs, connectors or middleware — the same integration model already running on SAP, Business Central, Zucchetti and TeamSystem environments.

In the format you need

Structured files to import, analytical exports for reporting, or a REST API your own team can call directly.

It reads from your master data

Suppliers, cost centres, jobs and item codes are read from your systems, so every invoice comes back coded the way you code it.

Secure by design

SSO authentication, dedicated API credentials and GDPR-compliant processing, with data held in the EU.

Any language, any currency

Invoices in any language and any currency are read from day one: nothing to configure when you add a country or a foreign supplier.

One platform, every document

Invoices run on the same engine as delivery notes, orders and expense receipts — which is what makes invoice, order and delivery note meet in the first place.

SAP
Microsoft Dynamics 365 Business Central
Zucchetti
TeamSystem
Sage
Infor
Odoo
Oracle NetSuite

…and any ERP, accounting package or AP system that exposes an API or a supported integration layer.

Where this pays
for itself fastest

Applicability

Invoice volume matters less than supplier variety and how far the reference has to travel before it meets the order. These are the situations where both are high.

A long tail of suppliers
Twenty suppliers you know by heart and three hundred you do not, each with its own layout and its own idea of where a reference belongs. The tail is where the manual work concentrates.
Distribution and wholesale
High volumes, thin margins and a match that has to hold line by line. A price difference of a few cents per unit only shows up if somebody compares the invoice with the order.
Manufacturing
Raw materials and subcontracting invoiced against orders and delivery notes, with cost that has to land on the right job before the month closes.
Construction and field services
Invoices tied to sites, jobs and work reports, where the reference that matters is a job code written by hand on a delivery note two months ago.
Multi-site organisations
The invoice arrives at head office, the goods were received at a branch four hundred kilometres away and the delivery note was signed by someone who is not in accounting.
Shared service centres and accounting firms
Dozens of client companies, dozens of chart-of-account conventions, one team keying it all in. The variety here is not the suppliers — it is the clients.

SEND US TEN OF YOUR WORST INVOICES. WE WILL SHOW YOU WHAT COMES OUT

Book a demo

FAQ

Everything worth knowing about invoice automation

Common questions on automated invoice data capture, electronic invoices and reconciliation with RIV4.

  • Invoice processing automation uses AI to read supplier invoices — a PDF, a scan, a photograph or an XML file — and turn them into structured data: header, totals, VAT, line items and, above all, the references that connect the invoice to a purchase order and a delivery note. Instead of somebody keying the document in and then hunting for the order it belongs to, the data arrives already extracted, normalised and ready for the ERP to reconcile.

  • Yes. There is no template per supplier and no training set per vendor: RIV4 recognises what a field means rather than remembering where it sat on the page. A supplier invoicing you for the first time is processed exactly like one you have received a thousand invoices from, and a supplier that redesigns its invoice does not break anything.

  • Because structured is not the same as usable. An XML invoice can be perfectly valid and still carry your order number inside a free-text causal, or your delivery-note number inside the description of one line, instead of in the fields meant for them. The ERP looks in the dedicated elements, finds them empty and parks the invoice as an exception. RIV4 reads the reference wherever the supplier put it and returns it in the element your system actually reads.

  • Four places, in practice. In the dedicated purchase-order and delivery-note elements, which is the case everyone assumes is normal. In the document causal, as free text ("ref. your order 4471 — d/n 1180"). Inside the description of a single line item. Or split: the order in its own field and the delivery note only mentioned in prose. The first case reconciles by itself; the other three all stop at a person, which is why so much of the promised saving from e-invoicing never materialised.

  • RIV4 is the document layer that makes the match possible: it extracts and normalises the references — purchase order, delivery note, contract, job, cost centre — and delivers them in the fields your ERP uses to reconcile, so the matching rules you already have can close automatically. The match itself stays where your controls live, in the ERP. Where a project calls for it, comparison and discrepancy flagging can be handled upstream too; that is scoped case by case.

  • The way they already reach you. A monitored folder, an email box, an API call, or the XML files you download from your tax portal or your provider and make available to RIV4. Nothing changes for your suppliers, and nobody has to log into a new portal.

  • Yes. Document type is recognised, so a credit note is not treated as an invoice. Taxable amounts and VAT are separated per rate, including documents that mix several rates on the same page. Invoices in other languages and currencies are read without any country-specific configuration, keeping both the original and the converted value. How that VAT is then treated for deduction stays with your accounting system and your advisers.

  • No. RIV4 does not post entries, does not approve and does not pay. It sits in front of the system you already run: it reads, validates and structures the document, then hands it over through an API, a connector or a structured export. Your ERP stays the system of record; what changes is that it finally receives invoices it can reconcile on its own.

  • Because there is no training set and no per-supplier template, most teams are in production within a few weeks. The variable is not teaching the system to read invoices — it is connecting to the ERP and agreeing how references, cost centres and item codes should be mapped. We size it on a real sample of your own invoices before anything is committed.