Create reconciliation

POST/api/v1/reconciliations

Create a new bank reconciliation (with S3 key).

Use this endpoint if you've already uploaded the statement to S3. For direct file upload, use POST /reconciliations/upload instead.

Request Body:

  • ledger_id: UUID of ledger to reconcile against (required)
  • statement_s3_key: S3 key of uploaded bank statement (required)
  • start_date: Statement period start date in ISO 8601 format (required)
  • end_date: Statement period end date in ISO 8601 format (required)
  • statement_filename: Original filename (optional)
  • opening_balance: Opening balance in cents (optional)
  • closing_balance: Closing balance in cents (optional)
  • auto_start: Auto-start processing workflow (optional, defaults to true)

Note: The workflow will:

  1. Parse the bank statement (PDF, CSV, Excel supported)
  2. Fetch ledger transactions for the period
  3. Run AI matching to suggest matches
  4. Store results for review

Returns: Created reconciliation with status and task ID.

Operation ID: create_reconciliation_api_v1_reconciliations_post·View as markdown·OpenAPI slice

Authentication

Bearer token authentication. Pass your DayZero API token in the Authorization header and the target business UUID in x-business-id.

Request body

ledger_idstringrequired

ID of ledger to reconcile against

source_typestring

Reconciliation source: 'plaid' (synced transactions) or 'manual' (uploaded statement)

statement_s3_keystring

S3 key of uploaded bank statement (required for manual source)

start_datestring · date-timerequired

Statement period start date

end_datestring · date-timerequired

Statement period end date

statement_filenamestring

Original filename

opening_balanceinteger

Opening balance in cents

closing_balanceinteger

Closing balance in cents

auto_startboolean

Auto-start processing workflow

Responses

201Successful Response

successboolean
messagestring
codestring
dataapp__api__v1__schemas__reconciliation__CreateReconciliationResponse

422Validation Error

detailarray · ValidationErrorValidationError
5 fields
locarray · string | integerrequired
msgstringrequired
typestringrequired
inputobject
ctxobject