Authentication
Get Token
The API is used to obtain
token, which is set on the request header. The token is expired after one hour, you can get the new token before the token expires or get a new token for requests.- URI
POST /payout/oauth/token
- Body Param
REQUEST BODY SCHEMA: application/json
Body Json Demo
Name
Type
Required
Description
appKey
string
Required
appkey; From xCurrency Hubs
secretKey
string
Required
secretKey; From xCurrency Hubs
- Response
- Response
Name
Type
Required
Description
data
string
Conditional Required
if the status is 1,the token is responded
status
string
Required
1 : Success
-1: Error
message
string
Conditional Required
if the status is -1,the err message is responded
Name
Type
Required
Description
data
string
Conditional Required
if the status is 1,the token is responded
status
string
Required
1 : Success
-1: Error
message
string
Conditional Required
if the status is -1,the err message is responded
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Check
The API is used to verify the sign data, will return
true when the sign data is correct, will return 10001 when the sign method error.- URI
POST /payout/encrypt/check
- Body Params
Encrypted object, not necessarily dictionary type
Body Json Demo
- Response
Name
Type
Required
Description
status
string
Required
1 : Success
10001: Failed to verify the signature
message
string
Conditional Required
if the status is 10001,the err message is responded
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Commons
Beneficiary's PBC area list.
The
areaLevel value of 1 is state, 2 is city, 3 is district, for beneficiary's address data can be filled by pinyin fields.Request headers just need appkey and token.- URI
GET /payout/common/area/list
- Body Params
Encrypted object, not necessarily dictionary type
Body Json Demo
Name
Type
Required
Description
xxxx
string
Conditional Required
- Response
Name
Type
Required
Description
data
array
Conditional Required
of objects (ChinaAreaInfoVo)
data → ChinaAreaInfoVo
object
Conditional Required
data → ChinaAreaInfoVo → areaLevel
string
Conditional Required
the value 1 is state, value 2 is city, value 3 is district
data → ChinaAreaInfoVo → areaKey
string
Conditional Required
the key of area
data → ChinaAreaInfoVo → code
string
Conditional Required
postal code
data → ChinaAreaInfoVo → list
array
Conditional Required
of objects (ChinaAreaInfoVo)
data → ChinaAreaInfoVo → name
string
Conditional Required
Simple Chinese of area name
data → ChinaAreaInfoVo → pinyin
string
Conditional Required
Chinese PINYIN of area name
status
string
Required
1 : Success
-1: Error
message
string
Conditional Required
if the status is -1,the err message is responded
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Beneficiary's occupation list
For beneficiary's occupation can be filled by
nameEn fields.
Request headers just need appkey and token.- URI
GET /payout/common/occupation/list
- Body Params
Body Json Demo
Name
Type
Required
Description
xxxx
string
Conditional Required
- Response
返回 json 数据
Name
Type
Required
Description
data
array
Conditional Required
of objects (OccupationEntity)
data → OccupationEntity
object
Conditional Required
data → OccupationEntity → nameCn
string
Conditional Required
Simple Chinese of occupation
data → ChinaAreaInfoVo → nameEn
string
Conditional Required
english of occupation
data → ChinaAreaInfoVo → nameTw
string
Conditional Required
Traditional Chinese of occupation
status
string
Required
1 : Success
-1: Error
message
string
Conditional Required
if the status is -1,the err message is responded
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Quotes
Get a quote
The API is used to get currency rate.
- URI
POST /payout/payment/query/price
- Body Params
Body Json Demo
Name
Type
Required
Description
sourceCurrency
string
Required
Currency you are sending
targetCurrency
string
Required
Target currency
- Response
Name
Type
Required
Description
data
object
Conditional Required
data →
queryNostring
Conditional Required
data →
ratenumber
Conditional Required
status
string
Required
1 : Success
-1: Error
message
string
Conditional Required
if the status is -1,the err message is responded
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Currencies
Transfer
Create Transfer
The API is used to create a personal payment on xCurrency, then
orderNo should be unique, the same order number can create a payment one time.- URI
POST /payout/payment/create
- Body Params
Body Json Demo
- Response
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Confirm Transfer ( Have been abandoned,pls use Async confirm transfer)
This API is used to send CNY to the beneficiary's bank account.
- URI
POST /payout/payment/transfer
- Body Params
Body Json Demo
- Response
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Async confirm transfer
This API is used to send CNY to the beneficiary's bank account, we will async to work it, and callback the result for partner.
- URI
POST /payout/payment/transfer/async
- Body Params
Body Json Demo
- Response
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Cancel transfer
The API can cancel payment, but the payment’s should be
pending.- URI
POST /payout/payment/cancel
- Body Params
Body Json Demo
- Response
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Get a transfer status
The API can get payment status, the status can see below.
- URI
POST /payout/payment/status
- Body Params
Body Json Demo
- Response
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Update Info
The API is used to update payment data, just for
payer, beneficiary, purpose , fundsSourcerelationship .- URI
POST /payout/payment/update
- Body Params
Body Json Demo
- Response
返回 json 数据
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Balance
Balance for single currency
Get balance information by currency
The API can get all currencies balance amount.
- URI
POST /payout/wallet/get
- Body Params
Body Json Demo
{ } Note that the empty dictionary still needs to be encrypted without the body- Response
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Balance list
Get balance of all currencies
- URI
POST /payout/wallet/list
- Body Params
Body Json Demo
- Response
返回 json 数据
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Upload Supporting Docs
Upload Supporting Docs for tradeId
- URI
POST /payment/risk/upload
- Body Params
Body Json Demo
- Response
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Upload Supporting Docs Completed
Completed to upload Supporting Docs for tradeId, It will change the transfer status to awaiting_transfe
- URI
POST /payment/risk/completed
- Body Params
Body Json Demo
- Response
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Notification
Order status notification
host:
xxxxxxxxx , xxxxxxxx is your callback url, the xCurrency Hubs will be notified back at xxxxxxxx/xcurrency/webhook. Need to IP allowlist if you have a limit.- URI
POST /xcurrency/webhook
- Headers
appkey: xCurrency Hubs' appkey which is used for secondary verification, not required.
- Body Params
Body Json Demo
- Response
返回 json 数据
Response Status : 200, Body Json Demo
Response Status : 400, Body Json Demo
Data API
List all areas of china
List occupations
string
Enum: "Business income" "Employment income" "Part-time income" "Saving deposits"
Sources of funding
address