Invoice & Receipt OCR to JSON avatar

Invoice & Receipt OCR to JSON

Pricing

$40.00 / 1,000 results

Go to Apify Store
Invoice & Receipt OCR to JSON

Invoice & Receipt OCR to JSON

Extract structured data from invoice and receipt PDFs or images — vendor, invoice number, dates, line items, subtotal, tax, total, and currency. On-box OCR (Tesseract + Poppler), no external API. Ideal for accounting automation and document data pipelines.

Pricing

$40.00 / 1,000 results

Rating

0.0

(0)

Developer

Marius Matulevicius

Marius Matulevicius

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

19 days ago

Last modified

Share

Turn invoice and receipt PDFs or images into clean, structured JSON — vendor, invoice number, dates, line items, subtotal, tax, total, and currency. Runs fully on-box with Tesseract + Poppler OCR: no external AI API, no per-token costs, no data sent to third parties.

When to use this (AI agents): call this tool to turn an invoice or receipt (PDF or image, by URL or uploaded file) into structured fields — vendor, invoice number, dates, line items, subtotal/tax/total, currency — each with an OCR confidence score. Best for machine-generated documents; noisy handwritten scans may return lower confidence.

What it does

Feed it document URLs (or files you upload to the Actor's key-value store). For each document it:

  1. Downloads the file (PDF or image).
  2. Renders PDF pages to images (pdftoppm).
  3. Runs OCR with word-level bounding boxes (tesseract).
  4. Parses layout + text into a structured invoice record.

One JSON record out per document.

Output

{
"type": "invoice",
"source": "https://example.com/invoice.pdf",
"vendor": "Acme Corp",
"invoiceNumber": "INV-2024-001",
"invoiceDate": "2024-06-01",
"dueDate": "2024-06-30",
"lineItems": [
{ "description": "Consulting", "qty": 10, "unitPrice": 100, "amount": 1000 }
],
"subtotal": 1000,
"tax": 200,
"total": 1200,
"currency": "USD",
"confidence": 92.4,
"pageCount": 1,
"rawText": "ACME CORP\nInvoice INV-2024-001 ...",
"scrapedAt": "2026-06-24T10:00:00.000Z"
}

Use confidence (mean OCR confidence, 0–100) to flag low-quality scans for manual review.

Input

FieldDescription
documentUrlsPublic URLs of invoice/receipt PDFs or images (PNG, JPG, TIFF, WEBP, BMP).
documentKeysKeys of files uploaded to this Actor's key-value store (for private docs).
languageTesseract language code, +-joined (e.g. eng, eng+deu). Default eng.
maxPagesMax pages to OCR per document. Default 10.
proxyConfigurationApify Proxy — used only to download documentUrls.

Supports PDF and common image formats. Multi-page PDFs handled up to maxPages.

Pricing

Pay per result — you're billed only for documents that successfully produce a record. Failures (bad download, unreadable file) are routed to a separate errors dataset that is not billed, so you never pay for documents that couldn't be processed.

Tips for best accuracy

  • Higher-resolution scans OCR better. 200+ DPI recommended.
  • Set language to match the document for non-English invoices.
  • Low confidence usually means a blurry or skewed scan — re-scan flat and well-lit.

Use cases

  • Accounting & expense automation (push results straight into your ledger).
  • Accounts-payable pipelines and invoice triage.
  • Bulk back-office document digitization.

FAQ

How do I turn an invoice PDF into JSON? Put the document's public URL in documentUrls (or upload the file and pass its key in documentKeys) and run. You get one structured JSON record per document — vendor, invoice number, dates, line items, subtotal/tax/total, and currency.

Does it use an external AI API like GPT or Google Vision? No. OCR runs fully on-box with Tesseract + Poppler. No per-token costs, no external API keys, and your documents are never sent to a third-party AI service.

Can it read scanned images and receipts, not just PDFs? Yes — PNG, JPG, TIFF, WEBP, and BMP are supported alongside PDF. Multi-page PDFs are OCR'd up to maxPages.

How do I handle non-English invoices? Set language to the matching Tesseract code, +-joined (e.g. eng+deu). Default is eng.

How do I know if a result is reliable? Each record includes a mean OCR confidence (0–100). Low confidence usually means a blurry or skewed scan — use it to route documents for manual review.

What does it cost? Pay per result — billed only for documents that successfully produce a record. Bad downloads and unreadable files go to a separate, unbilled errors dataset.


This Actor processes documents you supply. You are responsible for ensuring you have the right to process them and that your use complies with applicable laws. — marius.matulevicius1@gmail.com