Receipt OCR API — v1

One URL in.
Structured data out.

Send a receipt image URL. Get back date, merchant, total, tax, and every line item — clean JSON, every time.

Request
curl -X POST https://api.receiptscan.io/extract \
  -H "Authorization: Bearer rocr_••••••••••••" \
  -H "Content-Type: application/json" \
  -d '{
    "image_url": "https://s3.acme.com/receipt-4821.jpg"
  }'
Response
200 OK
{
  "date": "2024-03-15",
  "merchant": "Whole Foods Market",
  "total": 47.82,
  "tax": 3.21,
  "items": [
    { "name": "Organic Milk", "price": 5.99 },
    { "name": "Sourdough Bread", "price": 4.49 },
    { "name": "Greek Yogurt 2pk", "price": 7.99 }
  ],
  "confidence": "high"
}
<2s
Average response time
4 formats
JPEG · PNG · WebP · GIF
6 fields
Date, merchant, total, tax, items, confidence
$0.02
Per call, pay-as-you-go
How it works
01
01 — Send
POST an image URL
Any publicly accessible receipt image — JPEG, PNG, WebP, or GIF. Scanned, photographed, or digital receipts all work.
02
02 — Parse
Vision model reads it
Claude Haiku vision parses with genuine understanding — not regex, not templates. Handles rotated, crumpled, and faded receipts.
03
03 — Receive
Get clean JSON back
A validated JSON object returns in under 2 seconds. Drop it straight into your database, expense pipeline, or AI workflow.
Response schema

Every field
you actually need.

No post-processing. The response is typed and consistent across retail, restaurant, pharmacy, and fuel receipts.

Null fields are explicit — no guessing whether a missing value means zero or unrecognized.

The confidence field tells you when image quality was too low to trust the output.

date string|null ISO 8601 date from receipt header
merchant string|null Business name as printed
total float|null Final charged amount including tax
tax float|null Tax amount if itemized on receipt
items array Array of {name, price} objects for each line item
confidence enum high / medium / low — image quality signal
Pricing

Simple,
usage-based.

Start with pay-as-you-go. Move to a plan when volume makes it cheaper. No contracts, cancel anytime.

Pay as you go
$0.02
per call
No monthly minimum
  • Unlimited calls
  • REST API access
  • Usage dashboard
Get started
Starter
$19
/ month
1,500 calls — $0.013/call
  • Monthly billing
  • REST API access
  • Usage dashboard
Get started
Pro
$149
/ month
20,000 calls — $0.0075/call
  • Monthly billing
  • REST API access
  • Priority support
Get started