Transfer
Transfer Request
POST
/
v2
/
payments
/
open
/
api
/
transfer
付款申请
curl --request POST \
--url https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer \
--header 'Content-Type: application/json' \
--header 'signature: <api-key>' \
--data '
{
"charset": "UTF-8",
"version": "2.0.0",
"signType": "RSA",
"memberId": "2023010558663764",
"merchantId": "2023010558663764",
"requestTime": "2026-05-24T14:29:32.682+08:00",
"keyVersion": "1",
"data": {
"merchantOrderId": "2026042914410001",
"country": "AF",
"chargeOption": "SHA",
"clearingRail": "SWIFT",
"userId": "2026042900010001",
"sourceCurrency": "AED",
"destinationCurrency": "USD",
"trade": {
"amount": "1.01",
"currency": "USD"
},
"payeeInfo": {
"paymentMethodType": "BANK_TRANSFER",
"targetOrg": "FPS",
"payeeType": "PERSONAL",
"accountInfo": {
"accountNo": "string",
"accountType": "string",
"checkDigit": "string"
},
"bankInfo": {
"bankCode": "622666607777",
"bankName": "bank",
"bankBranch": "bank branch",
"bankCity": "ShangHai",
"corAccountNo": "string"
},
"name": {
"firstName": "string",
"middleName": "string",
"lastName": "string",
"fullName": "string"
},
"document": {
"documentType": "string",
"documentId": "string",
"documentIssueDate": "string",
"documentExpireDate": "string"
},
"address": {
"address": "string",
"city": "string",
"state": "string",
"zipCode": "string"
},
"payeePhone": "string",
"birthDate": "string",
"email": "string",
"payeeNationality": "CN",
"payeeGender": "string",
"payeeBirthCountry": "string"
},
"payerInfo": {
"subMerchantNo": "string",
"businessLegalName": "string",
"registrationCountry": "string",
"merchantCategoryCode": "DIGITAL_GOODS_MEDIA",
"payerId": "string",
"name": {
"firstName": "string",
"middleName": "string",
"lastName": "string",
"fullName": "string"
}
},
"channelExtra": {
"pixKeyType": "cpf",
"pixKey": "11013601513",
"documentNo": "11013601513",
"name": "string",
"lastName": "string",
"email": "string",
"phone": "string"
},
"riskParams": {
"registerName": "string",
"registerNo": "string",
"nickName": "string",
"thirdAccountNoType": "string",
"thirdAccountNo": "string",
"bindEmail": "string",
"bindPhoneNo": "string",
"accountLevel": "string",
"vipLevel": "string",
"regTime": "string",
"lastLoginTime": "string",
"liveCountry": "string",
"taxId": "string",
"cumPayoutAmount": "string",
"cumPayoutTxn": "string",
"accountBalance": "string",
"expressMerchantID": "string"
},
"expiryDays": "string",
"remark": "string",
"reference": "string",
"notifyUrl": "https://www.google.com",
"notifyEmail": "string",
"notifyPhone": "string",
"purpose": "ISUBIL"
}
}
'import requests
url = "https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer"
payload = {
"charset": "UTF-8",
"version": "2.0.0",
"signType": "RSA",
"memberId": "2023010558663764",
"merchantId": "2023010558663764",
"requestTime": "2026-05-24T14:29:32.682+08:00",
"keyVersion": "1",
"data": {
"merchantOrderId": "2026042914410001",
"country": "AF",
"chargeOption": "SHA",
"clearingRail": "SWIFT",
"userId": "2026042900010001",
"sourceCurrency": "AED",
"destinationCurrency": "USD",
"trade": {
"amount": "1.01",
"currency": "USD"
},
"payeeInfo": {
"paymentMethodType": "BANK_TRANSFER",
"targetOrg": "FPS",
"payeeType": "PERSONAL",
"accountInfo": {
"accountNo": "string",
"accountType": "string",
"checkDigit": "string"
},
"bankInfo": {
"bankCode": "622666607777",
"bankName": "bank",
"bankBranch": "bank branch",
"bankCity": "ShangHai",
"corAccountNo": "string"
},
"name": {
"firstName": "string",
"middleName": "string",
"lastName": "string",
"fullName": "string"
},
"document": {
"documentType": "string",
"documentId": "string",
"documentIssueDate": "string",
"documentExpireDate": "string"
},
"address": {
"address": "string",
"city": "string",
"state": "string",
"zipCode": "string"
},
"payeePhone": "string",
"birthDate": "string",
"email": "string",
"payeeNationality": "CN",
"payeeGender": "string",
"payeeBirthCountry": "string"
},
"payerInfo": {
"subMerchantNo": "string",
"businessLegalName": "string",
"registrationCountry": "string",
"merchantCategoryCode": "DIGITAL_GOODS_MEDIA",
"payerId": "string",
"name": {
"firstName": "string",
"middleName": "string",
"lastName": "string",
"fullName": "string"
}
},
"channelExtra": {
"pixKeyType": "cpf",
"pixKey": "11013601513",
"documentNo": "11013601513",
"name": "string",
"lastName": "string",
"email": "string",
"phone": "string"
},
"riskParams": {
"registerName": "string",
"registerNo": "string",
"nickName": "string",
"thirdAccountNoType": "string",
"thirdAccountNo": "string",
"bindEmail": "string",
"bindPhoneNo": "string",
"accountLevel": "string",
"vipLevel": "string",
"regTime": "string",
"lastLoginTime": "string",
"liveCountry": "string",
"taxId": "string",
"cumPayoutAmount": "string",
"cumPayoutTxn": "string",
"accountBalance": "string",
"expressMerchantID": "string"
},
"expiryDays": "string",
"remark": "string",
"reference": "string",
"notifyUrl": "https://www.google.com",
"notifyEmail": "string",
"notifyPhone": "string",
"purpose": "ISUBIL"
}
}
headers = {
"signature": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {signature: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
charset: 'UTF-8',
version: '2.0.0',
signType: 'RSA',
memberId: '2023010558663764',
merchantId: '2023010558663764',
requestTime: '2026-05-24T14:29:32.682+08:00',
keyVersion: '1',
data: {
merchantOrderId: '2026042914410001',
country: 'AF',
chargeOption: 'SHA',
clearingRail: 'SWIFT',
userId: '2026042900010001',
sourceCurrency: 'AED',
destinationCurrency: 'USD',
trade: {amount: '1.01', currency: 'USD'},
payeeInfo: {
paymentMethodType: 'BANK_TRANSFER',
targetOrg: 'FPS',
payeeType: 'PERSONAL',
accountInfo: {accountNo: 'string', accountType: 'string', checkDigit: 'string'},
bankInfo: {
bankCode: '622666607777',
bankName: 'bank',
bankBranch: 'bank branch',
bankCity: 'ShangHai',
corAccountNo: 'string'
},
name: {
firstName: 'string',
middleName: 'string',
lastName: 'string',
fullName: 'string'
},
document: {
documentType: 'string',
documentId: 'string',
documentIssueDate: 'string',
documentExpireDate: 'string'
},
address: {address: 'string', city: 'string', state: 'string', zipCode: 'string'},
payeePhone: 'string',
birthDate: 'string',
email: 'string',
payeeNationality: 'CN',
payeeGender: 'string',
payeeBirthCountry: 'string'
},
payerInfo: {
subMerchantNo: 'string',
businessLegalName: 'string',
registrationCountry: 'string',
merchantCategoryCode: 'DIGITAL_GOODS_MEDIA',
payerId: 'string',
name: {
firstName: 'string',
middleName: 'string',
lastName: 'string',
fullName: 'string'
}
},
channelExtra: {
pixKeyType: 'cpf',
pixKey: '11013601513',
documentNo: '11013601513',
name: 'string',
lastName: 'string',
email: 'string',
phone: 'string'
},
riskParams: {
registerName: 'string',
registerNo: 'string',
nickName: 'string',
thirdAccountNoType: 'string',
thirdAccountNo: 'string',
bindEmail: 'string',
bindPhoneNo: 'string',
accountLevel: 'string',
vipLevel: 'string',
regTime: 'string',
lastLoginTime: 'string',
liveCountry: 'string',
taxId: 'string',
cumPayoutAmount: 'string',
cumPayoutTxn: 'string',
accountBalance: 'string',
expressMerchantID: 'string'
},
expiryDays: 'string',
remark: 'string',
reference: 'string',
notifyUrl: 'https://www.google.com',
notifyEmail: 'string',
notifyPhone: 'string',
purpose: 'ISUBIL'
}
})
};
fetch('https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'charset' => 'UTF-8',
'version' => '2.0.0',
'signType' => 'RSA',
'memberId' => '2023010558663764',
'merchantId' => '2023010558663764',
'requestTime' => '2026-05-24T14:29:32.682+08:00',
'keyVersion' => '1',
'data' => [
'merchantOrderId' => '2026042914410001',
'country' => 'AF',
'chargeOption' => 'SHA',
'clearingRail' => 'SWIFT',
'userId' => '2026042900010001',
'sourceCurrency' => 'AED',
'destinationCurrency' => 'USD',
'trade' => [
'amount' => '1.01',
'currency' => 'USD'
],
'payeeInfo' => [
'paymentMethodType' => 'BANK_TRANSFER',
'targetOrg' => 'FPS',
'payeeType' => 'PERSONAL',
'accountInfo' => [
'accountNo' => 'string',
'accountType' => 'string',
'checkDigit' => 'string'
],
'bankInfo' => [
'bankCode' => '622666607777',
'bankName' => 'bank',
'bankBranch' => 'bank branch',
'bankCity' => 'ShangHai',
'corAccountNo' => 'string'
],
'name' => [
'firstName' => 'string',
'middleName' => 'string',
'lastName' => 'string',
'fullName' => 'string'
],
'document' => [
'documentType' => 'string',
'documentId' => 'string',
'documentIssueDate' => 'string',
'documentExpireDate' => 'string'
],
'address' => [
'address' => 'string',
'city' => 'string',
'state' => 'string',
'zipCode' => 'string'
],
'payeePhone' => 'string',
'birthDate' => 'string',
'email' => 'string',
'payeeNationality' => 'CN',
'payeeGender' => 'string',
'payeeBirthCountry' => 'string'
],
'payerInfo' => [
'subMerchantNo' => 'string',
'businessLegalName' => 'string',
'registrationCountry' => 'string',
'merchantCategoryCode' => 'DIGITAL_GOODS_MEDIA',
'payerId' => 'string',
'name' => [
'firstName' => 'string',
'middleName' => 'string',
'lastName' => 'string',
'fullName' => 'string'
]
],
'channelExtra' => [
'pixKeyType' => 'cpf',
'pixKey' => '11013601513',
'documentNo' => '11013601513',
'name' => 'string',
'lastName' => 'string',
'email' => 'string',
'phone' => 'string'
],
'riskParams' => [
'registerName' => 'string',
'registerNo' => 'string',
'nickName' => 'string',
'thirdAccountNoType' => 'string',
'thirdAccountNo' => 'string',
'bindEmail' => 'string',
'bindPhoneNo' => 'string',
'accountLevel' => 'string',
'vipLevel' => 'string',
'regTime' => 'string',
'lastLoginTime' => 'string',
'liveCountry' => 'string',
'taxId' => 'string',
'cumPayoutAmount' => 'string',
'cumPayoutTxn' => 'string',
'accountBalance' => 'string',
'expressMerchantID' => 'string'
],
'expiryDays' => 'string',
'remark' => 'string',
'reference' => 'string',
'notifyUrl' => 'https://www.google.com',
'notifyEmail' => 'string',
'notifyPhone' => 'string',
'purpose' => 'ISUBIL'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"signature: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer"
payload := strings.NewReader("{\n \"charset\": \"UTF-8\",\n \"version\": \"2.0.0\",\n \"signType\": \"RSA\",\n \"memberId\": \"2023010558663764\",\n \"merchantId\": \"2023010558663764\",\n \"requestTime\": \"2026-05-24T14:29:32.682+08:00\",\n \"keyVersion\": \"1\",\n \"data\": {\n \"merchantOrderId\": \"2026042914410001\",\n \"country\": \"AF\",\n \"chargeOption\": \"SHA\",\n \"clearingRail\": \"SWIFT\",\n \"userId\": \"2026042900010001\",\n \"sourceCurrency\": \"AED\",\n \"destinationCurrency\": \"USD\",\n \"trade\": {\n \"amount\": \"1.01\",\n \"currency\": \"USD\"\n },\n \"payeeInfo\": {\n \"paymentMethodType\": \"BANK_TRANSFER\",\n \"targetOrg\": \"FPS\",\n \"payeeType\": \"PERSONAL\",\n \"accountInfo\": {\n \"accountNo\": \"string\",\n \"accountType\": \"string\",\n \"checkDigit\": \"string\"\n },\n \"bankInfo\": {\n \"bankCode\": \"622666607777\",\n \"bankName\": \"bank\",\n \"bankBranch\": \"bank branch\",\n \"bankCity\": \"ShangHai\",\n \"corAccountNo\": \"string\"\n },\n \"name\": {\n \"firstName\": \"string\",\n \"middleName\": \"string\",\n \"lastName\": \"string\",\n \"fullName\": \"string\"\n },\n \"document\": {\n \"documentType\": \"string\",\n \"documentId\": \"string\",\n \"documentIssueDate\": \"string\",\n \"documentExpireDate\": \"string\"\n },\n \"address\": {\n \"address\": \"string\",\n \"city\": \"string\",\n \"state\": \"string\",\n \"zipCode\": \"string\"\n },\n \"payeePhone\": \"string\",\n \"birthDate\": \"string\",\n \"email\": \"string\",\n \"payeeNationality\": \"CN\",\n \"payeeGender\": \"string\",\n \"payeeBirthCountry\": \"string\"\n },\n \"payerInfo\": {\n \"subMerchantNo\": \"string\",\n \"businessLegalName\": \"string\",\n \"registrationCountry\": \"string\",\n \"merchantCategoryCode\": \"DIGITAL_GOODS_MEDIA\",\n \"payerId\": \"string\",\n \"name\": {\n \"firstName\": \"string\",\n \"middleName\": \"string\",\n \"lastName\": \"string\",\n \"fullName\": \"string\"\n }\n },\n \"channelExtra\": {\n \"pixKeyType\": \"cpf\",\n \"pixKey\": \"11013601513\",\n \"documentNo\": \"11013601513\",\n \"name\": \"string\",\n \"lastName\": \"string\",\n \"email\": \"string\",\n \"phone\": \"string\"\n },\n \"riskParams\": {\n \"registerName\": \"string\",\n \"registerNo\": \"string\",\n \"nickName\": \"string\",\n \"thirdAccountNoType\": \"string\",\n \"thirdAccountNo\": \"string\",\n \"bindEmail\": \"string\",\n \"bindPhoneNo\": \"string\",\n \"accountLevel\": \"string\",\n \"vipLevel\": \"string\",\n \"regTime\": \"string\",\n \"lastLoginTime\": \"string\",\n \"liveCountry\": \"string\",\n \"taxId\": \"string\",\n \"cumPayoutAmount\": \"string\",\n \"cumPayoutTxn\": \"string\",\n \"accountBalance\": \"string\",\n \"expressMerchantID\": \"string\"\n },\n \"expiryDays\": \"string\",\n \"remark\": \"string\",\n \"reference\": \"string\",\n \"notifyUrl\": \"https://www.google.com\",\n \"notifyEmail\": \"string\",\n \"notifyPhone\": \"string\",\n \"purpose\": \"ISUBIL\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("signature", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer")
.header("signature", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"charset\": \"UTF-8\",\n \"version\": \"2.0.0\",\n \"signType\": \"RSA\",\n \"memberId\": \"2023010558663764\",\n \"merchantId\": \"2023010558663764\",\n \"requestTime\": \"2026-05-24T14:29:32.682+08:00\",\n \"keyVersion\": \"1\",\n \"data\": {\n \"merchantOrderId\": \"2026042914410001\",\n \"country\": \"AF\",\n \"chargeOption\": \"SHA\",\n \"clearingRail\": \"SWIFT\",\n \"userId\": \"2026042900010001\",\n \"sourceCurrency\": \"AED\",\n \"destinationCurrency\": \"USD\",\n \"trade\": {\n \"amount\": \"1.01\",\n \"currency\": \"USD\"\n },\n \"payeeInfo\": {\n \"paymentMethodType\": \"BANK_TRANSFER\",\n \"targetOrg\": \"FPS\",\n \"payeeType\": \"PERSONAL\",\n \"accountInfo\": {\n \"accountNo\": \"string\",\n \"accountType\": \"string\",\n \"checkDigit\": \"string\"\n },\n \"bankInfo\": {\n \"bankCode\": \"622666607777\",\n \"bankName\": \"bank\",\n \"bankBranch\": \"bank branch\",\n \"bankCity\": \"ShangHai\",\n \"corAccountNo\": \"string\"\n },\n \"name\": {\n \"firstName\": \"string\",\n \"middleName\": \"string\",\n \"lastName\": \"string\",\n \"fullName\": \"string\"\n },\n \"document\": {\n \"documentType\": \"string\",\n \"documentId\": \"string\",\n \"documentIssueDate\": \"string\",\n \"documentExpireDate\": \"string\"\n },\n \"address\": {\n \"address\": \"string\",\n \"city\": \"string\",\n \"state\": \"string\",\n \"zipCode\": \"string\"\n },\n \"payeePhone\": \"string\",\n \"birthDate\": \"string\",\n \"email\": \"string\",\n \"payeeNationality\": \"CN\",\n \"payeeGender\": \"string\",\n \"payeeBirthCountry\": \"string\"\n },\n \"payerInfo\": {\n \"subMerchantNo\": \"string\",\n \"businessLegalName\": \"string\",\n \"registrationCountry\": \"string\",\n \"merchantCategoryCode\": \"DIGITAL_GOODS_MEDIA\",\n \"payerId\": \"string\",\n \"name\": {\n \"firstName\": \"string\",\n \"middleName\": \"string\",\n \"lastName\": \"string\",\n \"fullName\": \"string\"\n }\n },\n \"channelExtra\": {\n \"pixKeyType\": \"cpf\",\n \"pixKey\": \"11013601513\",\n \"documentNo\": \"11013601513\",\n \"name\": \"string\",\n \"lastName\": \"string\",\n \"email\": \"string\",\n \"phone\": \"string\"\n },\n \"riskParams\": {\n \"registerName\": \"string\",\n \"registerNo\": \"string\",\n \"nickName\": \"string\",\n \"thirdAccountNoType\": \"string\",\n \"thirdAccountNo\": \"string\",\n \"bindEmail\": \"string\",\n \"bindPhoneNo\": \"string\",\n \"accountLevel\": \"string\",\n \"vipLevel\": \"string\",\n \"regTime\": \"string\",\n \"lastLoginTime\": \"string\",\n \"liveCountry\": \"string\",\n \"taxId\": \"string\",\n \"cumPayoutAmount\": \"string\",\n \"cumPayoutTxn\": \"string\",\n \"accountBalance\": \"string\",\n \"expressMerchantID\": \"string\"\n },\n \"expiryDays\": \"string\",\n \"remark\": \"string\",\n \"reference\": \"string\",\n \"notifyUrl\": \"https://www.google.com\",\n \"notifyEmail\": \"string\",\n \"notifyPhone\": \"string\",\n \"purpose\": \"ISUBIL\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["signature"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"charset\": \"UTF-8\",\n \"version\": \"2.0.0\",\n \"signType\": \"RSA\",\n \"memberId\": \"2023010558663764\",\n \"merchantId\": \"2023010558663764\",\n \"requestTime\": \"2026-05-24T14:29:32.682+08:00\",\n \"keyVersion\": \"1\",\n \"data\": {\n \"merchantOrderId\": \"2026042914410001\",\n \"country\": \"AF\",\n \"chargeOption\": \"SHA\",\n \"clearingRail\": \"SWIFT\",\n \"userId\": \"2026042900010001\",\n \"sourceCurrency\": \"AED\",\n \"destinationCurrency\": \"USD\",\n \"trade\": {\n \"amount\": \"1.01\",\n \"currency\": \"USD\"\n },\n \"payeeInfo\": {\n \"paymentMethodType\": \"BANK_TRANSFER\",\n \"targetOrg\": \"FPS\",\n \"payeeType\": \"PERSONAL\",\n \"accountInfo\": {\n \"accountNo\": \"string\",\n \"accountType\": \"string\",\n \"checkDigit\": \"string\"\n },\n \"bankInfo\": {\n \"bankCode\": \"622666607777\",\n \"bankName\": \"bank\",\n \"bankBranch\": \"bank branch\",\n \"bankCity\": \"ShangHai\",\n \"corAccountNo\": \"string\"\n },\n \"name\": {\n \"firstName\": \"string\",\n \"middleName\": \"string\",\n \"lastName\": \"string\",\n \"fullName\": \"string\"\n },\n \"document\": {\n \"documentType\": \"string\",\n \"documentId\": \"string\",\n \"documentIssueDate\": \"string\",\n \"documentExpireDate\": \"string\"\n },\n \"address\": {\n \"address\": \"string\",\n \"city\": \"string\",\n \"state\": \"string\",\n \"zipCode\": \"string\"\n },\n \"payeePhone\": \"string\",\n \"birthDate\": \"string\",\n \"email\": \"string\",\n \"payeeNationality\": \"CN\",\n \"payeeGender\": \"string\",\n \"payeeBirthCountry\": \"string\"\n },\n \"payerInfo\": {\n \"subMerchantNo\": \"string\",\n \"businessLegalName\": \"string\",\n \"registrationCountry\": \"string\",\n \"merchantCategoryCode\": \"DIGITAL_GOODS_MEDIA\",\n \"payerId\": \"string\",\n \"name\": {\n \"firstName\": \"string\",\n \"middleName\": \"string\",\n \"lastName\": \"string\",\n \"fullName\": \"string\"\n }\n },\n \"channelExtra\": {\n \"pixKeyType\": \"cpf\",\n \"pixKey\": \"11013601513\",\n \"documentNo\": \"11013601513\",\n \"name\": \"string\",\n \"lastName\": \"string\",\n \"email\": \"string\",\n \"phone\": \"string\"\n },\n \"riskParams\": {\n \"registerName\": \"string\",\n \"registerNo\": \"string\",\n \"nickName\": \"string\",\n \"thirdAccountNoType\": \"string\",\n \"thirdAccountNo\": \"string\",\n \"bindEmail\": \"string\",\n \"bindPhoneNo\": \"string\",\n \"accountLevel\": \"string\",\n \"vipLevel\": \"string\",\n \"regTime\": \"string\",\n \"lastLoginTime\": \"string\",\n \"liveCountry\": \"string\",\n \"taxId\": \"string\",\n \"cumPayoutAmount\": \"string\",\n \"cumPayoutTxn\": \"string\",\n \"accountBalance\": \"string\",\n \"expressMerchantID\": \"string\"\n },\n \"expiryDays\": \"string\",\n \"remark\": \"string\",\n \"reference\": \"string\",\n \"notifyUrl\": \"https://www.google.com\",\n \"notifyEmail\": \"string\",\n \"notifyPhone\": \"string\",\n \"purpose\": \"ISUBIL\"\n }\n}"
response = http.request(request)
puts response.read_body{
"code": "00000003",
"message": "处理中",
"traceId": "33fae7b7aed1233f",
"data": {
"merchantOrderId": "20260430000111111",
"orderId": "INT2026061222222",
"status": "SUCCESS"
}
}Authorizations
加签(Signature)
加签是 Payloco 开放平台与商户之间用于保障报文完整性和防篡改的安全机制。
适用场景
- 商户请求 Payloco:商户使用自身私钥对请求报文进行加签。
- Payloco 返回响应:商户使用 Payloco 公钥 对响应报文进行验签。
加签规则(商户请求端)
商户需对 HTTP 请求的 Body 进行签名,具体步骤如下:
1. 计算签名(SHA256withRSA)
Signature signature = Signature.getInstance("SHA256withRSA"); signature.initSign(merchantPrivateKey); // 必须使用 UTF-8 编码 byte[] bodyBytes = requestBody.getBytes(StandardCharsets.UTF_8); signature.update(bodyBytes); byte[] signedBytes = signature.sign();
2. 将加签内容进行 Base64 编码;
String signature = Base64.getEncoder().encodeToString(signedHash);
3. 将编码后的内容放在请求头部 signature 参数中。
POST /v2/payments/open/api/pay HTTP/1.1 Content-Type: application/json signature: MIIC8jCCAdqgAwIBAgI...
Body
application/json
交互数据的编码【utf-8】
Example:
"UTF-8"
接口版本,当前版本为【2.0.0】,目前只能传2.0.0,不能不传
Maximum string length:
8Example:
"2.0.0"
报文签名类型
Example:
"RSA"
机构号
Example:
"2023010558663764"
商户号
Maximum string length:
32Example:
"2023010558663764"
请求时间,遵循rfc3339标准格式,格式为yyyy-MM-DDTHH:mm:ssSSS+TIMEZONE,yyyy-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss表示时分秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。例如:2026-05-20T13:29:35.262+08:00表示,北京时间2026年5月20日13点29分35秒。
Maximum string length:
32Example:
"2026-05-24T14:29:32.682+08:00"
密钥版本 当前值为:1
Maximum string length:
8Example:
"1"
请求数据体
Show child attributes
Show child attributes
Response
200 - application/json
OK
响应状态码,’00000000’代表成功。’00000003’代表受理中,只代表接口请求成功,不代表订单状态。
Example:
"00000003"
返回描述,’SUCCESS.’ 。只代表接口请求成功,不代表订单状态。
Example:
"SUCCESS"
请求消息唯一标识。traceId为本次调用产生的流水号,接口调用异常,可以提供此流水号用于排查问题。
Example:
"33fae7b7aed1233f"
返回数据
Show child attributes
Show child attributes
⌘I
付款申请
curl --request POST \
--url https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer \
--header 'Content-Type: application/json' \
--header 'signature: <api-key>' \
--data '
{
"charset": "UTF-8",
"version": "2.0.0",
"signType": "RSA",
"memberId": "2023010558663764",
"merchantId": "2023010558663764",
"requestTime": "2026-05-24T14:29:32.682+08:00",
"keyVersion": "1",
"data": {
"merchantOrderId": "2026042914410001",
"country": "AF",
"chargeOption": "SHA",
"clearingRail": "SWIFT",
"userId": "2026042900010001",
"sourceCurrency": "AED",
"destinationCurrency": "USD",
"trade": {
"amount": "1.01",
"currency": "USD"
},
"payeeInfo": {
"paymentMethodType": "BANK_TRANSFER",
"targetOrg": "FPS",
"payeeType": "PERSONAL",
"accountInfo": {
"accountNo": "string",
"accountType": "string",
"checkDigit": "string"
},
"bankInfo": {
"bankCode": "622666607777",
"bankName": "bank",
"bankBranch": "bank branch",
"bankCity": "ShangHai",
"corAccountNo": "string"
},
"name": {
"firstName": "string",
"middleName": "string",
"lastName": "string",
"fullName": "string"
},
"document": {
"documentType": "string",
"documentId": "string",
"documentIssueDate": "string",
"documentExpireDate": "string"
},
"address": {
"address": "string",
"city": "string",
"state": "string",
"zipCode": "string"
},
"payeePhone": "string",
"birthDate": "string",
"email": "string",
"payeeNationality": "CN",
"payeeGender": "string",
"payeeBirthCountry": "string"
},
"payerInfo": {
"subMerchantNo": "string",
"businessLegalName": "string",
"registrationCountry": "string",
"merchantCategoryCode": "DIGITAL_GOODS_MEDIA",
"payerId": "string",
"name": {
"firstName": "string",
"middleName": "string",
"lastName": "string",
"fullName": "string"
}
},
"channelExtra": {
"pixKeyType": "cpf",
"pixKey": "11013601513",
"documentNo": "11013601513",
"name": "string",
"lastName": "string",
"email": "string",
"phone": "string"
},
"riskParams": {
"registerName": "string",
"registerNo": "string",
"nickName": "string",
"thirdAccountNoType": "string",
"thirdAccountNo": "string",
"bindEmail": "string",
"bindPhoneNo": "string",
"accountLevel": "string",
"vipLevel": "string",
"regTime": "string",
"lastLoginTime": "string",
"liveCountry": "string",
"taxId": "string",
"cumPayoutAmount": "string",
"cumPayoutTxn": "string",
"accountBalance": "string",
"expressMerchantID": "string"
},
"expiryDays": "string",
"remark": "string",
"reference": "string",
"notifyUrl": "https://www.google.com",
"notifyEmail": "string",
"notifyPhone": "string",
"purpose": "ISUBIL"
}
}
'import requests
url = "https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer"
payload = {
"charset": "UTF-8",
"version": "2.0.0",
"signType": "RSA",
"memberId": "2023010558663764",
"merchantId": "2023010558663764",
"requestTime": "2026-05-24T14:29:32.682+08:00",
"keyVersion": "1",
"data": {
"merchantOrderId": "2026042914410001",
"country": "AF",
"chargeOption": "SHA",
"clearingRail": "SWIFT",
"userId": "2026042900010001",
"sourceCurrency": "AED",
"destinationCurrency": "USD",
"trade": {
"amount": "1.01",
"currency": "USD"
},
"payeeInfo": {
"paymentMethodType": "BANK_TRANSFER",
"targetOrg": "FPS",
"payeeType": "PERSONAL",
"accountInfo": {
"accountNo": "string",
"accountType": "string",
"checkDigit": "string"
},
"bankInfo": {
"bankCode": "622666607777",
"bankName": "bank",
"bankBranch": "bank branch",
"bankCity": "ShangHai",
"corAccountNo": "string"
},
"name": {
"firstName": "string",
"middleName": "string",
"lastName": "string",
"fullName": "string"
},
"document": {
"documentType": "string",
"documentId": "string",
"documentIssueDate": "string",
"documentExpireDate": "string"
},
"address": {
"address": "string",
"city": "string",
"state": "string",
"zipCode": "string"
},
"payeePhone": "string",
"birthDate": "string",
"email": "string",
"payeeNationality": "CN",
"payeeGender": "string",
"payeeBirthCountry": "string"
},
"payerInfo": {
"subMerchantNo": "string",
"businessLegalName": "string",
"registrationCountry": "string",
"merchantCategoryCode": "DIGITAL_GOODS_MEDIA",
"payerId": "string",
"name": {
"firstName": "string",
"middleName": "string",
"lastName": "string",
"fullName": "string"
}
},
"channelExtra": {
"pixKeyType": "cpf",
"pixKey": "11013601513",
"documentNo": "11013601513",
"name": "string",
"lastName": "string",
"email": "string",
"phone": "string"
},
"riskParams": {
"registerName": "string",
"registerNo": "string",
"nickName": "string",
"thirdAccountNoType": "string",
"thirdAccountNo": "string",
"bindEmail": "string",
"bindPhoneNo": "string",
"accountLevel": "string",
"vipLevel": "string",
"regTime": "string",
"lastLoginTime": "string",
"liveCountry": "string",
"taxId": "string",
"cumPayoutAmount": "string",
"cumPayoutTxn": "string",
"accountBalance": "string",
"expressMerchantID": "string"
},
"expiryDays": "string",
"remark": "string",
"reference": "string",
"notifyUrl": "https://www.google.com",
"notifyEmail": "string",
"notifyPhone": "string",
"purpose": "ISUBIL"
}
}
headers = {
"signature": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {signature: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
charset: 'UTF-8',
version: '2.0.0',
signType: 'RSA',
memberId: '2023010558663764',
merchantId: '2023010558663764',
requestTime: '2026-05-24T14:29:32.682+08:00',
keyVersion: '1',
data: {
merchantOrderId: '2026042914410001',
country: 'AF',
chargeOption: 'SHA',
clearingRail: 'SWIFT',
userId: '2026042900010001',
sourceCurrency: 'AED',
destinationCurrency: 'USD',
trade: {amount: '1.01', currency: 'USD'},
payeeInfo: {
paymentMethodType: 'BANK_TRANSFER',
targetOrg: 'FPS',
payeeType: 'PERSONAL',
accountInfo: {accountNo: 'string', accountType: 'string', checkDigit: 'string'},
bankInfo: {
bankCode: '622666607777',
bankName: 'bank',
bankBranch: 'bank branch',
bankCity: 'ShangHai',
corAccountNo: 'string'
},
name: {
firstName: 'string',
middleName: 'string',
lastName: 'string',
fullName: 'string'
},
document: {
documentType: 'string',
documentId: 'string',
documentIssueDate: 'string',
documentExpireDate: 'string'
},
address: {address: 'string', city: 'string', state: 'string', zipCode: 'string'},
payeePhone: 'string',
birthDate: 'string',
email: 'string',
payeeNationality: 'CN',
payeeGender: 'string',
payeeBirthCountry: 'string'
},
payerInfo: {
subMerchantNo: 'string',
businessLegalName: 'string',
registrationCountry: 'string',
merchantCategoryCode: 'DIGITAL_GOODS_MEDIA',
payerId: 'string',
name: {
firstName: 'string',
middleName: 'string',
lastName: 'string',
fullName: 'string'
}
},
channelExtra: {
pixKeyType: 'cpf',
pixKey: '11013601513',
documentNo: '11013601513',
name: 'string',
lastName: 'string',
email: 'string',
phone: 'string'
},
riskParams: {
registerName: 'string',
registerNo: 'string',
nickName: 'string',
thirdAccountNoType: 'string',
thirdAccountNo: 'string',
bindEmail: 'string',
bindPhoneNo: 'string',
accountLevel: 'string',
vipLevel: 'string',
regTime: 'string',
lastLoginTime: 'string',
liveCountry: 'string',
taxId: 'string',
cumPayoutAmount: 'string',
cumPayoutTxn: 'string',
accountBalance: 'string',
expressMerchantID: 'string'
},
expiryDays: 'string',
remark: 'string',
reference: 'string',
notifyUrl: 'https://www.google.com',
notifyEmail: 'string',
notifyPhone: 'string',
purpose: 'ISUBIL'
}
})
};
fetch('https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'charset' => 'UTF-8',
'version' => '2.0.0',
'signType' => 'RSA',
'memberId' => '2023010558663764',
'merchantId' => '2023010558663764',
'requestTime' => '2026-05-24T14:29:32.682+08:00',
'keyVersion' => '1',
'data' => [
'merchantOrderId' => '2026042914410001',
'country' => 'AF',
'chargeOption' => 'SHA',
'clearingRail' => 'SWIFT',
'userId' => '2026042900010001',
'sourceCurrency' => 'AED',
'destinationCurrency' => 'USD',
'trade' => [
'amount' => '1.01',
'currency' => 'USD'
],
'payeeInfo' => [
'paymentMethodType' => 'BANK_TRANSFER',
'targetOrg' => 'FPS',
'payeeType' => 'PERSONAL',
'accountInfo' => [
'accountNo' => 'string',
'accountType' => 'string',
'checkDigit' => 'string'
],
'bankInfo' => [
'bankCode' => '622666607777',
'bankName' => 'bank',
'bankBranch' => 'bank branch',
'bankCity' => 'ShangHai',
'corAccountNo' => 'string'
],
'name' => [
'firstName' => 'string',
'middleName' => 'string',
'lastName' => 'string',
'fullName' => 'string'
],
'document' => [
'documentType' => 'string',
'documentId' => 'string',
'documentIssueDate' => 'string',
'documentExpireDate' => 'string'
],
'address' => [
'address' => 'string',
'city' => 'string',
'state' => 'string',
'zipCode' => 'string'
],
'payeePhone' => 'string',
'birthDate' => 'string',
'email' => 'string',
'payeeNationality' => 'CN',
'payeeGender' => 'string',
'payeeBirthCountry' => 'string'
],
'payerInfo' => [
'subMerchantNo' => 'string',
'businessLegalName' => 'string',
'registrationCountry' => 'string',
'merchantCategoryCode' => 'DIGITAL_GOODS_MEDIA',
'payerId' => 'string',
'name' => [
'firstName' => 'string',
'middleName' => 'string',
'lastName' => 'string',
'fullName' => 'string'
]
],
'channelExtra' => [
'pixKeyType' => 'cpf',
'pixKey' => '11013601513',
'documentNo' => '11013601513',
'name' => 'string',
'lastName' => 'string',
'email' => 'string',
'phone' => 'string'
],
'riskParams' => [
'registerName' => 'string',
'registerNo' => 'string',
'nickName' => 'string',
'thirdAccountNoType' => 'string',
'thirdAccountNo' => 'string',
'bindEmail' => 'string',
'bindPhoneNo' => 'string',
'accountLevel' => 'string',
'vipLevel' => 'string',
'regTime' => 'string',
'lastLoginTime' => 'string',
'liveCountry' => 'string',
'taxId' => 'string',
'cumPayoutAmount' => 'string',
'cumPayoutTxn' => 'string',
'accountBalance' => 'string',
'expressMerchantID' => 'string'
],
'expiryDays' => 'string',
'remark' => 'string',
'reference' => 'string',
'notifyUrl' => 'https://www.google.com',
'notifyEmail' => 'string',
'notifyPhone' => 'string',
'purpose' => 'ISUBIL'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"signature: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer"
payload := strings.NewReader("{\n \"charset\": \"UTF-8\",\n \"version\": \"2.0.0\",\n \"signType\": \"RSA\",\n \"memberId\": \"2023010558663764\",\n \"merchantId\": \"2023010558663764\",\n \"requestTime\": \"2026-05-24T14:29:32.682+08:00\",\n \"keyVersion\": \"1\",\n \"data\": {\n \"merchantOrderId\": \"2026042914410001\",\n \"country\": \"AF\",\n \"chargeOption\": \"SHA\",\n \"clearingRail\": \"SWIFT\",\n \"userId\": \"2026042900010001\",\n \"sourceCurrency\": \"AED\",\n \"destinationCurrency\": \"USD\",\n \"trade\": {\n \"amount\": \"1.01\",\n \"currency\": \"USD\"\n },\n \"payeeInfo\": {\n \"paymentMethodType\": \"BANK_TRANSFER\",\n \"targetOrg\": \"FPS\",\n \"payeeType\": \"PERSONAL\",\n \"accountInfo\": {\n \"accountNo\": \"string\",\n \"accountType\": \"string\",\n \"checkDigit\": \"string\"\n },\n \"bankInfo\": {\n \"bankCode\": \"622666607777\",\n \"bankName\": \"bank\",\n \"bankBranch\": \"bank branch\",\n \"bankCity\": \"ShangHai\",\n \"corAccountNo\": \"string\"\n },\n \"name\": {\n \"firstName\": \"string\",\n \"middleName\": \"string\",\n \"lastName\": \"string\",\n \"fullName\": \"string\"\n },\n \"document\": {\n \"documentType\": \"string\",\n \"documentId\": \"string\",\n \"documentIssueDate\": \"string\",\n \"documentExpireDate\": \"string\"\n },\n \"address\": {\n \"address\": \"string\",\n \"city\": \"string\",\n \"state\": \"string\",\n \"zipCode\": \"string\"\n },\n \"payeePhone\": \"string\",\n \"birthDate\": \"string\",\n \"email\": \"string\",\n \"payeeNationality\": \"CN\",\n \"payeeGender\": \"string\",\n \"payeeBirthCountry\": \"string\"\n },\n \"payerInfo\": {\n \"subMerchantNo\": \"string\",\n \"businessLegalName\": \"string\",\n \"registrationCountry\": \"string\",\n \"merchantCategoryCode\": \"DIGITAL_GOODS_MEDIA\",\n \"payerId\": \"string\",\n \"name\": {\n \"firstName\": \"string\",\n \"middleName\": \"string\",\n \"lastName\": \"string\",\n \"fullName\": \"string\"\n }\n },\n \"channelExtra\": {\n \"pixKeyType\": \"cpf\",\n \"pixKey\": \"11013601513\",\n \"documentNo\": \"11013601513\",\n \"name\": \"string\",\n \"lastName\": \"string\",\n \"email\": \"string\",\n \"phone\": \"string\"\n },\n \"riskParams\": {\n \"registerName\": \"string\",\n \"registerNo\": \"string\",\n \"nickName\": \"string\",\n \"thirdAccountNoType\": \"string\",\n \"thirdAccountNo\": \"string\",\n \"bindEmail\": \"string\",\n \"bindPhoneNo\": \"string\",\n \"accountLevel\": \"string\",\n \"vipLevel\": \"string\",\n \"regTime\": \"string\",\n \"lastLoginTime\": \"string\",\n \"liveCountry\": \"string\",\n \"taxId\": \"string\",\n \"cumPayoutAmount\": \"string\",\n \"cumPayoutTxn\": \"string\",\n \"accountBalance\": \"string\",\n \"expressMerchantID\": \"string\"\n },\n \"expiryDays\": \"string\",\n \"remark\": \"string\",\n \"reference\": \"string\",\n \"notifyUrl\": \"https://www.google.com\",\n \"notifyEmail\": \"string\",\n \"notifyPhone\": \"string\",\n \"purpose\": \"ISUBIL\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("signature", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer")
.header("signature", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"charset\": \"UTF-8\",\n \"version\": \"2.0.0\",\n \"signType\": \"RSA\",\n \"memberId\": \"2023010558663764\",\n \"merchantId\": \"2023010558663764\",\n \"requestTime\": \"2026-05-24T14:29:32.682+08:00\",\n \"keyVersion\": \"1\",\n \"data\": {\n \"merchantOrderId\": \"2026042914410001\",\n \"country\": \"AF\",\n \"chargeOption\": \"SHA\",\n \"clearingRail\": \"SWIFT\",\n \"userId\": \"2026042900010001\",\n \"sourceCurrency\": \"AED\",\n \"destinationCurrency\": \"USD\",\n \"trade\": {\n \"amount\": \"1.01\",\n \"currency\": \"USD\"\n },\n \"payeeInfo\": {\n \"paymentMethodType\": \"BANK_TRANSFER\",\n \"targetOrg\": \"FPS\",\n \"payeeType\": \"PERSONAL\",\n \"accountInfo\": {\n \"accountNo\": \"string\",\n \"accountType\": \"string\",\n \"checkDigit\": \"string\"\n },\n \"bankInfo\": {\n \"bankCode\": \"622666607777\",\n \"bankName\": \"bank\",\n \"bankBranch\": \"bank branch\",\n \"bankCity\": \"ShangHai\",\n \"corAccountNo\": \"string\"\n },\n \"name\": {\n \"firstName\": \"string\",\n \"middleName\": \"string\",\n \"lastName\": \"string\",\n \"fullName\": \"string\"\n },\n \"document\": {\n \"documentType\": \"string\",\n \"documentId\": \"string\",\n \"documentIssueDate\": \"string\",\n \"documentExpireDate\": \"string\"\n },\n \"address\": {\n \"address\": \"string\",\n \"city\": \"string\",\n \"state\": \"string\",\n \"zipCode\": \"string\"\n },\n \"payeePhone\": \"string\",\n \"birthDate\": \"string\",\n \"email\": \"string\",\n \"payeeNationality\": \"CN\",\n \"payeeGender\": \"string\",\n \"payeeBirthCountry\": \"string\"\n },\n \"payerInfo\": {\n \"subMerchantNo\": \"string\",\n \"businessLegalName\": \"string\",\n \"registrationCountry\": \"string\",\n \"merchantCategoryCode\": \"DIGITAL_GOODS_MEDIA\",\n \"payerId\": \"string\",\n \"name\": {\n \"firstName\": \"string\",\n \"middleName\": \"string\",\n \"lastName\": \"string\",\n \"fullName\": \"string\"\n }\n },\n \"channelExtra\": {\n \"pixKeyType\": \"cpf\",\n \"pixKey\": \"11013601513\",\n \"documentNo\": \"11013601513\",\n \"name\": \"string\",\n \"lastName\": \"string\",\n \"email\": \"string\",\n \"phone\": \"string\"\n },\n \"riskParams\": {\n \"registerName\": \"string\",\n \"registerNo\": \"string\",\n \"nickName\": \"string\",\n \"thirdAccountNoType\": \"string\",\n \"thirdAccountNo\": \"string\",\n \"bindEmail\": \"string\",\n \"bindPhoneNo\": \"string\",\n \"accountLevel\": \"string\",\n \"vipLevel\": \"string\",\n \"regTime\": \"string\",\n \"lastLoginTime\": \"string\",\n \"liveCountry\": \"string\",\n \"taxId\": \"string\",\n \"cumPayoutAmount\": \"string\",\n \"cumPayoutTxn\": \"string\",\n \"accountBalance\": \"string\",\n \"expressMerchantID\": \"string\"\n },\n \"expiryDays\": \"string\",\n \"remark\": \"string\",\n \"reference\": \"string\",\n \"notifyUrl\": \"https://www.google.com\",\n \"notifyEmail\": \"string\",\n \"notifyPhone\": \"string\",\n \"purpose\": \"ISUBIL\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://gate.uat.payloco.com/gateway/v2/payments/open/api/transfer")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["signature"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"charset\": \"UTF-8\",\n \"version\": \"2.0.0\",\n \"signType\": \"RSA\",\n \"memberId\": \"2023010558663764\",\n \"merchantId\": \"2023010558663764\",\n \"requestTime\": \"2026-05-24T14:29:32.682+08:00\",\n \"keyVersion\": \"1\",\n \"data\": {\n \"merchantOrderId\": \"2026042914410001\",\n \"country\": \"AF\",\n \"chargeOption\": \"SHA\",\n \"clearingRail\": \"SWIFT\",\n \"userId\": \"2026042900010001\",\n \"sourceCurrency\": \"AED\",\n \"destinationCurrency\": \"USD\",\n \"trade\": {\n \"amount\": \"1.01\",\n \"currency\": \"USD\"\n },\n \"payeeInfo\": {\n \"paymentMethodType\": \"BANK_TRANSFER\",\n \"targetOrg\": \"FPS\",\n \"payeeType\": \"PERSONAL\",\n \"accountInfo\": {\n \"accountNo\": \"string\",\n \"accountType\": \"string\",\n \"checkDigit\": \"string\"\n },\n \"bankInfo\": {\n \"bankCode\": \"622666607777\",\n \"bankName\": \"bank\",\n \"bankBranch\": \"bank branch\",\n \"bankCity\": \"ShangHai\",\n \"corAccountNo\": \"string\"\n },\n \"name\": {\n \"firstName\": \"string\",\n \"middleName\": \"string\",\n \"lastName\": \"string\",\n \"fullName\": \"string\"\n },\n \"document\": {\n \"documentType\": \"string\",\n \"documentId\": \"string\",\n \"documentIssueDate\": \"string\",\n \"documentExpireDate\": \"string\"\n },\n \"address\": {\n \"address\": \"string\",\n \"city\": \"string\",\n \"state\": \"string\",\n \"zipCode\": \"string\"\n },\n \"payeePhone\": \"string\",\n \"birthDate\": \"string\",\n \"email\": \"string\",\n \"payeeNationality\": \"CN\",\n \"payeeGender\": \"string\",\n \"payeeBirthCountry\": \"string\"\n },\n \"payerInfo\": {\n \"subMerchantNo\": \"string\",\n \"businessLegalName\": \"string\",\n \"registrationCountry\": \"string\",\n \"merchantCategoryCode\": \"DIGITAL_GOODS_MEDIA\",\n \"payerId\": \"string\",\n \"name\": {\n \"firstName\": \"string\",\n \"middleName\": \"string\",\n \"lastName\": \"string\",\n \"fullName\": \"string\"\n }\n },\n \"channelExtra\": {\n \"pixKeyType\": \"cpf\",\n \"pixKey\": \"11013601513\",\n \"documentNo\": \"11013601513\",\n \"name\": \"string\",\n \"lastName\": \"string\",\n \"email\": \"string\",\n \"phone\": \"string\"\n },\n \"riskParams\": {\n \"registerName\": \"string\",\n \"registerNo\": \"string\",\n \"nickName\": \"string\",\n \"thirdAccountNoType\": \"string\",\n \"thirdAccountNo\": \"string\",\n \"bindEmail\": \"string\",\n \"bindPhoneNo\": \"string\",\n \"accountLevel\": \"string\",\n \"vipLevel\": \"string\",\n \"regTime\": \"string\",\n \"lastLoginTime\": \"string\",\n \"liveCountry\": \"string\",\n \"taxId\": \"string\",\n \"cumPayoutAmount\": \"string\",\n \"cumPayoutTxn\": \"string\",\n \"accountBalance\": \"string\",\n \"expressMerchantID\": \"string\"\n },\n \"expiryDays\": \"string\",\n \"remark\": \"string\",\n \"reference\": \"string\",\n \"notifyUrl\": \"https://www.google.com\",\n \"notifyEmail\": \"string\",\n \"notifyPhone\": \"string\",\n \"purpose\": \"ISUBIL\"\n }\n}"
response = http.request(request)
puts response.read_body{
"code": "00000003",
"message": "处理中",
"traceId": "33fae7b7aed1233f",
"data": {
"merchantOrderId": "20260430000111111",
"orderId": "INT2026061222222",
"status": "SUCCESS"
}
}