Bank Reconciliation
Verify that your ledger balances match your bank statements. DayZero uses AI to parse statements and deterministic matching to suggest transaction pairs.
How It Works
- Upload a bank statement (PDF, CSV, or Excel)
- AI parses the statement into structured transaction data
- Matching engine pairs statement lines with ledger transactions
- Review suggested matches and approve or reject
- Complete the reconciliation to lock it
Create a Reconciliation
From File Upload
bash
curl -X POST "https://api.ondayzero.com/api/v1/reconciliations/upload" \
-H "Authorization: Bearer dz_your_token_here" \
-H "x-business-id: YOUR_BUSINESS_ID" \
-F "file=@statement.pdf" \
-F "ledger_id=BANK_LEDGER_UUID"From Existing S3 Key
bash
curl -X POST "https://api.ondayzero.com/api/v1/reconciliations" \
-H "Authorization: Bearer dz_your_token_here" \
-H "x-business-id: YOUR_BUSINESS_ID" \
-H "Content-Type: application/json" \
-d '{
"statement_s3_key": "statements/march-2026.pdf",
"ledger_id": "BANK_LEDGER_UUID"
}'Matching Signals
The matching engine scores candidates using:
| Signal | Weight | Description |
|---|---|---|
| Amount match | 0.50 | Exact amount (required) |
| Same date | +0.30 | Identical dates |
| Close date (2 days) | +0.25 | Near date proximity |
| Description match | +0.20 | High text similarity |
| Counterparty match | +0.10 | Known counterparty |
Complete a Reconciliation
After reviewing matches:
bash
curl -X POST "https://api.ondayzero.com/api/v1/reconciliations/{id}/complete" \
-H "Authorization: Bearer dz_your_token_here" \
-H "x-business-id: YOUR_BUSINESS_ID"Completion locks the reconciliation and marks matched transactions as reconciled.