JPY Collection Application
curl --request POST \
--url https://uat-interface.haipay.asia/jpy/collect/apply \
--header 'Content-Type: application/json' \
--data '
{
"appId": 123,
"orderId": "<string>",
"name": "<string>",
"phone": "<string>",
"email": "jsmith@example.com",
"amount": "<string>",
"payType": "<string>",
"inBankCode": "<string>",
"callBackUrl": "<string>",
"callBackFailUrl": "<string>",
"partnerUserId": "<string>",
"sign": "<string>",
"notifyUrl": "<string>",
"subject": "<string>",
"body": "<string>"
}
'import requests
url = "https://uat-interface.haipay.asia/jpy/collect/apply"
payload = {
"appId": 123,
"orderId": "<string>",
"name": "<string>",
"phone": "<string>",
"email": "jsmith@example.com",
"amount": "<string>",
"payType": "<string>",
"inBankCode": "<string>",
"callBackUrl": "<string>",
"callBackFailUrl": "<string>",
"partnerUserId": "<string>",
"sign": "<string>",
"notifyUrl": "<string>",
"subject": "<string>",
"body": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
appId: 123,
orderId: '<string>',
name: '<string>',
phone: '<string>',
email: 'jsmith@example.com',
amount: '<string>',
payType: '<string>',
inBankCode: '<string>',
callBackUrl: '<string>',
callBackFailUrl: '<string>',
partnerUserId: '<string>',
sign: '<string>',
notifyUrl: '<string>',
subject: '<string>',
body: JSON.stringify('<string>')
})
};
fetch('https://uat-interface.haipay.asia/jpy/collect/apply', 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://uat-interface.haipay.asia/jpy/collect/apply",
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([
'appId' => 123,
'orderId' => '<string>',
'name' => '<string>',
'phone' => '<string>',
'email' => 'jsmith@example.com',
'amount' => '<string>',
'payType' => '<string>',
'inBankCode' => '<string>',
'callBackUrl' => '<string>',
'callBackFailUrl' => '<string>',
'partnerUserId' => '<string>',
'sign' => '<string>',
'notifyUrl' => '<string>',
'subject' => '<string>',
'body' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$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://uat-interface.haipay.asia/jpy/collect/apply"
payload := strings.NewReader("{\n \"appId\": 123,\n \"orderId\": \"<string>\",\n \"name\": \"<string>\",\n \"phone\": \"<string>\",\n \"email\": \"jsmith@example.com\",\n \"amount\": \"<string>\",\n \"payType\": \"<string>\",\n \"inBankCode\": \"<string>\",\n \"callBackUrl\": \"<string>\",\n \"callBackFailUrl\": \"<string>\",\n \"partnerUserId\": \"<string>\",\n \"sign\": \"<string>\",\n \"notifyUrl\": \"<string>\",\n \"subject\": \"<string>\",\n \"body\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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://uat-interface.haipay.asia/jpy/collect/apply")
.header("Content-Type", "application/json")
.body("{\n \"appId\": 123,\n \"orderId\": \"<string>\",\n \"name\": \"<string>\",\n \"phone\": \"<string>\",\n \"email\": \"jsmith@example.com\",\n \"amount\": \"<string>\",\n \"payType\": \"<string>\",\n \"inBankCode\": \"<string>\",\n \"callBackUrl\": \"<string>\",\n \"callBackFailUrl\": \"<string>\",\n \"partnerUserId\": \"<string>\",\n \"sign\": \"<string>\",\n \"notifyUrl\": \"<string>\",\n \"subject\": \"<string>\",\n \"body\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://uat-interface.haipay.asia/jpy/collect/apply")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"appId\": 123,\n \"orderId\": \"<string>\",\n \"name\": \"<string>\",\n \"phone\": \"<string>\",\n \"email\": \"jsmith@example.com\",\n \"amount\": \"<string>\",\n \"payType\": \"<string>\",\n \"inBankCode\": \"<string>\",\n \"callBackUrl\": \"<string>\",\n \"callBackFailUrl\": \"<string>\",\n \"partnerUserId\": \"<string>\",\n \"sign\": \"<string>\",\n \"notifyUrl\": \"<string>\",\n \"subject\": \"<string>\",\n \"body\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"status": "<string>",
"error": "<string>",
"msg": "<string>",
"data": {
"orderId": "<string>",
"orderNo": "<string>",
"payUrl": "<string>",
"sign": "<string>"
}
}Japan
Collection Application
Use the appId corresponding to JPY. After successful user payment, the JPY balance will be increased.
POST
/
jpy
/
collect
/
apply
JPY Collection Application
curl --request POST \
--url https://uat-interface.haipay.asia/jpy/collect/apply \
--header 'Content-Type: application/json' \
--data '
{
"appId": 123,
"orderId": "<string>",
"name": "<string>",
"phone": "<string>",
"email": "jsmith@example.com",
"amount": "<string>",
"payType": "<string>",
"inBankCode": "<string>",
"callBackUrl": "<string>",
"callBackFailUrl": "<string>",
"partnerUserId": "<string>",
"sign": "<string>",
"notifyUrl": "<string>",
"subject": "<string>",
"body": "<string>"
}
'import requests
url = "https://uat-interface.haipay.asia/jpy/collect/apply"
payload = {
"appId": 123,
"orderId": "<string>",
"name": "<string>",
"phone": "<string>",
"email": "jsmith@example.com",
"amount": "<string>",
"payType": "<string>",
"inBankCode": "<string>",
"callBackUrl": "<string>",
"callBackFailUrl": "<string>",
"partnerUserId": "<string>",
"sign": "<string>",
"notifyUrl": "<string>",
"subject": "<string>",
"body": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
appId: 123,
orderId: '<string>',
name: '<string>',
phone: '<string>',
email: 'jsmith@example.com',
amount: '<string>',
payType: '<string>',
inBankCode: '<string>',
callBackUrl: '<string>',
callBackFailUrl: '<string>',
partnerUserId: '<string>',
sign: '<string>',
notifyUrl: '<string>',
subject: '<string>',
body: JSON.stringify('<string>')
})
};
fetch('https://uat-interface.haipay.asia/jpy/collect/apply', 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://uat-interface.haipay.asia/jpy/collect/apply",
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([
'appId' => 123,
'orderId' => '<string>',
'name' => '<string>',
'phone' => '<string>',
'email' => 'jsmith@example.com',
'amount' => '<string>',
'payType' => '<string>',
'inBankCode' => '<string>',
'callBackUrl' => '<string>',
'callBackFailUrl' => '<string>',
'partnerUserId' => '<string>',
'sign' => '<string>',
'notifyUrl' => '<string>',
'subject' => '<string>',
'body' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$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://uat-interface.haipay.asia/jpy/collect/apply"
payload := strings.NewReader("{\n \"appId\": 123,\n \"orderId\": \"<string>\",\n \"name\": \"<string>\",\n \"phone\": \"<string>\",\n \"email\": \"jsmith@example.com\",\n \"amount\": \"<string>\",\n \"payType\": \"<string>\",\n \"inBankCode\": \"<string>\",\n \"callBackUrl\": \"<string>\",\n \"callBackFailUrl\": \"<string>\",\n \"partnerUserId\": \"<string>\",\n \"sign\": \"<string>\",\n \"notifyUrl\": \"<string>\",\n \"subject\": \"<string>\",\n \"body\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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://uat-interface.haipay.asia/jpy/collect/apply")
.header("Content-Type", "application/json")
.body("{\n \"appId\": 123,\n \"orderId\": \"<string>\",\n \"name\": \"<string>\",\n \"phone\": \"<string>\",\n \"email\": \"jsmith@example.com\",\n \"amount\": \"<string>\",\n \"payType\": \"<string>\",\n \"inBankCode\": \"<string>\",\n \"callBackUrl\": \"<string>\",\n \"callBackFailUrl\": \"<string>\",\n \"partnerUserId\": \"<string>\",\n \"sign\": \"<string>\",\n \"notifyUrl\": \"<string>\",\n \"subject\": \"<string>\",\n \"body\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://uat-interface.haipay.asia/jpy/collect/apply")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"appId\": 123,\n \"orderId\": \"<string>\",\n \"name\": \"<string>\",\n \"phone\": \"<string>\",\n \"email\": \"jsmith@example.com\",\n \"amount\": \"<string>\",\n \"payType\": \"<string>\",\n \"inBankCode\": \"<string>\",\n \"callBackUrl\": \"<string>\",\n \"callBackFailUrl\": \"<string>\",\n \"partnerUserId\": \"<string>\",\n \"sign\": \"<string>\",\n \"notifyUrl\": \"<string>\",\n \"subject\": \"<string>\",\n \"body\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"status": "<string>",
"error": "<string>",
"msg": "<string>",
"data": {
"orderId": "<string>",
"orderNo": "<string>",
"payUrl": "<string>",
"sign": "<string>"
}
}Secret Key & Private Key (Generate Signature)
Related Topics
Body
application/json
Business ID (obtained from backend, must pass corresponding business ID based on currency in URL)
Merchant order number
Maximum string length:
48Recipient name
Real phone number
Real email address
Transaction amount (no decimal places allowed)
Pattern:
^\d+$URL to redirect after successful payment
URL to redirect after failed payment
Unique user identifier (e.g., userId), used for risk control, must be real and valid, otherwise it will affect transactions. Format requirements: digits, uppercase and lowercase letters or common symbols -~!@#$%&*()_.
Pattern:
^[A-Za-z0-9\-~!@#$%&*()_]+$Signature
Callback URL
Payment remark
Remark details
Last modified on July 9, 2026
Was this page helpful?
⌘I

