Creating a Payout
To create a payout through the API, you only need the shopId of the shop from which you want to pay out funds. To find out how to get it, see Retrieving Shop Data.
Payouts are sent to the bank account defined at the shop or company level.
Authenticating the Request
To create a payout, authenticate the request with an OAuth token obtained using the client_credentials grant type. Generate the token with the configuration keys of the point of sale (POS) that belongs to the shop from which you want to pay out funds.
Creating a Payout
You can make a full or a partial payout.
In both cases, send an HTTP POST request to the /api/v2_1/payouts endpoint. For a partial payout, also include the payout object with the amount parameter specifying the amount to pay out and the extPayoutId parameter – your unique payout identifier within the shop. For a full payout, omit amount – the entire available balance is paid out.
- Full Payout
- Partial Payout
curl -X POST https://secure.payu.com/api/v2_1/payouts \
-H "Content-Type: application/json" \
-H "Authorization: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd" \
-d '{
"shopId": "n7Cd7y1U"
}'
curl -X POST https://secure.payu.com/api/v2_1/payouts \
-H "Content-Type: application/json" \
-H "Authorization: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd" \
-d '{
"shopId": "n7Cd7y1U",
"payout":
{
"extPayoutId": "123123",
"amount": 1100
}
}'
PayU automatically fills in the remaining payout data based on the information stored in the PayU system.
Examples of payout creation responses:
- Full Payout
- Partial Payout
{
"payout": {
"payoutId": "133bfe5f400e4b2c8da44abfdf753d79",
"status": "PENDING"
},
"status": {
"statusCode": "SUCCESS"
}
}
{
"payout": {
"payoutId": "133bfe5f400e4b2c8da44abfdf753d79",
"extPayoutId": "123123",
"status": "PENDING"
},
"status": {
"statusCode": "SUCCESS"
}
}
Use the payoutId returned in the response to retrieve the payout data, for example, to check its status.
For details about the parameters, see the Create a Payout section in our API Reference.