Skip to content

接口参考总览

本章是商户 API 的接口参考。所有业务接口共用同一套加密 / 签名 / 防重放协议(见协议规范),本页汇总接口清单、公共约定与枚举值;各接口的参数与响应字段详见对应子页。

接口一览

分组基址
业务接口https://api.anonypay.io/api/merchant/
公共接口https://api.anonypay.io/api/common/
接口路径需要 token请求体加密/签名说明
getTokenPOST /api/merchant/getToken否(md5 鉴权)否(响应仍是加密信封)用 APP-ID + secret 换取 ANONY-TOKEN
createAddressPOST /api/merchant/createAddress创建收款地址(userOrder 幂等)
createWithdrawOrderPOST /api/merchant/createWithdrawOrder创建提现单(userOrder 幂等)
merchantInfoPOST /api/merchant/merchantInfo查询商户信息与各币种余额
getDepositsPOST /api/merchant/getDeposits分页查询充值记录
checkWithdrawOrderPOST /api/merchant/checkWithdrawOrderuserOrder 查询提现单状态
selfcheckPOST /api/merchant/v2/selfcheck上线自检探活,只读、可反复调用,原样回显请求内容
公共接口/api/common/*否(明文)getCurrencies / isAddress / checkTransfer / generateAddresssQrCode

实现细节

  • getToken 签发的 token 存于服务端,采用滑动过期 8 小时、绝对上限 24 小时的策略;收到 tokenExpired 时重新获取即可,无需固定周期刷新。
  • 业务接口在服务端还会校验来源 IP 白名单,不在白名单内会返回纯文本 Oops(而非 JSON 信封),排查见常见问题排查

公共说明

  • 所有接口均为 POST(仅 generateAddresssQrCodeGET)。
  • getToken 与公共接口外,所有接口的请求体为业务 JSON 的加密密文,并需带全套签名头(ANONY-APP-ID / ANONY-TOKEN / ANONY-TIMESTAMP / ANONY-NONCE / ANONY-SIGN),构造方法见协议规范
  • 请求体大小有平台上限(默认 128KB),超出会被直接拒绝。
  • 各接口文档中的“响应字段”均指验签并解密后 data 内的业务字段。
  • 建议对接前先完成上线自检,确认加密 / 签名 / 防重放链路整体正确。

统一响应信封

所有业务接口(含 getToken)的 HTTP 响应体是同一个 JSON 信封:

json
{ "code": 10000, "data": "<base64 密文>", "message": "success" }
  • code == 10000 表示成功;data 是 OAEP 加密的 base64 密文,必须先验签、再解密才能得到业务 JSON。
  • code == 9999 表示失败:message 为失败原因,data 为空。错误码清单见错误码
  • 响应头带 ANONY-TIMESTAMP / ANONY-NONCE / ANONY-SIGN,验签输入为 canonical 串 ts + "\n" + nonce + "\n" + data
  • 解析外层 JSON 请使用标准 JSON 库:响应体里 / 可能被转义为 \/,标准库会自动还原,不要手写字符串切割。

处理下行的完整四步(解析信封 → 校验时间窗/nonce → 验签 → 解密)见协议规范;SDK 已封装为 verifyResponse / verify + decrypt,见SDK 使用

枚举值

地址类型 addressType

说明
trxTRON
btcBitcoin(预留 / 待接入,正式公告前不要在生产收银台开放)
solanaSolana
eth_bnbETH / BNB
tonTON

实现细节

eth_bnb 生成的是 ETH 与 BNB 链共用的收款地址,两条链的到账都会按各自币种回调。

提现币种 currency(13 种)

trx  trx.usdt
eth  eth.usdt  eth.usdc
solana  solana.usdt  solana.usdc
bnb  bnb.usdt  bnb.usdc
ton  ton.usdt

各币种的费率与最低充提金额可通过公共接口 getCurrencies 查询。

TRON-USDC 充值已关闭

平台不支持 TRON 链 USDC(trx.usdc)充值:请勿向平台生成的 TRON(trx)收款地址转入 USDC——此类到账不会入账、不会触发回调,资金无法自动到达商户余额。提现币种枚举中也不包含 trx.usdc。请引导你的用户在 ETH / Solana / BNB 链上使用 USDC。

提现类型 withdrawType(2 种)

说明
normal普通提现
financialConfirmation财务确认提现(需财务侧确认后才执行)

实现细节

financialConfirmation 要求商户已绑定财务审核的 Telegram 账号,否则报 auditorTelegramNotBound;平台还会按商户配置的提现策略校验 withdrawType 是否允许。详见创建提现单

金额传递建议

金额类字段(amount / fee / balance 等)建议以字符串传递与解析,避免浮点数精度问题:

  • 上行:{"amount": "100.5"} 而不是 {"amount": 100.5}
  • 下行:平台返回的金额字段均为字符串,请用 decimal / BigDecimal 等精确类型处理,不要直接转 float。

相关页面

支持的链与币种对照表

创建收款地址时按下表传入 addressType;提现时 currency 使用对应的 symbol。

公链createAddress 传入 addressType收款币种提现 currency
TRONtrxTRX、USDTtrxtrx.usdt
Ethereumeth_bnb(与 BSC 共用地址)ETH、USDT、USDCetheth.usdteth.usdc
BSC (BNB Chain)eth_bnb(与 Ethereum 共用地址)BNB、USDT、USDCbnbbnb.usdtbnb.usdc
SolanasolanaSOL、USDT、USDCsolanasolana.usdtsolana.usdc
TONtonTON、USDTtonton.usdt
Bitcoinbtc(预留)待接入待接入

更多链与币种持续接入中

各币种的费率与最低金额以 getCurrencies 实时返回为准;新链上线会通过公告发布。注意 TON 链只有 USDT;TRON 链 USDC 充值已关闭(见本页顶部警告)。