Reconciliation
Access billing reconciliation data — match observed usage against provider invoices.
Get reconciliation summary
GET
/api/v1/reconciliation/summaryReturns the reconciliation status for the last billing period.
{
"period": "2026-04",
"matched_usd": 4200.00,
"unmatched_usd": 142.50,
"confidence_distribution": {
"HIGH": 3840.00,
"MEDIUM": 320.00,
"LOW": 40.00,
"UNVERIFIED": 142.50
}
}
Get reconciliation matches
GET
/api/v1/reconciliation/matchesReturns individual matched and unmatched line items.
Query parameters
| Parameter | Type | Description |
|---|---|---|
confidence |
string | HIGH, MEDIUM, LOW, UNVERIFIED |
provider |
string | Filter by provider |
from |
ISO 8601 | Start of period |
to |
ISO 8601 | End of period |
Gap Explorer
Get gap data
GET
/api/v1/reconciliation/gap-explorerReturns unmatched and flagged reconciliation buckets for a given period.
Query parameters
| Parameter | Type | Description |
|---|---|---|
period |
string | 7d, 30d, 90d (default: 30d) |
provider |
string | Filter by provider (anthropic, openai, grok, gemini) |
flagged_only |
boolean | Return only flagged (unmatched) buckets |
Response
{
"period": { "start": "2026-04-06T00:00:00Z", "end": "2026-05-06T00:00:00Z" },
"total": 142,
"flagged": 8,
"gaps": [
{
"bucket": "2026-05-01T14:00:00Z",
"provider": "anthropic",
"model": "claude-sonnet-4-6",
"match_status": "unmatched",
"confidence_score": null,
"gap_minutes": null,
"provider_cost_usd": 0.0,
"our_cost_usd": 4.21,
"invoice_period_start": "2026-05-01T00:00:00Z",
"invoice_period_end": "2026-05-31T23:59:59Z",
"invoice_aligned": false,
"flagged_gap": true
}
]
}
Run gap matching
POST
/api/v1/reconciliation/gap-explorer/runTriggers a fresh gap matching run against the latest provider billing data. Use the same period and provider query parameters as the GET endpoint.
curl -X POST "https://token.audit.id/api/v1/reconciliation/gap-explorer/run?period=30d" \
-H "Authorization: Bearer td_live_xxxx"
After the run completes, fetch updated results with the GET endpoint.
Upload an invoice
POST
/api/v1/reconciliation/invoiceUpload a provider invoice PDF for OCR-based line item extraction and matching.
curl -X POST https://token.audit.id/api/v1/reconciliation/invoice \
-H "Authorization: Bearer td_live_xxxx" \
-F "file=@anthropic-invoice-april-2026.pdf" \
-F "provider=anthropic"