API: Request examples
Overviewβ
This documentation provides an overview of the Payouts API endpoints, including requests and responses for creating payouts, retrieving payout methods, and checking payout statuses.
The examples use shop ID 115
and the test environment (stage).
Retrieve available payout methods for a shopβ
Request
curl -L -X GET 'https://gateway.stage.vertexgateway.com/api/v1/payouts/payout-methods/115' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999'
Response
{
"data": [
{
"providerCode": "connectpay",
"acquirerCode": "gcash",
"instrumentType": "wallet",
"entryMode": null,
"dataEntryModes": [
"h2h"
],
"allowedCards": [],
"transferType": null,
"currencies": [
"PHP"
],
"regions": [
"PH"
],
"isDefault": false
},
{
"providerCode": "monetix",
"acquirerCode": "monetix",
"instrumentType": "bank_transfer",
"entryMode": null,
"dataEntryModes": [
"h2h"
],
"allowedCards": [],
"transferType": "bank_wire",
"currencies": [
"MYR"
],
"regions": [
"MY"
],
"isDefault": false
},
{
"providerCode": "premierpay",
"acquirerCode": "directcredit",
"instrumentType": "bank_transfer",
"entryMode": null,
"dataEntryModes": [
"h2h"
],
"allowedCards": [],
"transferType": "bank_wire",
"currencies": [
"CAD"
],
"regions": [
"CA"
],
"isDefault": false
},
{
"providerCode": "ofapay",
"acquirerCode": "paymaya",
"instrumentType": "wallet",
"entryMode": null,
"dataEntryModes": [
"h2h"
],
"allowedCards": [],
"transferType": null,
"currencies": [
"PHP"
],
"regions": [
"PH"
],
"isDefault": false
}
]
}
Creating a Payout with Customer Information / Updating Existing Customer Informationβ
If you need to update the customer information with the corresponding customerId, simply pass the same customerId, specify the required fields for the customer object (First Name, Last Name), and provide the updated customer information.
Request
Request
- Submitting Ρustomer information
- Updating customer information
curl -L -X POST 'https://gateway.stage.vertexgateway.com/api/v1/payouts' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999' \
--data-raw '{
"shopId": 115,
"payout": {
"cost": {
"amount": "100.50",
"currency": "PHP"
},
"payoutNumber": "test001"
},
"purpose": "payment for test",
"providerCode": "ofapay",
"acquirerCode": "paymaya",
"instrumentType": "wallet",
"dataEntryMode": "h2h",
"customer": {
"customerId": "1",
"firstName": "John",
"lastName": "Doe",
"middleName": "James",
"phone": "79221110500",
"email": "john.doe@mymail.com"
},
"recipient": {
"walletData": {
"walletId": "eWallet12345",
"walletHolderName": "John Smith"
}
}
}'
curl -L -X POST 'https://gateway.stage.vertexgateway.com/api/v1/payouts' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999' \
--data-raw '{
"shopId": 115,
"payout": {
"cost": {
"amount": "100.50",
"currency": "PHP"
},
"payoutNumber": "test001"
},
"purpose": "payment for test",
"providerCode": "ofapay",
"acquirerCode": "paymaya",
"instrumentType": "wallet",
"dataEntryMode": "h2h",
"customer": {
"customerId": "1",
"firstName": "Jane",
"lastName": "Smith",
"middleName": "James",
"phone": "15857345783",
"email": "janesmith@example.com"
},
"recipient": {
"walletData": {
"walletId": "eWallet12345",
"walletHolderName": "John Smith"
}
}
}'
Complete Flow: Retrieve payout methods, create payout, check statusβ
For wallet payoutsβ
Step 1: Retrieve payout methodsβ
Request
curl -L -X GET 'https://gateway.stage.vertexgateway.com/api/v1/payouts/payout-methods/115' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999'
Response
{
"data": [
{
"providerCode": "ofapay",
"acquirerCode": "paymaya",
"instrumentType": "wallet",
"entryMode": null,
"dataEntryModes": [
"h2h"
],
"allowedCards": [],
"transferType": null,
"currencies": [
"PHP"
],
"regions": [
"PH"
],
"isDefault": false
},
{
"providerCode": "connectpay",
"acquirerCode": "gcash",
"instrumentType": "wallet",
"entryMode": null,
"dataEntryModes": [
"h2h"
],
"allowedCards": [],
"transferType": null,
"currencies": [
"PHP"
],
"regions": [
"PH"
],
"isDefault": false
}
]
}
Step 2: Retrieve required payout fieldsβ
Request
- ofapay
- connectpay
curl -L -X GET 'https://gateway.stage.vertexgateway.com/api/v1/payouts/fields/ofapay/wallet/' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999'
curl -L -X GET 'https://gateway.stage.vertexgateway.com/api/v1/payouts/fields/connectpay/wallet/' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999'
Response
- ofapay
- connectpay
{
"data": {
"recipient": {
"walletData": [
"walletId",
"walletHolderName"
]
},
"payoutOptions": {
"supportedRecipientBanks": []
}
}
}
{
"data": {
"recipient": {
"personalData": [
"phone"
]
},
"payoutOptions": {
"supportedRecipientBanks": []
}
}
}
Step 3: Create payoutβ
Request
- ofapay
- connectpay
curl -L -X POST 'https://gateway.stage.vertexgateway.com/api/v1/payouts' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999' \
--data-raw '{
"shopId": 115,
"payout": {
"cost": {
"amount": "100.50",
"currency": "PHP"
},
"payoutNumber": "test01"
},
"purpose": "payment for test",
"providerCode": "ofapay",
"acquirerCode": "paymaya",
"instrumentType": "wallet",
"dataEntryMode": "h2h",
"recipient": {
"walletData": {
"walletId": "eWallet12345",
"walletHolderName": "John Smith"
}
}
}'
curl -L -X POST 'https://gateway.stage.vertexgateway.com/api/v1/payouts' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999' \
--data-raw '{
"shopId": 115,
"payout": {
"cost": {
"amount": "100.50",
"currency": "PHP"
},
"payoutNumber": "test02"
},
"purpose": "test payout",
"providerCode": "connectpay",
"acquirerCode": "gcash",
"instrumentType": "wallet",
"dataEntryMode": "h2h",
"recipient": {
"personalData": {
"phone": "+15557654321"
}
}
}'
Response
- ofapay
- connectpay
{
"data": {
"payoutStatus": "in_progress",
"payoutNumber": "test01"
}
}
{
"data": {
"payoutStatus": "in_progress",
"payoutNumber": "test02"
}
}
Step 4: Check payout statusβ
Request
curl -L -X GET 'https://gateway.stage.vertexgateway.com/api/v1/payouts/115/test01' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999'
Response
{
"data": {
"payoutStatus": "in_progress",
"payoutNumber": "test02"
}
}
For bank transfer payoutsβ
Step 1: Retrieve payout methodsβ
Request
curl -L -X GET 'https://gateway.stage.vertexgateway.com/api/v1/payouts/payout-methods/115' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999'
Response
{
"data": [
{
"providerCode": "monetix",
"acquirerCode": "monetix",
"instrumentType": "bank_transfer",
"entryMode": null,
"dataEntryModes": [
"h2h"
],
"allowedCards": [],
"transferType": "bank_wire",
"currencies": [
"MYR"
],
"regions": [
"MY"
],
"isDefault": false
},
{
"providerCode": "premierpay",
"acquirerCode": "directcredit",
"instrumentType": "bank_transfer",
"entryMode": null,
"dataEntryModes": [
"h2h"
],
"allowedCards": [],
"transferType": "bank_wire",
"currencies": [
"CAD"
],
"regions": [
"CA"
],
"isDefault": false
}
]
}
Step 2: Retrieve required payout fieldsβ
Request
- monetix
- premierpay
curl -L -X GET 'https://gateway.stage.vertexgateway.com/api/v1/payouts/fields/monetix/bank_transfer/' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999'
curl -L -X GET 'https://gateway.stage.vertexgateway.com/api/v1/payouts/fields/premierpay/bank_transfer/' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999'
Response
- monetix
- premierpay
{
"data": {
"recipient": {
"personalData": [
"email",
"firstName",
"lastName"
],
"bankTransferData": [
"accountNumber"
]
},
"payoutOptions": {
"supportedRecipientBanks": []
}
}
}
{
"data": {
"recipient": {
"": [
""
],
"bankTransferData": [
"transitNumber",
"accountNumber",
"accountName"
],
"personalData": [
"firstName",
"lastName",
"email",
"phone"
],
"addressData": [
"address",
"city",
"state",
"countryCode",
"zipCode"
]
},
"payoutOptions": {
"supportedRecipientBanks": []
}
}
}
Step 3: Create payoutβ
Request
- monetix
- premierpay
curl -L -X POST 'https://gateway.stage.vertexgateway.com/api/v1/payouts' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999' \
--data-raw '{
"shopId": 115,
"payout": {
"cost": {
"amount": "100.50",
"currency": "MYR"
},
"payoutNumber": "test03"
},
"purpose": "for test payment",
"providerCode": "monetix",
"acquirerCode": "monetix",
"instrumentType": "bank_transfer",
"transferType": "bank_wire",
"dataEntryMode": "h2h",
"recipient": {
"personalData": {
"firstName": "John",
"lastName": "Smith",
"email": "john.smith@example.com"
},
"bankTransferData": {
"accountNumber": "123456789012"
}
}
}'
curl -L -X POST 'https://gateway.stage.vertexgateway.com/api/v1/payouts' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999' \
--data-raw '{
"shopId": 115,
"payout": {
"cost": {
"amount": "100.50",
"currency": "CAD"
},
"payoutNumber": "test04"
},
"purpose": "for test purpose",
"providerCode": "premierpay",
"acquirerCode": "directcredit",
"instrumentType": "bank_transfer",
"transferType": "bank_wire",
"dataEntryMode": "h2h",
"recipient": {
"personalData": {
"firstName": "John",
"lastName": "Smith",
"phone": "+15557654321",
"email": "john.smith@example.com"
},
"addressData": {
"countryCode": "US",
"state": "NY",
"city": "New York",
"zipCode": "10001",
"address": "456 Liberty Ave."
},
"documentData": {
"identityDocumentId": "AB1234567",
"TIN": "123456789012"
},
"bankTransferData": {
"accountNumber": "123456789012",
"accountName": "John A. Doe",
"transitNumber": "001"
}
}
}'
Response
- monetix
- premierpay
{
"data": {
"payoutStatus": "in_progress",
"payoutNumber": "test03"
}
}
{
"data": {
"payoutStatus": "in_progress",
"payoutNumber": "test04"
}
}
Step 4: Check payout statusβ
Request
curl -L -X GET 'https://gateway.stage.vertexgateway.com/api/v1/payouts/115/test03' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999'
Response
{
"data": {
"payoutStatus": "in_progress",
"payoutNumber": "test03"
}
}
For card payoutsβ
Step 1: Retrieve payout methodsβ
Request
curl -L -X GET 'https://gateway.stage.vertexgateway.com/api/v1/payouts/payout-methods/115' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999'
Response
{
"data": [
{
"providerCode": "paysage",
"acquirerCode": "paysage",
"instrumentType": "card",
"entryMode": "cnp",
"dataEntryModes": [
"h2h"
],
"allowedCards": [
"visa",
"mastercard"
],
"transferType": null,
"currencies": [
"EUR"
],
"regions": [
"AX",
"DZ"
],
"isDefault": false
}
]
}
Step 2: Retrieve required payout fieldsβ
Request
curl -L -X GET 'https://gateway.stage.vertexgateway.com/api/v1/payouts/fields/paysage/card/' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999'
Response
{
"data": {
"recipient": {
"personalData": [
"email",
"firstName",
"lastName"
],
"cardData": [
"cardNumber"
]
},
"payoutOptions": {
"supportedRecipientBanks": []
}
}
}
Step 3: Create payoutβ
Request
curl -L -X POST 'https://gateway.stage.vertexgateway.com/api/v1/payouts' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999' \
--data-raw '{
"shopId": 115,
"payout": {
"cost": {
"amount": "100.50",
"currency": "EUR"
},
"payoutNumber": "test_payout3"
},
"purpose": "some text",
"providerCode": "paysage",
"acquirerCode": "paysage",
"instrumentType": "card",
"dataEntryMode": "h2h",
"customer": {
"customerId": "56656",
"firstName": "John",
"lastName": "Doe",
"middleName": "James",
"phone": "79221110500",
"email": "john.doe@mymail.com"
},
"recipient": {
"personalData": {
"firstName": "John",
"lastName": "Smith",
"email": "john.smith@example.com"
},
"cardData": {
"cardNumber": "4111111111111111"
}
}
}'
Response
{
"data": {
"payoutStatus": "in_progress",
"payoutNumber": "test_payout3"
}
}
Step 4: Check payout statusβ
Request
curl -L -X GET 'https://gateway.stage.vertexgateway.com/api/v1/payouts/115/test_payout3' \
-H 'Accept: application/json' \
-H 'Api-Access-Token: 2d10f5be-e7fa-463e-b79e-6cb7cd226999'
Response
{
"data": {
"payoutStatus": "in_progress",
"payoutNumber": "test_payout3"
}
}