Payouts APIs
Create Virtual Account#
URL - https://api.portone.cloud/api/merchant/{portone-client-key}/payout/va
Method - POST
| Field | Column | Value Type | Description |
|---|---|---|---|
| key | Required | string | PortOne client key |
| map_id | Required | string | merchant unique id |
| customer_name | Required | string | Name of Account Holder |
| channel_key | Required | string | channel to execute payouts from |
| bank_code | Required | string | bank code |
| personal_info | Optional | json | person information of the account holder |
| signature_hash | Required | string | HMAC SHA256 hash |
personal_info
| Field | Column | Value Type | Description |
|---|---|---|---|
| phone | Optional | string | phone no |
| Optional | string | ||
| address | Optional | string | address |
| id | Optional | string | merchant unique id for account holder |
Sample cURL Request
Get List Virtual Accounts#
URL - https://api.portone.cloud/api/merchant/{portone-client-key}/payout/va
Method - GET
Sample curl request
Create Beneficiary#
URL - https://api.portone.cloud/api/merchant/{portone-client-key}/payout/vendors
METHOD - POST
| Field | Column | Value Type | Description |
|---|---|---|---|
| name | Required | string | Name of Beneficiary |
| Required | string | Email of Beneficiary | |
| address | string | Address of Beneficiary | |
| bank_account_number | Required | string | Beneficiary Bank Account Number |
| bank_account_name | Required | string | Beneficiary Bank Account Name |
| bank_name | Required | string | Beneficiary Bank Name |
| bank_account_type | Required | string | Beneficiary Bank Type - "0" for savings |
| bank_no | Required | string | Beneficiary Bank Number |
| signature_hash | Required | string | HMAC SHA256 hash |
Sample curl request
Get List of Beneficiaries#
URL - https://api.portone.cloud/api/merchant/{portone-client-key}/payout/vendors
METHOD - GET
Sample cURL Request
Create Payouts#
URL - https://api.portone.cloud/api/payout/transaction
METHOD - POST
| Field | Column | Value Type | Description |
|---|---|---|---|
| virtual_acc_no | Required | string | Virtual Account Number |
| key | Required | string | PortOne Client Key |
| channel_key | Required | string | Payout Channel/Provider Key |
| txn_details | Required | array | Each element has PayoutTransaction details |
| signature_hash | Required | string | HMAC SHA256 hash |
txn_details
| Field | Column | Value Type | Description |
|---|---|---|---|
| txn_ref | Required | string | Merchant Unique Transaction Reference |
| bank_details | Required | json | Beneficiary bank details |
| trigger_time | Required | ISO format string | Payout Schedule Time |
| amount | Required | string | Amount to deposit |
| currency | Required | string | Currency of Amount |
| remarks | string | Remarks |
bank_details
| Field | Column | value type | Description |
|---|---|---|---|
| account_no | Required | string | Beneficiary Account Number |
| account_type | Required | string | Beneficiary Bank Type - "0" for savings |
| account_name | Required | string | Beneficiary Account Name |
| bank_no | Required | string | Beneficiary Bank Number |
| bank_name | Required | string | Beneficiary Bank Name |
| signature_hash | Required | string | HMAC-SHA256 hash |
Sample cURL Request
Generate OTP#
URL - https://api.portone.cloud/api/merchant/payout/approve/generateOTP
METHOD - POST
| Field | Column | Value type | Description |
|---|---|---|---|
| approver_email | Required | string | Approver Email to get OTP |
Sample curl request โ
Approve Payouts#
URL โ https://api.portone.cloud/api/merchant/payout/approve
METHOD โ POST
| Field | Column | Value Type | Description |
|---|---|---|---|
| approver_email | required | string | Approver Email Id |
| otp | required | string | OTP generated using no.6 API |
| approver_name | required | string | Approver Name |
| txn_refs | required | array | Transaction Refs to Approve |
| signature_hash | required | string | HMAC SHA256 hash |
Sample curl request
Add Bank Account for Beneficiary#
METHOD - PUT
Sample curl request
Get List of Payouts#
URL - https://api.portone.cloud/api/merchant/{portone-client-key}/payouts METHOD - POST
Sample curl request
Get Virtual Account Balance#
URL - https://api.portone.cloud/api/payout/va/{virtual-account-number}/balance METHOD - GET
Sample curl request
Get Payout Transaction Status#
URL - https://api.portone.cloud/api/payout/{payout-transaction-ref}/status
METHOD - GET
Sample curl request
Update Payout Transaction Status#
URL - https://api.portone.cloud/api/payout/{payout-transaction-ref}/status/Cancelled
METHOD - PUT
Sample curl request
Beneficiary Bank Account Verification#
URL - https://api.portone.cloud/api/payout/vendor/account/verification
METHOD - POST
| Field | Column | value type | description |
|---|---|---|---|
| chaipay_key | required | string | portone client key |
| channel_key | required | string | Provider/Channel to use |
| bank_number | required | string | Bank Number |
| account_number | required | string | Bank Account Number |
| account_name | required | string | Bank Account Name |
| request_id | required | string | Unique request Id |
| type | required | string | Account Type - can be "account" |
| signature_hash | required | string | HMAC SHA256 hash |
Sample curl request
Get Virtual Account Statement (Paginated)#
URL - https://api.portone.cloud/api/payout/va/{virtual-account-number}/statement
METHOD - POST
| Field | Column | Value Type | Description | Defaults |
|---|---|---|---|---|
| from | optional | string | From Date - ISO format, default is current time - 24 hours | |
| to | optional | string | To Date - ISO format, default is current time | |
| page | optional | string | page no, default is 1 | |
| pagesize | optional | string | pagesize, default is 10 |
Sample curl request