Submit a reconciliation
Submits a bank dataset and a book dataset for reconciliation. The job is queued and processed asynchronously; poll the returned poll_url.
Strict canonical format. No column mapping or auto-detection is performed. Each row of both bank and book must be exactly { date, amount, description } with no extra keys:
- date: string, exact ISO 8601 YYYY-MM-DD, must be a real calendar date.
- amount: a finite JSON number, signed (negatives allowed).
- description: string, 1 to 500 characters.
No extra top-level keys are allowed (only bank, book, options). Any structural deviation is rejected with HTTP 422 invalid_dataset_format, listing the offending dataset, row index, and field.
Credits. A reconciliation costs credits equal to the number of bank rows, and is charged ONLY if the run completes and is verified (result.verification.is_verified === true). If the dataset is obviously unaffordable at submit time, the request is rejected synchronously with 402. Requires scope reconcileiq:write.
Request
- Base URL: https://api.reconcileiq.com
- URL: https://api.reconcileiq.com/api/v1/reconciliations
- Auth: one of:
- HTTP bearer
- API key in header X-API-Key
Request body
Response
Reconciliation queued.
Example response
{
"reconciliation_id": "rec_8Hq2Lm9Xk4PwZ0aBcD1eF",
"poll_url": "/api/v1/reconciliations/rec_8Hq2Lm9Xk4PwZ0aBcD1eF"
}Changes
No recorded changes to this operation across all 1 revision of this API.