Who it’s for
- Expense bots, Africa fintech agents, bookkeeping copilots that already have OCR text (or base64 image/PDF) and need predictable fields — not another LLM guess.
- Africa-tuned: NGN ₦/kobo, KES M-Pesa, GHS MoMo, ZAR VAT, OPay, PalmPay, Paystack, Verve POS
- Fail-closed: empty/garbage → null merchant, total 0, empty line_items (no hallucinated money)
- Pay with prepaid API key or Base USDC via x402
Working example (prepaid)
curl -sS https://api.callmeter.dev/v1/docintel/extract/receipt \
-H "X-Api-Key: $CALLMETER_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"text":"MAMA CHIKA PROVISIONS\nRice 50kg .............. ₦48,000\nPalm oil 5L ............ ₦9,500\nSubtotal ₦57,500\nVAT 7.5% ₦4,312.50\nTotal ₦61,812.50\nPayment: POS (Verve)"}'
Expected shape (abridged):
{
"doc_type": "receipt",
"merchant": { "name": "MAMA CHIKA PROVISIONS", "country": "NG" },
"currency": "NGN",
"subtotal": 57500,
"tax": { "vat_rate": 7.5, "vat_amount": 4312.5 },
"total": 61812.5,
"line_items": [
{ "description": "Rice 50kg", "amount": 48000 },
{ "description": "Palm oil 5L", "amount": 9500 }
],
"confidence": { "overall": 0.95 },
"warnings": []
}
MCP
{ "method": "tools/call", "params": { "name": "parse.receipt", "arguments": { "text": "…" } } }
Endpoint: POST https://api.callmeter.dev/mcp