Skip to main content
POST
Post an adjustment against a statement

Description

Post adjustment Posts a recoup/credit/reversal/manual adjustment against the active Statement for (tenantUserId, periodStart..periodEnd). Requires the statement to be finalized or closed. Authorization:
  • Required role: admin or higher

Code Examples

Authorizations

Authorization
string
header
required

JWT Authorization header using the Bearer scheme. Format: "Bearer {token}"

Path Parameters

tenantUserId
string<uuid>
required
periodStart
string<date-time>
required
periodEnd
string<date-time>
required

Body

application/json
type
enum<string>
required
Available options:
recoup,
credit,
reversal,
manual
direction
enum<string>
required
Available options:
debit,
credit
amount
number
required

Must be a positive number.

effectiveDate
string<date-time>
required
reason
string
required
note
string | null

Response

Adjustment posted.

Every statements response wraps the payload in { status, message, data }. data carries the per-endpoint payload PLUS the per-tenant feature flag.

status
enum<string>
Available options:
success,
error
message
string
data
object

Response payload shared by the ITEM 2 lifecycle mutations (finalize, payments, adjustments, hold, resume, void, disputes): the updated Statement row, shaped via the same shapeForClient mapper as StatementRosterRow, plus ok: true. The underlying Sequelize row carries additional endpoint-specific detail (e.g. statusHistory) not exhaustively modeled here — treat this as the roster-row core.