AI-powered document parsing that understands your data. Upload a PDF, get structured data back as JSON, CSV, or Excel.
================================
TRADER JOE'S #502
1800 N Vermont Ave
Los Angeles, CA 90027
================================
02/20/2026 3:42 PM Reg: 03
Cashier: MARIA #4821
--------------------------------
ORG BANANAS 0.99
WHOLE MILK 1GAL 4.29
SOURDOUGH BREAD 4.49
EVERYTHING BAGELS 3.99
SPARKLING WATER 1.29
OLIVE OIL 500ML 6.99
PENNE PASTA 1.29
CRUSHED TOMATOES 1.99
--------------------------------
SUBTOTAL 25.32
TAX 9.5% 2.41
TOTAL 27.73
VISA ***4829 27.73
--------------------------------
THANK YOU FOR SHOPPING
AT TRADER JOE'S!
================================Try with your own document
Click to upload or drag and drop - no signup needed
No credit card required · 100 pages/month free
The async contract
Extraction does not hold your request open. Parse answers straight away with an id, reads the document in the background, and hands back structured JSON when it is ready. Here is one sample three-page invoice going through it, second by second.
Upload. One POST carries the file. Nothing has been read yet.
Timeline
Pass webhook_url and Parse calls you when it finishes, so you never poll at all.
No credit card required - 100 pages/month free
Submit the file, keep the id, and ask for it until the status changes. Everything else - schemas, exports, webhooks - is built on those two calls.
# 1. submit - the call returns straight away
curl -X POST https://api-parse.conversiontools.io/v1/extract \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@invoice.pdf"
# 202 { "id": "ext_9f2c41d7", "status": "processing" }
# 2. poll that id until it stops saying "processing"
curl https://api-parse.conversiontools.io/v1/extractions/ext_9f2c41d7 \
-H "Authorization: Bearer YOUR_API_KEY"
# 200 { "status": "completed", "data": { ... } }Built by developers, for developers. We handle the complexity so you don't have to.
Parse integrates into any pipeline where documents need to become data.
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.
You Got the Data Out. Why Is It Still a Mess?
Parsing a document is the easy part now. The real work is turning that output into the same clean fields every time - here is the gap that breaks pipelines, and how to close it.
Read moreHow I prepare my VAT report from a pile of supplier invoices
A founder walkthrough: define the fields once, then turn every supplier PDF invoice into the same structured JSON for a VAT return - no manual re-typing.
Read more