Turn delivery notes, goods received notes, and consignment notes into structured JSON. Supplier, order reference, carrier, and a line-by-line comparison of what was ordered against what actually arrived - typed and ready for three-way matching. Reads signed and photographed copies.
Send the delivery note and a schema. Each line comes back with both the ordered and the delivered quantity, plus who signed for the goods and anything written on the note at the door.
curl -X POST \
https://api-parse.conversiontools.io/v1/extract \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@delivery-note.jpg" \
-F 'schema={
"delivery_note_number": "string",
"order_reference": "string",
"supplier": "string",
"delivery_address": "string",
"delivery_date": "string",
"carrier": "string",
"items": [{
"sku": "string",
"description": "string",
"quantity_ordered": "number",
"quantity_delivered": "number",
"unit": "string"
}],
"received_by": "string",
"signature_present": "boolean",
"discrepancy_notes": "string"
}'{
"status": "completed",
"pages": 1,
"data": {
"delivery_note_number": "DN-2026-04471",
"order_reference": "PO-77219",
"supplier": "Thornhill Components",
"delivery_address": "Unit 7, Fenwick Industrial Park, Leeds",
"delivery_date": "2026-08-03",
"carrier": "Redmoor Freight",
"items": [
{
"sku": "TC-9021",
"description": "Bearing housing, 40mm",
"quantity_ordered": 500,
"quantity_delivered": 500,
"unit": "pcs"
},
{
"sku": "TC-9044",
"description": "Drive shaft, short",
"quantity_ordered": 120,
"quantity_delivered": 112,
"unit": "pcs"
}
],
"received_by": "M. Okafor",
"signature_present": true,
"discrepancy_notes": "8 units short on TC-9044, one carton damaged"
}
}The delivery note is the only document that says what actually arrived. Everything else gets matched against it.
Both quantities land on the same line, so a short delivery or an over-shipment becomes a subtraction rather than a phone call. That gap is exactly what holds an invoice back from payment.
Delivery notes come back from the loading bay as a phone photo or a crooked scan with a signature across the bottom. OCR is applied automatically, and a signature flag tells you whether the copy was actually signed.
The most useful line on a delivery note is often added by hand after printing: two cartons damaged, one pallet refused. Give it a field and those notes come back with the rest of the document instead of being retyped later.
Yes. Delivery notes, goods received notes, and consignment notes carry the same core information under different names and layouts. Extraction is driven by the schema you send rather than a per-form template, so one schema covers the whole family.
Yes. Add a boolean field such as signature_present and it comes back true or false depending on whether a signature appears on the copy. Pair it with received_by to capture the printed name next to it.
Both values are returned on the same item line, so the difference is a subtraction on your side. That mismatch is the precise signal a three-way match needs before an invoice is released for payment.
Yes. OCR is applied automatically to photographed and scanned notes, including shots taken at an angle or in poor light. Fields are located by what they mean on the document, not by fixed coordinates, so a phone photo behaves like a clean PDF.
Uploaded documents are deleted automatically within 24 hours. Extracted data is encrypted in transit and at rest and is never used to train models.
The same schema-driven API works across every document type. Define a schema once, extract from thousands of files.
Extract structured JSON from any document with custom schemas.
Parse any PDF into structured JSON, scanned or digital.
Vendor, line items, totals, tax, and dates from invoices.
Store, items, totals, and payment method from receipts.
PO number, vendor, buyer, and SKU-level line items.
Transactions, running balances, and dates for reconciliation.
Box-level data from W-2, 1099, and other tax forms.
Parties, dates, governing law, and key clauses.
Carrier, parties, ports, containers, and cargo.
Credit amounts matched back to the original invoice.
Payments split across invoices for cash application.
Meter readings, charges, and totals from any provider.
Line items and periods from balance sheets and reports.
Vendor quotes in one shape so you can compare them.
Earnings, deductions, taxes, and year-to-date totals.
Experience, education, and skills from any CV layout.
Fields and MRZ from passports and ID cards.
Rent, term, deposits, and renewal deadlines.
Claim and policy numbers, dates, and claimed amounts.
Packages and SKU-level lines for receiving.
Free tier covers your first 100 pages a month. No credit card to start.