Getting Started
Quickstart
Parse your first invoice in under 5 minutes.
1
Get your API key
Sign up for a free account and create an API key from the dashboard. Free accounts include 20 parses per month — no credit card required.
Create free account →Your API key starts with inv_live_ and is shown once on creation. Store it securely.
2
Make your first request
Upload any invoice PDF or image:
curl -X POST https://api.lumiparser.com/v1/invoices \
-H "Authorization: Bearer inv_live_YOUR_KEY" \
-F "file=@invoice.pdf"Files under 1MB return results immediately. Larger files return a job ID — use webhooks or polling.
3
Read the response
A successful parse returns status: completed with structured data and confidence scores:
{
"id": "inv_a1b2c3d4e5f6g7h8",
"status": "completed",
"parsed": {
"vendor_name": "Acme Corp",
"invoice_number": "INV-2024-0042",
"invoice_date": "2024-01-15",
"due_date": "2024-02-15",
"grand_total": 1620.00,
"currency": "USD",
"line_items": [
{
"description": "Web Development Services",
"quantity": 10,
"unit_price": 150.00,
"total": 1500.00
}
],
"subtotal": 1500.00,
"tax_amount": 120.00,
"tax_rate": 0.08
},
"confidence": {
"vendor_name": 0.99,
"invoice_number": 0.98,
"grand_total": 0.97,
"line_items": 0.94
},
"created_at": "2024-01-20T10:30:00Z"
}4
Handle confidence scores
Use confidence scores to decide how to process results. A common pattern:
const THRESHOLD = 0.85;
const { parsed, confidence } = response;
// Auto-process high-confidence results
if (confidence.grand_total >= THRESHOLD && confidence.vendor_name >= THRESHOLD) {
await processInvoice(parsed);
} else {
// Queue for manual review
await flagForReview(response.id, confidence);
}The dashboard's Needs Review page automatically shows any document where a core field is below 75%.