API Docs
Payouts
API ReferencePayoutsFulfill Payout

Fulfill Payout

Fulfill a payout that was created without auto_fulfill and is sitting in requires_fulfillment.

POST /payouts/{payout_id}/fulfill

Path Parameters

ParameterTypeRequiredDescription
payout_idstringYesThe identifier of the payout to fulfill.

Body Parameters

ParameterTypeRequiredDescription
payout_idstringYesMust match the payout_id in the path. 30-character identifier, auto-generated when the payout was created and returned in the Create Payout response.

Request Example

curl -X POST 'https://api.rpayz.com/payouts/187282ab-40ef-47a9-9206-5099ba31e432/fulfill' \  -H "Content-Type: application/json" \  -H "api-key: snd_YOUR_API_KEY" \  -d '{  "payout_id": "187282ab-40ef-47a9-9206-5099ba31e432"}'

Response

A fulfilled payout returns the same shape as Create Payout, with status moving on from requires_fulfillment toward a terminal state (success, pending, or failed, depending on the connector).

{
  "payout_id": "187282ab-40ef-47a9-9206-5099ba31e432",
  "merchant_id": "1234567889",
  "merchant_order_reference_id": "merchant_order_ref_123",
  "amount": 5000,
  "currency": "USD",
  "payout_type": "bank",
  "payout_method_data": {
    "bank": {
      "bank_account_number": "0001****3456",
      "bank_routing_number": "110***000",
      "account_holder_name": "John Doe"
    }
  },
  "billing": null,
  "auto_fulfill": false,
  "customer_id": "cus_y3oqhf46pyzuxjbcn2giaqnb44",
  "customer": {
    "id": "cus_y3oqhf46pyzuxjbcn2giaqnb44",
    "name": "John Doe",
    "email": "johntest@test.com",
    "phone": "9123456789",
    "phone_country_code": "+1"
  },
  "client_secret": "pay_U42c409qyHwOkWo3vK60_secret_el9ksDkiB8hi6j9N78yo",
  "return_url": "https://example.com",
  "business_country": "US",
  "description": "Vendor payment",
  "entity_type": "Individual",
  "recurring": false,
  "metadata": null,
  "merchant_connector_id": "mca_sAD3OZLATetvjLOYhUSy",
  "status": "success",
  "error_message": null,
  "error_code": null,
  "profile_id": "pro_abc123",
  "created": "2024-01-22T10:00:00Z",
  "connector_transaction_id": "S3FC9G9M2MVFDXT5",
  "priority": null,
  "attempts": [
    {
      "attempt_id": "187282ab_1",
      "status": "success",
      "amount": 5000,
      "currency": "USD",
      "connector": "wise",
      "connector_transaction_id": "S3FC9G9M2MVFDXT5"
    }
  ],
  "payout_link": null,
  "unified_code": null,
  "unified_message": null,
  "payout_method_id": null
}

Notes

  • Fulfill is only meaningful for payouts created with auto_fulfill: false (the default) — these stop at requires_fulfillment after the payout method is confirmed, and need this explicit call to actually send the funds.
  • If auto_fulfill was set to true at creation, the payout is already fulfilled and calling this endpoint is unnecessary.
  • See the status values reference for the full list of possible payout states.

Error response

400 — Missing mandatory fields (payout_id must be supplied both in the path and the request body).