Cancel Payout
Cancels a payout the recipient has not accepted yet and releases the money — principal and fee — back to your balance.
POST
/api/payout/{payout_id}/cancelAuthentication
Scope: payouts:write
Authorization: Bearer <YOUR_PAYOUT_KEY>
Idempotency-Key: <unique key per attempt>
Path Parameters
| Field | Type | Description | Required |
|---|---|---|---|
payout_id | string | The payout to cancel | ✅ |
Response Fields
- 200
- 409
- 409 (unresolved)
Returns the payout in the merchant view, with status: "cancelled"
and funds_released: true.
{ "error": "not_cancellable", "message": "a payout in processing cannot be cancelled" }
{
"operation_status": "pending",
"payout_id": null,
"error": "attempt_unresolved",
"message": "the outcome is not established; retry this attempt with the same Idempotency-Key"
}
Your account was busy with another change at that moment. Nothing was cancelled yet — retry.
Behavior
- Once the recipient has confirmed, the payout is on its way and cancellation is
refused with
not_cancellable. - Cancelling a payout that is already
cancelled,expiredorfailedreturns it unchanged rather than an error.
Request Samples
curl -s -X POST https://luxfin.org/api/payout/po_9f3c1d7b2a8e4c15d0b6a291/cancel \
-H "Authorization: Bearer $PAYOUT_KEY" \
-H "Idempotency-Key: $(uuidgen)"