Skip to main content

Documentation

Set Payout Response

Accept or decline a payout to a Rapyd Wallet.

If the beneficiary accepts the payout, this method triggers the Payout Completed Webhook.

If the beneficiary declines the payout, this method triggers the Payout Failed Webhook.

Note

Relevant to payout to a Rapyd wallet. This method can be used only one time per payout.

Prerequisites

  • Create a payout to a Rapyd Wallet. See Create Payout.

  • In the beneficiary object, confirmation_required must be set to true. Do one of the following:

    • In the payout request, include the beneficiary object and set confirmation_required to true.

    • Create a beneficiary and set confirmation_required to true. See Create Beneficiary. Then create the payout.

Note

    • id

    • ID of the payout object in the Create Payout response. String starting with payout_.

    • status

    • Determines how to handle the payout. One of the following values:

      • accept

      • decline

The status object is returned and it includes a SUCCESS value.

  • /v1/payouts/response

  • Accept

  • curl -X post
    'https://sandboxapi.rapyd.net/v1/payouts/response' \
    -H 'access_key: your-access-key-here' \
    -H 'Content-Type: application/json' \
    -H 'idempotency: your-idempotency-parameter-here' \
    -H 'salt: your-random-string-here' \
    -H 'signature: your-calculated-signature-here' \
    -H 'timestamp: your-unix-timestamp-here' \
    --data-raw '{
        "id": "payout_b380ca556ac03259d5d2b83dd4b5eaff",
        "status": "accept"
    }'
  • {
        "status": {
            "error_code": "",
            "status": "SUCCESS",
            "message": "",
            "response_code": "",
            "operation_id": "821a9341-3757-409d-875c-69c43a4c8eb0"
        }
    }
  • Decline

  • curl -X post
    'https://sandboxapi.rapyd.net/v1/payouts/response' \
    -H 'access_key: your-access-key-here' \
    -H 'Content-Type: application/json' \
    -H 'idempotency: your-idempotency-parameter-here' \
    -H 'salt: your-random-string-here' \
    -H 'signature: your-calculated-signature-here' \
    -H 'timestamp: your-unix-timestamp-here' \
    --data-raw '{
        "id": "payout_04d506aff2489474bd75533b528474f5",
        "status": "decline"
    }'
  • {
        "status": {
            "error_code": "",
            "status": "SUCCESS",
            "message": "",
            "response_code": "",
            "operation_id": "953cdaef-00ed-46ba-9fac-fe4452916c5f"
        }
    }
  • Bad Request - Invalid Status Value

  • curl -X post
    'https://sandboxapi.rapyd.net/v1/payouts/response' \
    -H 'access_key: your-access-key-here' \
    -H 'Content-Type: application/json' \
    -H 'idempotency: your-idempotency-parameter-here' \
    -H 'salt: your-random-string-here' \
    -H 'signature: your-calculated-signature-here' \
    -H 'timestamp: your-unix-timestamp-here' \
    --data-raw '{
        "id": "payout_9f07b29ce0217b80268d49ccb0458267",
        "status": "confirm"
    }'
  • {
        "status": {
            "error_code": "INVALID_TRANSFER_STATUS",
            "status": "ERROR",
            "message": "The request tried to set a response to a transfer between wallets, but the status was not recognized. The request was rejected. Corrective action: Set 'status' to one of the following values: 'accept', 'decline', 'cancel'.",
            "response_code": "INVALID_TRANSFER_STATUS",
            "operation_id": "fabbe3a2-effa-4cbf-b815-387b2a3a23cf"
        }
    }
  • Bad Request - Payout Not Found

  • curl -X post
    'https://sandboxapi.rapyd.net/v1/payouts/response' \
    -H 'access_key: your-access-key-here' \
    -H 'Content-Type: application/json' \
    -H 'idempotency: your-idempotency-parameter-here' \
    -H 'salt: your-random-string-here' \
    -H 'signature: your-calculated-signature-here' \
    -H 'timestamp: your-unix-timestamp-here' \
    --data-raw '{
        "id": "payout_4362c213f2b5d9b12e5d52cce3a33a43",
        "status": "accept"
    }'
  • {
        "status": {
            "error_code": "ERROR_GET_PAYOUT",
            "status": "ERROR",
            "message": "The request tried to retrieve a payout, but the payout was not found. The request was rejected. Corrective action: Use the ID of a valid payout.",
            "response_code": "ERROR_GET_PAYOUT",
            "operation_id": "dad4f05d-63b7-4728-8639-0fd4da7c9222"
        }
    }
  • Unauthorized

  • curl -X post
    'https://sandboxapi.rapyd.net/v1/payouts/response' \
    -H 'access_key: your-access-key-here' \
    -H 'Content-Type: application/json' \
    -H 'idempotency: your-idempotency-parameter-here' \
    -H 'salt: your-random-string-here' \
    -H 'signature: your-calculated-signature-here' \
    -H 'timestamp: your-unix-timestamp-here' \
    --data-raw '{
        "id": "payout_4362c213f2b5d9b12e5d52cce3a33a43",
        "status": "accept"
    }'
  • {
        "status": {
            "error_code": "UNAUTHENTICATED_API_CALL",
            "status": "ERROR",
            "message": "The request was rejected due to an authentication issue. Corrective action: Check the status of your account in the 'Account Details' page of the Client Portal.",
            "response_code": "UNAUTHENTICATED_API_CALL",
            "operation_id": "1acd142b-3376-4695-9d8e-71e75efa01ad"
        }
    }