The PayOut object

A PayOut Bank wire is a request to withdraw money from a wallet to a bank account. You need to setup Bank Account before processing a PayOut Bank wire.

There is a KYC limit on Pay-Outs in order to fight fraud, money laundering and financing of terrorism. You have to send some documents through the API. It's compulsory for any payout amount. More info here

Note that successful payouts can be rejected by the recipient bank (e.g. the bank account is closed, or it is a savings account and can't receive funds). In this case, we will create a "payout refund" and the funds will be returned to the wallet - so it is important to check events/hook notifications for a "PAYOUT_REFUND_SUCCEEDED". You should also note that for some reasons, we'll automatically disable the bank account so you can't use it again.

Due to anti-money laundering policy, we don’t accept the creation of payouts to some countries. Please refer to the Restrictions by country documentation for more information.

Parameters

BankAccountId
string

string:

Maximum length is 255 characters

An ID of a Bank Account

BankWireRef
string

string:

Maximum length is 12 characters

A custom reference you wish to appear on the user’s bank statement (your Client Name is already shown). We advise you not to add more than 12 characters.

PaymentType
PayOutPaymentType

PayOutPaymentType:

BANK_WIRE

The payment type of the payout

The type of Pay out

{
"BankAccountId": "14213351",
"BankWireRef": "invoice 7282",
"PaymentType": "BANK_WIRE"
}

Create a PayOut

A few important things to note regarding payouts:

  • In the production environment BankWire PayOuts will have a "CREATED" Status until they are treated by our compliance team (which happens several times a day)
  • In the sandbox environment BankWire PayOuts will be processed automatically (you must contact us if you need to test a FAILED payout)
  • When you created the production ClientId you filled the field Name which will be used on your users bank statements
  • A Bankwire could fail after it’s passed to "SUCCEEDED" – in this case, a refund of the PayOut will be made. More info is available here under "Payout error codes"
  • In the production environment, if you payout is stuck in "CREATED", this might be because you uploaded a KYC document for this user and it is pending processing
  • If a user does not have the sufficient KYC level for this payout, it will automatically pass to "FAILED" after processing on our side - more info - this is normally within a few seconds, but can be longer due to the amount or supplementary fraud checks etc we may need to do
  • For payments to GB accounts OwnerName must match either First Name and Last Name used in Natural User creation, or the Name used during Legal User creation.

Use of the "INSTANT_PAYMENT" value for PayoutModeRequested must be activated on your account and is subject to prerequisites. More info here.

POST .../v2.01/ClientId

The ID of your client account

/payouts/bankwire/

Parameters

AuthorId
string

string:

Maximum length is 255 characters

required

A user's ID

Tag
string

string:

Maximum length is 255 characters

optional

Custom data that you can add to this item

DebitedFunds
MoneyPayout

MoneyPayout:

View Sub-parameters

required

Information about the funds that are being debited

DebitedFunds.Currency
CurrencyPayout

CurrencyPayout:

AUD, CAD, CHF, DKK, EUR, GBP, HKD, JPY, NOK, PLN, SEK, USD, ZAR

required

The currency of the payout - should be ISO_4217 format

DebitedFunds.Amount
int

int

required

An amount of money in the smallest sub-division of the currency, e.g. 12.60 EUR would be represented as 1260 whereas 12 JPY would be represented as just 12)

Fees
MoneyPayout

MoneyPayout:

View Sub-parameters

required

Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)

Fees.Currency
CurrencyPayout

CurrencyPayout:

AUD, CAD, CHF, DKK, EUR, GBP, HKD, JPY, NOK, PLN, SEK, USD, ZAR

required

The currency of the payout - should be ISO_4217 format

Fees.Amount
int

int

required

An amount of money in the smallest sub-division of the currency, e.g. 12.60 EUR would be represented as 1260 whereas 12 JPY would be represented as just 12)

BankAccountId
string

string:

Maximum length is 255 characters

required

An ID of a Bank Account

DebitedWalletId
string

string:

Maximum length is 255 characters

required

The ID of the wallet that was debited

BankWireRef
string

string:

Maximum length is 12 characters

optional

A custom reference you wish to appear on the user’s bank statement (your Client Name is already shown). We advise you not to add more than 12 characters.

PayoutModeRequested
PayoutModeRequested

PayoutModeRequested:

STANDARD, INSTANT_PAYMENT, INSTANT_PAYMENT_ONLY

optional

Payout mode requested. May take one of the following values:

  • STANDARD (value by default if no parameter is sent): a standard bank wire is requested and the processing time of the funds is about 48 hours;
  • INSTANT_PAYMENT: an instant payment bank wire is requested and the processing time is within 25 seconds (subject to prerequisites);
  • INSTANT_PAYMENT_ONLY: an instant payment bank wire is requested and the processing time is within 25 seconds, but if any prerequisite is not met or another problem occurs, there is no fallback: the wallet is automatically refunded and the payout is not completed.
  • View
  • Code
    A code sample is not available
  • Run
  • View
  • Code
    A code sample is not available
  • Run
POST .../payouts/bankwire/ HTTP/1.1
Body Parameters :
{
"AuthorId": "8494514",
"Tag": "custom meta",
"DebitedFunds": {
"Currency": "lorem",
"Amount": 1260
},
"Fees": {
"Currency": "lorem",
"Amount": 1260
},
"BankAccountId": "14213351",
"DebitedWalletId": "8519987",
"BankWireRef": "invoice 7282",
"PayoutModeRequested": "STANDARD"
}
POST .../payouts/bankwire/ HTTP/1.1
Body Parameters :
{
"AuthorId": "",
"Tag": "",
"DebitedFunds": {
"Currency": "",
"Amount":
},
"Fees": {
"Currency": "",
"Amount":
},
"BankAccountId": "",
"DebitedWalletId": "",
"BankWireRef": "",
"PayoutModeRequested": ""
}

Check Instant PayOut eligibility

This method is used to check whether or not the destination bank is eligible for instant payout.

You need to set the PayoutModeRequested parameter to “INSTANT_PAYMENT” for this call to work properly.

POST .../v2.01/ClientId

The ID of your client account

/payouts/reachability/

Parameters

AuthorId
string

string:

Maximum length is 255 characters

required

A user's ID

DebitedFunds
MoneyPayout

MoneyPayout:

View Sub-parameters

required

Information about the funds that are being debited

DebitedFunds.Currency
CurrencyPayout

CurrencyPayout:

AUD, CAD, CHF, DKK, EUR, GBP, HKD, JPY, NOK, PLN, SEK, USD, ZAR

required

The currency of the payout - should be ISO_4217 format

DebitedFunds.Amount
int

int

required

An amount of money in the smallest sub-division of the currency, e.g. 12.60 EUR would be represented as 1260 whereas 12 JPY would be represented as just 12)

Fees
MoneyPayout

MoneyPayout:

View Sub-parameters

required

Information about the fees that were taken by the client for this transaction (and were hence transferred to the Client's platform wallet)

Fees.Currency
CurrencyPayout

CurrencyPayout:

AUD, CAD, CHF, DKK, EUR, GBP, HKD, JPY, NOK, PLN, SEK, USD, ZAR

required

The currency of the payout - should be ISO_4217 format

Fees.Amount
int

int

required

An amount of money in the smallest sub-division of the currency, e.g. 12.60 EUR would be represented as 1260 whereas 12 JPY would be represented as just 12)

BankAccountId
string

string:

Maximum length is 255 characters

required

An ID of a Bank Account

DebitedWalletId
string

string:

Maximum length is 255 characters

required

The ID of the wallet that was debited

BankWireRef
string

string:

Maximum length is 255 characters

optional

A custom reference you wish to appear on the user’s bank statement (your Client Name is already shown). We advise you not to add more than 12 characters.

PayoutModeRequested
PayoutModeRequested

PayoutModeRequested:

STANDARD, INSTANT_PAYMENT, INSTANT_PAYMENT_ONLY

required

Payout mode requested. May take one of the following values:

  • STANDARD (value by default if no parameter is sent): a standard bank wire is requested and the processing time of the funds is about 48 hours;
  • INSTANT_PAYMENT: an instant payment bank wire is requested and the processing time is within 25 seconds (subject to prerequisites);
  • INSTANT_PAYMENT_ONLY: an instant payment bank wire is requested and the processing time is within 25 seconds, but if any prerequisite is not met or another problem occurs, there is no fallback: the wallet is automatically refunded and the payout is not completed.
  • View
  • Code
    A code sample is not available
  • Run
    A demo is not available
  • View
  • Code
    A code sample is not available
  • Run
    A demo is not available
POST .../payouts/reachability/ HTTP/1.1
Body Parameters :
{
"AuthorId": "8494514",
"DebitedFunds": {
"Currency": "lorem",
"Amount": 1260
},
"Fees": {
"Currency": "lorem",
"Amount": 1260
},
"BankAccountId": "14213351",
"DebitedWalletId": "8519987",
"BankWireRef": "invoice 7282",
"PayoutModeRequested": "STANDARD"
}

View a PayOut

GET .../v2.01/ClientId

The ID of your client account

/payouts/PayOutId

The ID of a pay out

/
  • View
  • Code
  • Run
  • View
  • Code
  • Run
GET .../payouts/:PayOutId/ HTTP/1.1
GET .../payouts// HTTP/1.1

View a PayOut and check mode applied

GET .../v2.01/ClientId

The ID of your client account

/payouts/bankwire/PayOutId

The ID of a pay out

  • View
  • Code
    A code sample is not available
  • Run
  • View
  • Code
    A code sample is not available
  • Run
GET .../payouts/bankwire/:PayOutId HTTP/1.1
GET .../payouts/bankwire/ HTTP/1.1
Share feedback