Create a consignado compensating adjustment
Commits a new compensating adjustment operation, its opening history entry and the durable posting-intent outbox event, atomically; the posting intent is always recorded. When no single ledger account resolves for the contract’s currency and role (configured, or the Lender’s default when it provisions accounts), the create is refused 422, nothing is recorded and the divergence stays adjustable. Any reason but a disbursement clearing on a contract that never disbursed or was cancelled is refused 422 the same way. A disbursement clearing posts its reason’s pair: disbursement_excess_recovered Dr cash / Cr above, disbursement_excess_loss Dr loss / Cr above, disbursement_remainder_paid_off_rail Dr below / Cr cash, disbursement_remainder_cancelled Dr below / Cr suspense. A refinance_payoff_vs_rail item clears by refinance_payoff_short_recovered Dr cash / Cr suspense, refinance_payoff_short_loss Dr loss / Cr suspense (the Lender payoff above the rail’s) or refinance_payoff_excess_refunded Dr suspense / Cr cash (the rail’s above the Lender’s). refinance_payoff_short_settled_residual records, on the same item, that up to the open shortfall and the CCB residual available (the item’s openShortfall and residualAvailable) is settled against the contract’s own residual: nothing posts to the ledger, any amount up to both is accepted, and the item closes when its shortfall reaches zero; it is refused 409 LENDER-1605 on any other item, 409 LENDER-1606 above the open shortfall and 409 LENDER-1607 above the residual. A refinance_reversal_disbursed_change item (the change of a refinance the rail undid) accepts only disbursement_excess_recovered and disbursement_excess_loss, for exactly the item’s amount. A refinance_troco_paid_over item (the troco the treasury paid the portador above the new contract’s liberated value less the rail’s valor_pago, booked on the above account as pago a maior) accepts the same two reasons, for exactly the item’s amount. A desk item whose reason is written_off (a written-off month’s payable the worker’s discount makes theirs) takes no adjustment of any reason: it is refused 409 as not adjustable and answer and dispose are all it offers. A 202 response means accepted durably, never posted: the ledger relay posts it separately. Idempotent via the X-Idempotency header enforced by the platform middleware.
Encabezados
Cuerpo
Closed reason catalog; no free-form 'other'. A disbursement_* or refinance_payoff_* reason clears a disbursement in parts or a refinance payoff: it names the divergence and moves exactly its open amount. refinance_payoff_short_settled_residual only records, on a refinance_payoff_vs_rail item, that part of the shortfall (any amount up to the item's openShortfall and residualAvailable) is the CCB residual of the same contract: it posts nothing.
payment_shortfall, payment_excess, immutable_client_correction, internal_ccb_residual, disbursement_excess_recovered, disbursement_excess_loss, disbursement_remainder_paid_off_rail, disbursement_remainder_cancelled, refinance_payoff_short_recovered, refinance_payoff_short_loss, refinance_payoff_excess_refunded, refinance_payoff_short_settled_residual Respuesta
Accepted
GL account this operation was authorized against: the suspense account, or the above or below account a disbursement_* reason clears. A contract that already booked into the role keeps that account; otherwise the role's account, configured or the Lender's default when it provisions accounts.

