參數 | 類型 | 必填 | 說明 | 示例 |
---|---|---|---|---|
merchantId | Integer | 是 | 商戶號,在用戶中心獲取 | 2000213 |
timestamp | Integer | 是 | 當前時間戳 | 1732182368 |
nonce | Integer | 是 | 隨機數 | 304789 |
body | String | 否 | body是業務參數,可選。 業務參數數組轉化為json之後,再用base64編碼,詳見0.2 | YWJjZGVmZzEyMzQ1Njc4OTA= |
sign | String | 是 | MD5簽名,簽名規則見0.3 | 2de03a66b9daf209687b98acce4cef81 |
將業務參數轉變為JSON字符串之後,再用base64編碼後得到的結果。例如:您的業務參數轉化為json之後是 {"chainType":160,"callUrl":"http:\/\/xxx.com\/ubao_callback.html"},將這個JSON字符串再用base64編碼,得到的結果:eyJtYWluQ29pblR5cGUiOjE2MCwiY2FsbFVybCI6Imh0dHA6XC9cL3h4eC5jb21cL3ViYW9fY2FsbGJhY2suaHRtbCJ9 ,即是body的值
將 body、api_key、nonce、timestamp 這4個字符串按照這裏的順序連接起來,轉換為md5,即可得到簽名。 商戶號以及api_key ,在用戶中心獲取
參見錯誤代碼
異步通知,同樣由body、nonce、timestamp、sign構成。其中 body 是用 base64編碼過的。將body、api_key 、nonce、timestamp 按此處順序連接起來,再經過MD5加密,即可得到簽名。將此簽名與返回的 sign 對比,如果一致,則驗簽成功。將body經過 base64解碼後,即可得到json字符串,裏邊是通知的內容。
異步通知,分為3類,都使用同一個回調地址,即生成地址時填寫的回調地址。用 body 中的 callbackType 字段加以區分。這三個種類是:充幣(recharge)、提幣或轉賬(transfer)、余額變動(balance),當body 中的 callbackType = recharge 時,說明這是一個充幣的通知,其他2種類推。
生成指定鏈的地址,如要成功生成地址,需要先添加過此鏈 調試工具 、SDK
/mch/address/create
參數 | 類型 | 必填 | 說明 | 示例 |
---|---|---|---|---|
chainType | Integer | 是 | 鏈別編號,參見最後一條 | 160 |
callUrl | String | 是 | 回調地址,通過該接口創建的地址,以後關於該地址的充幣信息會通過您指定的回調地址通知您 | http://xxx.com/ubao_callback.html |
type | Inegter | 否 | 類型:0為收款地址,2為歸集錢包。-2為觀察錢包。默認為0 | 0 |
{"code":200,"message":"SUCCESS","address":"TQcK2oKpeVAE1mvYEudYJHgCr47F5ba8hk","chainType":160}
參見錯誤代碼
提幣申請,只能是歸集錢包。收款錢包,請使用歸集功能。
/mch/withdraw
參數 | 類型 | 必填 | 說明 | 示例 |
---|---|---|---|---|
from | String | 是 | 提幣地址 | 0xE27be41F25D66A05d1fBA4DeEF740921a5F26980 |
to | String | 是 | 收幣地址 | 0xc9Da8e789Ee111b40DFf90805DfE000f303e2582 |
amount | String | 是 | 提幣數量 | 10.32 |
coinID | Integer | 是 | 幣種編號,參見最後一條 | 1002 |
chainType | Integer | 是 | 主幣鏈,參見本文最末 | 170 |
order_sn | String | 否 | 業務編號,該字段將原樣返回,方便您識別業務 | 12345 |
{"code":200,"message":"SUCCESS"}
參見錯誤代碼
如果不確定自己提交的地址是否符合要求,可以先校驗合法性
/mch/address/check
參數 | 類型 | 必填 | 說明 | 示例 |
---|---|---|---|---|
chainType | Integer | 是 | 鏈別編號,見本文最末 | 160 |
address | String | 是 | 需要校驗的地址 | TWJQVNivkcvyAwbEuWPmZT9E5oZBC2dUXt |
{"code":200,"message":"SUCCESS"}
參見錯誤代碼
添加一個外部錢包的觀察地址
/mch/address/add
參數 | 類型 | 必填 | 說明 | 示例 |
---|---|---|---|---|
chainType | Integer | 是 | 主幣類型,參見本文最末 | 170 |
address | String | 是 | 地址 | 0xdac17f958d2ee523a2206206994597c13d831ec7 |
callUrl | String | 是 | 回調URL | http://xxx.com/callback.html |
{"code":200,"message":"SUCCESS"}
參見錯誤代碼
獲取商戶支持的幣種
/mch/coins
{"code":200,"message":"SUCCESS","coins":"[]"}
參見錯誤代碼
將收款錢包中的余額,歸集到歸集錢包
/mch/address/pooling
參數 | 類型 | 必填 | 說明 | 示例 |
---|---|---|---|---|
coinID | Integer | 是 | 幣種,參見本文最末 | 1002 |
address | String | 是 | 需要歸集的地址 | TWJQVNivkcvyAwbEuWPmZT9E5oZBC2dUXt |
{"code":200,"message":"SUCCESS"}
參見錯誤代碼
在DAPP中,獲得地址後,還需要驗證地址所有權,防止用觀察錢包來登錄,類似情況下,需要來驗證所有權。如果返回結果result=true,說明是地址的主人
/mch/address/verify
參數 | 類型 | 必填 | 說明 | 示例 |
---|---|---|---|---|
address | String | 是 | 需要驗證的錢包地址 | 0xdd0 ...... 99Cb79 |
message | String | 是 | 一個隨意的字符串即可,可以是隨機字符串 | xxx.com:user:1999-10-10 11:12:00 |
sign | String | 是 | 用上面的字符串生成的簽名 | xxxxxxxxxxxxxxxxxxyyyyyyyyyyyyzzzzzzz |
chainType | Integer | 是 | 鏈別:見最下邊。170是幣安(BSC)鏈 | 170 |
{"code":200,"message":"SUCCESS","result":"true"}
參見錯誤代碼
UBAO檢測到收款地址充幣後,將會通知該地址留下的回調URL。通知內容為:nonce、timestamp、sign、body,簽名驗證方式,與API相同。body需要base64解碼。 調試工具 、SDK
參數 | 類型 | 說明 | 示例 |
---|---|---|---|
callbackType | String | recharge:充幣,transfer:提幣或轉賬,balance:余額通知 | recharge |
amount | String | 金額,可結合精度,計算出真正金額 | 98260 |
decimals | Integer | 精度 | 6 |
address | String | 收款地址 | 0xc2132d05d31c914a87c6611c10748aeb04b58e8f |
chainType | Integer | 鏈別,參見本文最末 | 170 |
coinType | String | 代幣合約地址,參見本文最末 | 0x55d398326f99059ff775485246999027b3197955 |
coinID | Integer | 幣種編號,參見本文最末 | 1002 |
hash | String | 唯一交易HASH,請記錄、檢查,以名重復回調 | 0x0000000xxxxx.... |
fromAddress | String | 付款地址 | 0xc2132d05d31c914a87c6611c10748aeb04b58e8f |
coinName | String | 幣名 | USDT |
SUCCESS
如果您的業務處理成功,請返回 SUCCESS 。如果你的業務處理失敗,可以返回 FAIL 或其他值。如果沒有返回 SUCCESS,UBAO將會在5、15、30分鐘再次回調,3次都失敗的話,將會放棄。需要的話,可在用戶中心手動回調。
當您提幣或轉賬(只能通過歸集錢包),UBAO處理之後,會通過此歸集錢包留下的回調URL,通知您。通知內容為:nonce、timestamp、sign、body,簽名驗證方式,與API相同。body需要base64解碼 調試工具 、SDK
參數 | 類型 | 說明 | 示例 |
---|---|---|---|
callbackType | String | recharge:充幣,transfer:提幣或轉賬,balance:余額通知 | transfer |
result | Integer | 1:成功,0:失敗 | 1 |
amount | Long | 轉賬金額,與精度配合使用 | 1234 |
decimals | Integer | 精度 | 18 |
coinID | Integer | 幣種編號,見本文集最末 | 1002 |
coinName | String | 幣名 | USDT |
address | String | 轉出地址 | 0xdac17f958d2ee523a2206206994597c13d831ec7 |
toAddress | String | 收款地址 | 0xdac17f958d2ee523a2206206994597c13d831ec7 |
coinType | String | 代幣合約地址 | 0x55d398326f99059ff775485246999027b3197955 |
hash | String | 唯一交易HASH,請記錄、檢查,以名重復回調 | 0x00000011111...... |
order_sn | String | 您提幣時傳入的訂單編號,原樣返回 | 123456 |
chain | String | 鏈 | bsc |
chainType | String | 鏈別,參見本文最末 | 170 |
message | String | 返回消息,成功,或者失敗原因 | OK |
tradeId | Integer | 在UBAO的唯一交易ID | 192201 |
SUCCESS
如果您的業務處理成功,請返回 SUCCESS 。如果你的業務處理失敗,可以返回 FAIL 或其他值。如果沒有返回 SUCCESS,UBAO將會在5、15、30分鐘再次回調,3次都失敗的話,將會放棄。需要的話,可在用戶中心手動回調。
UBAO檢測到余額變動時,會通過此地址留下的回調URL,通知您變化。通知內容為:nonce、timestamp、sign、body,簽名驗證方式,與API相同。body需要base64解碼 調試工具 、SDK
參數 | 類型 | 說明 | 示例 |
---|---|---|---|
callbackType | String | recharge:充幣,transfer:提幣或轉賬,balance:余額通知 | balance |
address | String | 錢包地址 | 0x00033 |
amount | Long | 最新余額,與精度配合使用 | 3390 |
decimals | Integer | 精度 | 18 |
coinID | Integer | 幣種編號,見下方 | 1002 |
coinName | String | 幣名 | USDT |
coinType | String | 代幣合約地址 | 0x55d398326f99059ff775485246999027b3197955 |
chainType | Integer | 鏈編號,見下方 | 170 |
SUCCESS
如果您的業務處理成功,請返回 SUCCESS 。如果你的業務處理失敗,可以返回 FAIL 或其他值。如果沒有返回 SUCCESS,UBAO將會在5、15、30分鐘再次回調,3次都失敗的話,將會放棄。需要的話,可在用戶中心手動回調。
編號 | 幣名 | 官方名稱 | 鏈編號 | 鏈 | 代幣合約地址 |
---|---|---|---|---|---|
1001 | BNB | BNB | 170 | BSC | |
1002 | USDT BEP20 | BSC-USD | 170 | BSC | 0x55d398326f99059ff775485246999027b3197955 |
1003 | TRX | TRX | 160 | TRON | |
1004 | USDT TRC20 | Tether USD | 160 | TRON | TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t |
1005 | ETH | ETH | 180 | ETH | |
1006 | USDT ERC20 | USDT | 180 | ETH | 0xdac17f958d2ee523a2206206994597c13d831ec7 |
1008 | POL | POL | 190 | Polygon | |
1009 | USDT ERC20 | (Pos)Tether USD | 190 | Polygon | 0xc2132d05d31c914a87c6611c10748aeb04b58e8f |
1010 | USDC BEP20 | Binance-Peg USD Coin | 170 | BSC | 0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d |
1011 | USDC TRC20 | USD Coin | 160 | TRON | TEkxiTehnzSmSe2XqrBj4w32RUN966rdz8 |
1012 | USDC ERC20 | Token USDC | 180 | ETH | 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 |