Skip to content

Built for the API first

The dashboard is a client of the same API you get. Nothing in the app does something the API can’t.

Upload a document

bash
curl -X POST https://arkrel.com/v1/documents \
  -H "Authorization: Bearer $API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -F "file=@invoice.pdf" \
  -F "document_type=invoice"

Get back verified data

json
{
  "document_type": "invoice",
  "fields": {
    "total": {
      "value": 1080.00,
      "confidence": 0.94,
      "source": { "page": 1, "bbox": [420, 648, 500, 662] }
    }
  },
  "tables": [{ "name": "line_items", "row_count_expected": 4, "row_count_extracted": 4, "rows": [ ] }],
  "checks": [
    { "id": "subtotal_tax_total", "name": "Subtotal + tax = total", "passed": false,
      "expected": 1090.00, "actual": 1080.00,
      "detail": "Stated total is $10.00 less than subtotal + tax." }
  ],
  "pages": { "total": 1, "processed": 1 },
  "warnings": []
}

Inspect full JSON results for a fictional invoice and bank statement with deliberate errors. See the example documents and reported reasons.

One REST API

Bearer API key auth. Upload by multipart or base64 JSON. List, filter and paginate documents by status.

Idempotency-Key

Every POST accepts an Idempotency-Key header, so retried requests from a flaky network never create duplicates.

Signed webhooks

document.succeeded, .partial, .needs_review, .failed. HMAC-SHA256 signed, with a 5-minute replay window and a delivery log with test send in the dashboard.

Custom schemas

Define your own fields as a JSON Schema subset with plain-language descriptions; extraction and source-linking work the same as the built-in document types.

Zapier, n8n and Make

Zapier: a trigger for processed documents, an upload action and a result lookup, available now by invite link. n8n: install n8n-nodes-arkrel from Settings, Community Nodes. Make: the custom app is built and its listing is next.

MCP server

A remote MCP server at /mcp: Claude, Cursor, VS Code, the OpenAI Responses API and n8n’s MCP Client Tool can extract and verify a document directly, no glue code required.

Usage endpoint

GET /v1/usage returns pages included, used and overage for the current billing period, the same numbers billing is based on.

QuickBooks & Xero ready exports

Bank statements export as a QuickBooks CSV, a Xero CSV or an OFX file. The OFX file gives each transaction a stable ID that accounting software can use to recognize a repeat import; for CSV imports, review the ledger's own duplicate check.

See the QuickBooks import guide

Pricing for the API

Priced per page, separate from the consumer plans on Pricing. Every account starts with a free monthly page allotment; buy a page pack any time for more.

100

pages

$9

one-time

500

pages

$29

one-time

2,000

pages

$79

one-time

Page pack credits stay usable for 12 months from purchase.

Compare

Review documented features, pricing and workflow fit.