# 1、建立收款
請求方式
- POST
請求 URL
/api/v3/wallet/pay
請求 Header
Content-Type: application/json;charset=utf-8
請求頭參數
| 參數名 | 類型 | 描述 | 範例值 |
|---|---|---|---|
| access_key | String | 商戶後台獲取 | pFqV75X3 |
| timestamp | int64 | 13位時間戳(毫秒) | 1679724896223 |
| nonce | String | 隨機字符串(UUID V4) | 794c26b0-d33c-4394-b2bb-c485eca16d9e |
| sign | String | 使用金鑰生成的簽名 | kAXyh+eerqrefyaF8dyFB0M4FVo= |
請求參數(JSON)
{
"externalOrderId": "402297358314559082",
"cashierChainType": "ETH",
"cashierTokenType": "USDT",
"cashierCryptoAmount": "1",
"cashierCurrencyType": "USD",
"hiddenMerchantLogo": 0,
"hiddenMerchantName": 0,
"notifyUrl": "http://192.168.1.135:30002/url",
"remark": "123"
}
參數說明
| 參數名 | 類型 | 描述 | 是否必填 |
|---|---|---|---|
| externalOrderId | String(64) | 商戶訂單 ID | 是 |
| cashierChainType | String | 主鏈類型:TRON BSC ETH | 否 |
| cashierTokenType | String | 加密幣種,枚舉值:USDT USDC | 否 |
| cashierCryptoAmount | String | 加密金額,精度根據代幣取(與cashierCurrencyAmount二選一) | 否 |
| cashierCurrencyAmount | String | 法幣金額,精度≤2位(與cashierCryptoAmount二選一;會按照平台匯率自動換算對應加密金額) | 否 |
| cashierCurrencyType | String | 法幣類型,枚舉值:USD、BRL、CNY(若傳法幣金額,則必傳) | 否 |
| hiddenMerchantLogo | int64 | 是否隱藏商戶 Logo,枚舉值:0、1 0-不隱藏Logo 1-隱藏Logo (不傳預設為0) | 否 |
| hiddenMerchantName | int64 | 是否隱藏商戶名稱,枚舉值:0、1 0-不隱藏名稱 1-隱藏名稱 (不傳預設為0) | 否 |
| notifyUrl | String | 回呼地址(如果有傳,則回呼該地址;如果沒有,則回呼商戶後台配置的回呼地址) | 否 |
| remark | String(1024) | 訂單備註 | 否 |
| successRedirectUrl | String | 支付成功後跳轉地址 | 否 |
響應類型
Content-Type: application/json;charset=utf-8
響應範例1(根據加密類型提單)
{
"code": "200",
"success": true,
"msg": "成功",
"msgEn": "SUCCESS",
"data": {
"cashierId": "OCRYPPAID202307310902391690794159250DOCKER020000000200001107",
"cashierUrl": "http://192.168.1.74:89/OCRYPPAID202307310902391690794159250DOCKER020000000200001107",
"cashierExpireTime": 1690794759313,
"cashierCryptoAmount": "1",
"cashierCurrencyAmount": "0.98",
"cashierRate": 0.983,
"cashierCurrencyType": "USD",
"cashierTokenType": "USDT",
"cashierChainType": "ETH",
"isHiddenMerchantName": false,
"isHiddenMerchantLogo": false,
"externalOrderId": "402297358314559082",
"remark": "123",
"cryptoOrder": {
"addressTo": "0xe072c63c1e04f8c6f36133f6629f66778147d5d8",
"orderId": "OCRYPPAID202307310902391690794159441DOCKER020000000400001108",
"externalOrderId": "402297358314559082",
"exchangeRate": 0.983,
"currencyAmount": "0.98",
"cryptoAmount": "1",
"currencyType": "USD",
"tokenType": "USDT",
"chainType": "ETH",
"orderStatus": "Wait pay",
"orderStatusCode": 1,
"orderExpireTime": 1690801360527
}
}
}
響應範例2(根據法幣類型提單)
{
"code":"200",
"success":true,
"msg":"成功",
"msgEn":"SUCCESS",
"data":{
"cashierId":"OCRYPPAID20250417031656174485981616300000201297223",
"cashierUrl":"http://192.168.1.74:89/OCRYPPAID2025041703165617448598161630000201297223",
"cashierExpireTime":1744860416178,
"cashierCurrencyAmount":10,
"cashierRate":0,
"cashierCurrencyType":"BRL",
"cashierTokenType":"",
"cashierChainType":"",
"isHiddenMerchantName":true,
"isHiddenMerchantLogo":true,
"externalOrderId":"00637444",
"remark":"test order",
"cryptoOrder":{
}
}
}
響應參數說明
| 參數名 | 類型 | 描述 |
|---|---|---|
| cashierId | String | 收銀台 ID |
| cashierUrl | String | 收銀台連結 |
| cashierExpireTime | int64 | 收銀台有效期時間戳 |
| cashierCryptoAmount | string | 收銀台加密金額 |
| cashierCurrencyAmount | string | 收銀台法幣金額 |
| cashierRate | float64 | 收銀台目前匯率 |
| cashierCurrencyType | String | 收銀台法幣類型 |
| cashierTokenType | String | 收銀台加密幣類型 |
| cashierChainType | String | 收銀台加密主鏈類型 |
| isHiddenMerchantName | Boolean | 是否隱藏商戶名 |
| isHiddenMerchantLogo | Boolean | 是否隱藏商戶 Logo |
| externalOrderId | String | 商戶訂單號 |
| remark | String | 備註 |
| addressTo | String | 區塊鏈收款地址 |
| orderId | String | 訂單 ID |
| exchangeRate | float64 | 產生訂單時匯率 |
| currencyAmount | String | 訂單法幣金額 |
| cryptoAmount | String | 訂單加密幣金額 |
| currencyType | String | 訂單法幣類型 |
| tokenType | String | 訂單加密幣種 |
| chainType | String | 訂單主鏈類型 |
| orderExpireTime | int64 | 訂單過期時間戳 |
| orderStatus | String | 訂單狀態描述 |
| orderStatusCode | int64 | 狀態碼,枚舉值:1、2、4、8、16 正常建立收款訂單的響應為1,後續其他狀態可以透過查詢/回呼更新。詳細說明請參考下方訂單狀態碼說明 |
訂單狀態碼說明
| 狀態碼 | 狀態描述 | 是否終態 | 說明 |
|---|---|---|---|
| 1 | 待支付 | 否 | 訂單已建立,使用者尚未付款;無需處理 |
| 2 | 鏈上確認中 | 否 | 使用者在收銀台點擊「已完成支付」,系統正在檢測鏈上是否到賬;無需處理 |
| 4 | 已完成 | 是 | 支付成功,系統會觸發回呼;商戶需根據業務邏輯增加餘額或完成發貨等操作 |
| 8 | 支付金額不匹配 | 是 | 使用者支付金額 ≠ 應付金額,系統會觸發回呼;建議按實際支付金額入賬 |
| 16 | 超時收款 | 是 | 使用者支付超時,系統不會再回呼;商戶如確認收款到賬需手動處理 |
| 32 | 未支付(地址釋放) | 是 | 使用者長時間未支付,地址釋放;若後續支付將產生新訂單 |