Payouts
Making payouts on Verto is easy. Verto allows you to send to over 190 countries and in 40+ currencies.
Sending funds or making payouts requires creating a beneficiary account under your subaccount, and then sending funds to that beneficiary.
Please note that all payments will require a fee. This is dependent on the pricing plan you’re on or your commercial agreement. Need clarity, reach out to your sales contact or account manager.
Verto doesn't support payouts to these countries.
Create a beneficiary account
Login to your subaccount :
[https://beta-docs.vertofx.com/update/docs/login-as-subaccount-api#/](https://beta-docs.vertofx.com/update/docs/login-as-subaccount-api#/
To create a beneficiary account, you need the accountNumber and nationaId (bank code) among other details such as beneficiaryEntityType, currency, beneficiaryCountryCode and country.
For the nationalId:
- The bank code can be the routing number or ABA code if you plan on sending to a local account or BIC/SWIFT if you’re sending to a USD offshore bank account.
- The bank code can be the sort code if you plan on sending to a GBP bank account and a SWIFT code if you’re sending to a GBP account internationally.
beneficiaryEntityType refers to the beneficiary type, individual or company.
{
"beneficiaryEntityType": "individual",
"accountNumber": "9090961234",
"beneficiaryCountryCode": "NG",
"beneficiaryEmail": "[email protected]",
"country": "Singapore",
"beneficiaryFirstName": "Winning",
"beneficiaryLastName": "Winning",
"nationalId": "ABNGNGLA",
"currency": "USD",
"clientReference": "testing"
}{
"success": true,
"account": {
"id": 4566,
"accountNumber": "9090961234",
"bankName": "Access Bank Plc",
"beneficiaryAddress": "14/15, Prince Alaba Abiodun Oniru R Victoria Island",
"beneficiaryCity": "Lagos",
"beneficiaryCountryCode": "NG",
"beneficiaryEntityType": "individual",
"beneficiaryPostcode": "",
"beneficiaryEmail": "[email protected]",
"country": "Nigeria",
"reference": "RP-27102024-003",
"beneficiaryFirstName": "Winning",
"beneficiaryLastName": "Winning",
"nationalId": "ABNGNGLA",
"currency": "NGN",
"clientReference": "testing",
"status": "approved"
}
}Once the call to Create a Beneficiary is successful, the default status is requested. All added beneficiaries have a status - requested, pending and approved. Only payments to an approved beneficiary will go through. Your beneficiary should be automatically approved if you can make at least third-party payments. You can then proceed to make a payout to the beneficiary.
Paying out funds to the beneficiary’s account.
Once the beneficiary has been created successfully and approved, you can pay that beneficiary using the create payment request endpoint.
To initiate the payout, you need to specify walletId you intend to use (the wallet you intend to debit), the beneficiaryId (the beneficiary you just created), purposeId, paymentId and amount. You can pass on important information that you want to be sent as part of the payment using the clientReference field.
Ideally, you should be debiting the wallet you converted funds into as the wallet is adequately funded. You won’t be able to initiate payment if your wallet isn’t funded (insufficient funds).
{
"beneficiaryId": 3772,
"purposeId": 12,
"amount": 10000,
"walletId": 3064,
"clientReference": "2F9Dwd123",
"paymentId": ""
}{
"success": true,
"payment": {
"id": 447,
"userId": 4,
"reference": "TO-26072022-002",
"paymentId": "a7600e0e-a973-4d26-b15c-89de5836e900",
"clientReference": "Testing",
"account": {
"id": 278,
"accountNumber": "8311547163",
"bankName": "Community Federal Savings Bank",
"beneficiaryAddress": "89-16 JAMAICA AVENUE",
"beneficiaryCity": "QUEENS",
"beneficiaryCompanyName": "OLSEN INDUSTRIA E COMERCIO SA",
"beneficiaryCountryCode": "US",
"beneficiaryEntityType": "company",
"country": "USA",
"reference": "RP-09062022-004",
"beneficiaryFirstName": "",
"beneficiaryLastName": "",
"nationalId": "CMFGUS33",
"currency": "USD",
"clientReference": null,
"status": "approved"
},
"currency": "USD"
}
}The beneficiaryId indicates the individual or company that will receive the funds.
You should also make a fetch request to the get purpose codes endpoint to retrieve the purpose code that is appropriate for your payment.
Be sure to confirm your wallet balance using the get wallet endpoint to ensure your balance is sufficient before initiating the payment. The get wallet endpoint also allows you to get the balance of the wallet you intend to send the funds.
Get status updates about your payout
Once the payment is initiated, the status of the payment will be sent via a webhook. The initial status will be requested and will move to completed once we send out the payment.
{
"payload": {
"id": 6548,
"amount": "200000.00",
"reference": "TO-22092024-005",
"state": "completed",
"currency": "NGN",
"paymentId": null,
"type": "wallet_to_account",
"clientReference": null,
"account": {
"id": 4369,
"accountNumber": "9079135431",
"bankName": "MONIEPOINT MICROFINANCE BANK",
"beneficiaryAddress": "",
"beneficiaryCity": "",
"beneficiaryCompanyName": "",
"beneficiaryCountryCode": "",
"beneficiaryEntityType": "individual",
"beneficiaryPostcode": "",
"beneficiaryEmail": "",
"country": "Nigeria",
"reference": "RP-19062024-003",
"beneficiaryFirstName": "Daniel",
"beneficiaryLastName": "Torkura",
"nationalId": "090405",
"currency": "NGN",
"clientReference": "",
"status": "approved"
},
"walletId": 2561,
"createdDate": "2024-09-22T14:26:07.000Z",
"completedDate": "2024-09-22T14:26:46.018Z",
"archivedDate": null
}
}{
"success": true,
"payment": {
"id": 416,
"amount": "100.00",
"reference": "TO-16062022-007",
"state": "requested",
"currency": "INR",
"clientReference": "Payment-100",
"account": {
"id": 285,
"accountNumber": "2000293918130",
"bankName": "PUNJAB NATIONAL BANK",
"beneficiaryAddress": "INSTITUTIONAL AREA, PLOT, NO.05 PNB SWIFT CENTRE - FLOOR 1 GURUGRAM - SECTOR 32",
"beneficiaryCity": "HARYANA",
"beneficiaryCompanyName": "OLSEN INDUSTRIA E COMERCIO SA",
"beneficiaryCountryCode": "IN",
"beneficiaryEntityType": "company",
"country": "India",
"reference": "RP-16062022-001",
"beneficiaryFirstName": "",
"beneficiaryLastName": "",
"nationalId": "PUNB0644100",
"currency": "INR",
"clientReference": "Test-Bene100",
"status": "approved"
}
}
}You can also get the status of the payment by calling the Create a Payment Request. The state field will provide the latest status of the payment.
- Requested - requested means the payment has been requested successfully.
- Completed - completed means the payment has been sent out successfully.
- Archived - archived means the payment has been cancelled.
Updated 7 months ago
