Payout for a Different Bank Account
You can send a payout to a bank account that is not set as the default payout account of your shop. This is possible for:
- domestic bank accounts (for Polish and Czech banks),
- foreign bank accounts.
The type of bank account determines which data the request must contain: a foreign account requires more details than a domestic one.
Payouts in EUR are treated as foreign transfers. If the target account is an EUR account in a Polish bank, provide all the details required for a foreign transfer.
Creating a payout to the specified bank account is available only for shops that meet the verification criteria. To start the verification process, use our contact page.
Authenticating the Request
To pay out funds to a designated bank account, 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 for the Designated Bank Account
As with a standard payout, send an HTTP POST request to the /api/v2_1/payouts endpoint. In addition, include the details of the target bank account.
- Domestic Bank Account
- Foreign Bank Account
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": {
"amount":"1000",
"description":"Some payout"
},
"account": {
// highlight-next-line
"accountNumber":"59114072854040477132976504"
},
// highlight-start
"customerAddress": {
"name":"Stefan Jaracz"
}
// highlight-end
}'
Provide the target account number in accountNumber and the name of the account holder in customerAddress.name.
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": {
"amount":"1000",
"description":"Some foreign payout",
// highlight-next-line
"foreign":"true"
},
// highlight-start
"account": {
"accountNumber":"DE89370400440532013000",
"swiftCode":"AARBDE5W700",
"bankName":"Aareal Bank"
},
"customerAddress": {
"street":"RICHARD STRAUSS STRASSE 24",
"city":"MUENCHEN",
"countryCode":"DE",
"name":"Steffen von Klaus"
},
"bankAddress": {
"street": "PAULINENSTRASSE 15",
"postalCode": "65189",
"city": "WIESBADEN",
"countryCode": "DE"
}
// highlight-end
}'
Set foreign to true.
Add the account object with accountNumber, swiftCode and bankName.
Add the customerAddress object with the payee's name, street, city and country code.
Add the bankAddress object with the street, city and country code of the payee's bank.
The validation of input data for a payout to a specified bank account differs significantly from that of a standard payout. For details about the parameters, see the Create a Payout section in our API Reference.