Skip to main content
POST
Create accrual run

Authorizations

Authorization
string
header
required

JWT bearer token issued by the identity provider.

Headers

X-Idempotency
string
required

Canonical idempotency request ID. Required: this request moves money, and without a key a retry cannot be told apart from a second instruction.

Body

application/json
businessDate
string<date>
required

Business date (YYYY-MM-DD) the run is executed on. The run recognizes the last CIVIL MONTH that fully elapsed before this date — a run dated anywhere in July closes June — for the WHOLE book, pro rata temporis by calendar days, with the loan's contracting month apportioned within that month. Any date works: no account is skipped for the day of the month it was disbursed on. Re-running the same competência is a no-op, so this is also the backfill lever: to close a month that was missed, post a date inside the following month.

Example:

"2026-06-14"

mode
string
required

Label recorded on the run for correlation and logs. It does not change the cadence or select which accounts are recognized. The label is part of the run's correlation id, so "heartbeat" is reserved for the scheduled driver and is refused here.

Required string length: 1 - 32
Example:

"daily"

loanProductIds
string<uuid>[] | null

Optional loan product identifiers to scope the run.

Maximum array length: 100

Response

Created

businessDate
string
required

Business date (YYYY-MM-DD, UTC) the run was queued for.

Example:

"2026-06-14"

correlationId
string
required

Correlation identifier linking the run to its journal/outbox lineage and downstream events.

Example:

"550e8400-e29b-41d4-a716-446655440002"

id
string
required

Server-assigned UUID of the queued accrual run.

Example:

"550e8400-e29b-41d4-a716-446655440000"

journalReferenceId
string
required

UUID of the journal reference recording this run's posting lineage.

Example:

"550e8400-e29b-41d4-a716-446655440001"

status
string
required

Lifecycle status of the queued run (e.g. queued).

Example:

"queued"

outboxEventId
string

UUID of the emitted outbox event; omitted when no outbox event was recorded.

Example:

"550e8400-e29b-41d4-a716-446655440003"