Skip to content

Hexpay API 文档

此页面展示了 Hexpay 提供的一些运行时 API 的使用方法。

API base URL- 请联系客服获取

收银台下单支付接口

  • 数据类型:JSON(content-type:application/json)
  • 请求⽅式:POST
  • 路径Path: /v1/hexpay/trade/order
  • 验证方式:签名验证

接口说明

该接口接受商户传入的订单信息,创建用于跳转到Hexpay的支付链接。

请求参数

字段名类型最大长度是否必输说明
mchNoString30商户号
mchOrderNoString64商户订单号(唯一)
currencyString10订单币种,可选值:USDT、USDC、AED、AUD、AZN、BDT、BRL、CAD、CHF、CLP、COP、CRC、CZK、DKK、DOP、DZD、EGP、EUR、GBP、GEL、HKD、HUF、ILS、INR、JPY、KRW、KWD、MAD、MXN、MYR、NGN、NOK、PEN、PHP、PLN、RON、SAR、SEK、SGD、THB、TND、TRY、UAH、USD、XAF、ZAR、INR、GHS、XAF等(持续更新中)
defaultCurrencyString10使用onramp通道时,期望选择的默认法币。比如收USDT,期望默认使用INR支付,参数为:currency=USDT,defaultCurrency=INR
networkString30网络,可选值:Solana、Ethereum、Polygon、Arbitrum、Binance_smart_chain、Tron(维护中)
bizCodeInteger通道编号,不确定时不要传,由接口自动适配
amountBigDecimal长度20,小数位6订单金额
mchUserIdString32商户侧用户id
goodsGoods Type-商品说明
appIdString64应用id,商户平台创建应用分配
signString512签名
signTypeString10签名类型,默认值RSA2
notifyUrlString256异步通知地址(可以在商户后台进行配置)
successUrlString256成功后跳转页面(可以在商户后台进行配置)
failUrlString256失败跳转页面(可以在商户后台进行配置)
clientIpString32终端用户ip(辅助判断国家/地区、语言)
autoChangeCurrencyBoolean-是否自动换汇(自动计算不同国家/地区对应币种的价格)
mchCoverFeeBoolean-是否商户承担手续费
versionString10版本号,例:v1.0

Goods Type

字段名类型是否必输说明
goodsNameString商品名称
goodsDetailString商品描述
goodsTypeString商品分类

请求示例数据

json
{
    "mchNo":"M1752564528",
    "mchOrderNo":"378758439",
    "amount":11,
    "currency":"USDC",
    "network":"Solana",
    "bizCode":0,
    "goods": {
        "goodsType": "shop",
        "goodsName": "T-shirt",
        "goodsDetail": "xxxxxxxxxxx"
    },
    "mchUserId":"1230987",
    "appId":"68760330a2cf0af37c52a073",    "sign":"VaKMVivLXtqJw6kp7PyNaI6P7qoLM9kOXms5Tll8TsX0eubZ0F+bbxGpfaTR2zpCZkVr/iygD4QyuueMt+pMOAOXZ2yayFGloyKL1mMfNHzb5PDPMhU3cKm6cb+BCHkfk5S602rCBFrQSEhVgQiwpd5ezI6NAdw4+EdPwVmzXH6pVZ9YXNSp9n1O8caS5dL0bjhWxO5EFWrxhbfFNLgWy1OXRs9e02wHZXbzukAkbuJl6UZDpPKKluy2m1BbgxYYYHlx4sunBsE8vP5vj50UHg8KK4v1K/XXzx+oIpZQ85895ZFAISLO9V7ugdlXx/+jrpzg2xnEOK9ss/oSSbdDoQ==",
    "signType":"RSA2",
    "version":"v1.0"
}

响应参数

字段名类型是否必须说明
codeString响应码
dataString响应数据
msgString响应信息

data数据格式

字段名类型说明
payOrderIdString支付订单ID
networkString网络
locationString收银台前端地址
currencyString支付货币类型
amountBigDecimal支付金额
orderStateByte订单状态,0-订单生成、1-支付中、2-支付成功、3-支付失败、4-已撤销、5-已退款、6-订单关闭或超时
json
{
    "code": 0,
    "data": {
        "amount": 11,
        "currency": "USDC",
        "location": "http://localhost:5173/pay?payOrderId=P1947225344373334017",
        "network": "Solana",
        "orderState": 0,
        "payOrderId": "P1947225344373334017"
    },
    "msg": "SUCCESS"
}

查询订单状态接口

  • 数据类型:JSON(content-type:application/json)
  • 请求⽅式:GET
  • 路径Path: /v1/hexpay/trade/query
  • 验证方式:签名验证

接口说明

该接口接受商户传入的订单号,查询订单状态。

请求参数

字段名类型最大长度是否必输说明
appIdString64应用id,商户后台创建
mchNoString30商户号
versionString10版本:v1.0
signTypeString10签名类型:当前版本仅支持RSA2
signString256签名
payOrderIdString30与mchOrderNo至少传1个支付订单Id
mchOrderNoString64与payOrderId至少传1个商户订单号

请求示例

JSON
{
    "payOrderId":"P1947211653281546242",
    "appId":"68760330a2cf0af37c52a073",
    "mchNo":"M1752564528",
    "version":"v1.0",
    "sign":"57842768902",
    "signType":"RSA2"
}

响应参数

字段名类型是否必须说明
codeString响应码
dataString响应数据
msgString响应信息
signString响应签名

data

字段名类型是否必须说明
payOrderIdString支付订单号
mchNoString商户号
mchOrderNoString商户订单号(唯一)
mchNameString商户名称
mchUserIdString商户侧用户id
amountBigDecimal订单金额
refundAmountBigDecimal退款金额
stateInteger状态
waitNetworkString待支付网络
waitPayCurrencyString待支付金额
wayCodeString支付方式
realPayAmountBigDecimal实际支付金额
realPayCurrencyString实际支付币种
realNetworkString实际支付网络
goodsGoods商品信息
createdAtDate订单创建时间
expiredTimeDate订单失效时间
updatedAtDate更新时间
cancelTimeDate取消时间
paySuccessTimeDate支付成功时间

响应示例

json
{
    "code": 0,
    "data": {
        "amount": 0.001000,
        "createdAt": "2025-07-22 10:57:27",
        "goods": {
            "goodsDetail": "MacBook Pro 14-inch",
            "goodsName": "MacBook Pro 14-inch",
            "goodsType": "MacBook"
        },
        "mchName": "GlobalGoods",
        "mchNo": "M1752564528",
        "mchOrderNo": "ypSp0IpG5on6",
        "mchUserId": "illvBhVGuri7",
        "payOrderId": "P1947491150220296193",
        "paySuccessTime": "2025-07-22 11:01:30",
        "realNetwork": "Solana",
        "realPayAmount": 0.001000,
        "realPayCurrency": "USDC",
        "refundAmount": 0.000000,
        "state": 2,
        "updatedAt": "2025-07-22 10:57:27",
        "wayCode": "QrCode"
    },
    "msg": "SUCCESS",
    "sign": "54F8ADD6BD9BC8867DCB319329F587FE"
}

批量查询订单接口

  • 数据类型:JSON(content-type:application/json)
  • 请求⽅式:GET
  • 路径Path: /v1/hexpay/batch/query
  • 验证方式:签名验证

接口说明

该接口传入mchNo与appId批量查询应用下的订单信息。

请求参数

字段名类型最大长度是否必输说明
appIdString64应用id,商户后台创建
mchNoString30商户号
versionString10版本:v1.0
signTypeString10签名类型:当前版本仅支持RSA2
signString256签名
bizCodeInteger通道编号,不确定时不要传,由接口自动适配
createdStartDate日期格式字符串(yyyy-MM-dd HH:mm:ss),时间范围查询--开始时间,查询范围:大于等于此时间
createdEndDate日期格式字符串(yyyy-MM-dd HH:mm:ss),时间范围查询--结束时间,查询范围:小于等于此时间
settleStateByte结算状态:0-待结算, 1-结算中, 2-结算成功, 3-结算失败, 4-待人工结算
stateByte订单状态: 0-订单生成, 1-支付中, 2-支付成功, 3-支付失败, 4-已撤销, 5-已退款, 6-订单关闭
currentInteger当前页码,默认为1
sizeInteger每页大小,默认为10

请求示例

JSON
{
    "appId": "68c1382798a210e71dedddae",
    "mchNo": "M1757493187",
    "version": "v1.0",
    "signType": "RSA2",
    "state":2,
    "settleState":2,
    "bizCode":1,
    "createdStart":"2025-09-10 00:00:00",
    "createdEnd":"2025-09-10 23:59:59",
    "sign": "g+NAXi68wJ8J9hnKbBEzf6gbF+acYSyn8eMQrQDE6ndzcma9dBVYIRTBaNaeE/aFDAdMB4ARbXpLit8QIaH7vn3ZF6iKqu7tGpax817C9Yz+c9zvLtbt6rvTpwuBCKVfQJNJ+JbWCjXqwfRMJBmDfnUCujdeLnXf2l7QW6azi0Q3CC18UKyRtHGiRZ8kdwP+s3YX7JXCD+N35aFUdf7vwP19nEhXpyjMrZKColFbarQdrPZ1MsrROcnAKPqfMgV0gQ39GizIUi0fSdBR3xD7YtG+pcmJ6iCUzNbpkpMyTYBg5J4sp2MT+ejhUXSp+hYellp20Lt22TE1yCUajAlJkQ=="
}

响应参数

data

字段名类型说明
payOrderIdString支付订单号
appIdString应用id
mchOrderNoString商户订单号(唯一)
createdAtDate订单创建时间
stateInteger状态
mchUserIdString商户侧用户id
bizCodeInteger通道编号,不确定时不要传,由接口自动适配
wayCodeString支付方式
networkString网络
currencyString订单币种
amountBigDecimal订单金额
realPayAmountBigDecimal实际支付金额
realPayCurrencyString实际支付币种
successTimeDate成功时间
settleCurrencyString结算货币
settleAmountBigDecimal结算金额
mchFeeAmountBigDecimal商户手续费
mchSettleIncomeBigDecimal商户实际结算收入
settleStateByte订单结算状态(0-待结算, 1-结算中, 2-结算成功, 3-结算失败)
json
{
    "code": 0,
    "msg": "SUCCESS",
    "data": {
        "records": [
            {
                "payOrderId": "P1956719923828715522",
                "appId": "689d7bd965ac3acb9b2f0cb7",
                "mchOrderNo": "VO6LDUwMFaSS",
                "createdAt": "2025-08-16 14:09:18",
                "state": 2,
                "mchUserId": "dxrM7dglqQPb",
                "bizCode": 2,
                "wayCode": "-",
                "network": "Solana",
                "currency": "USDC",
                "amount": "12",
                "realPayCurrency": "USDT",
                "realPayAmount": "12",
                "realNetwork": "binance_smart_chain",
                "txHash": "0xd609c2deac9c87df133f8fa2256b2deb019c62daa7151bcdf626055925013432",
                "successTime": "2025-08-16 14:25:02",
                "settleCurrency": "USDC",
                "settleAmount": "12",
                "mchFeeAmount": "0.02",
                "mchSettleIncome": "11.98",
                "settleState": 2
            },
            {
                "payOrderId": "P1955910592950509570",
                "appId": "689d7bd965ac3acb9b2f0cb7",
                "mchOrderNo": "A1EmjBwIBMjC",
                "createdAt": "2025-08-14 08:33:19",
                "state": 2,
                "mchUserId": "eqvmUlm4WeCm",
                "bizCode": 0,
                "wayCode": "QR_CODE",
                "network": "Solana",
                "currency": "USDC",
                "amount": "0.2",
                "realPayCurrency": "USDC",
                "realPayAmount": "0.2",
                "realNetwork": "arbitrum",
                "txHash": "0xc6269fd87101aec2bb95b16f24b17cf64fa7599cc1f06d18c3ee6ffd0ef46d3a",
                "successTime": "2025-08-14 08:34:37",
                "settleCurrency": "USDC",
                "settleAmount": "0.2",
                "mchFeeAmount": "0.01",
                "mchSettleIncome": "0.19",
                "settleState": 2
            },
            {
                "payOrderId": "P1955876137510723586",
                "appId": "689d7bd965ac3acb9b2f0cb7",
                "mchOrderNo": "bh16wcQku0B2",
                "createdAt": "2025-08-14 06:16:24",
                "state": 2,
                "mchUserId": "TucYS0DW1ORa",
                "bizCode": 0,
                "wayCode": "QR_CODE",
                "network": "Arbitrum",
                "currency": "USDC",
                "amount": "0.1",
                "realPayCurrency": "USDC",
                "realPayAmount": "0.1",
                "realNetwork": "arbitrum",
                "txHash": "0x5df6a442c3f974064028c9b67739250d00b080cd7f29444147155c9153bac9d3",
                "successTime": "2025-08-14 06:16:56",
                "settleCurrency": "USDC",
                "settleAmount": "0.1",
                "mchFeeAmount": "0.01",
                "mchSettleIncome": "0.09",
                "settleState": 2
            }
        ],
        "total": 3,
        "size": 10,
        "current": 1,
        "pages": 1
    }
}

订单状态回调

登录 商户管理后台 → 进入 应用管理 → 选择对应 App → 配置成功跳转url、失败跳转url、接收订单回调状态url

img_6

点击查看密钥生成步骤

回调信息

字段名类型说明
payOrderIdString支付订单号
amountBigDecimal订单金额
mchOrderNoString商户订单号 (唯一)
signString签名
mchNameString商户名称
realNetworkString实际网络
wayCodeString支付方式
successUrlString支付成功回调地址
failUrlString支付失败回调地址
reqTimeString时间戳
realPayCurrencyString实际支付币种
createdAtDate订单创建时间
appIdString应用 id
successTimeDate成功时间
mchUserIdString商户侧用户 id
currencyString订单币种
realPayAmountBigDecimal实际支付金额
stateInteger状态
mchNoString商户号
refundAmountBigDecimal退款金额
updatedAtDate订单更新时间
settleCurrencyString结算货币
settleAmountBigDecimal结算金额(法币支付时为对应稳定币金额)

Content-Type: application/x-www-form-urlencoded

Body参考:

json
{
    "payOrderId": "P1958816503884955649",
    "amount": 0.01,
    "mchOrderNo": "482d0876d40d44dfa20c6e6859946a2b",
    "sign": "qHkU9ATWhxKq5W1BoOE9y298zUX9bqY8DoLBZaXZ/trKcCvqU6i/F4HZxYpHZbpWj04wJo9v/n1K25s01sg63Me55qA0wl71R0q0/xSbc2/vuTWQC3k3xhieKg9Qr7SxxS63eizItHnkXTyvjxYcyb5msSEjBr8NBZ83bejJ5LdJ+3t/F3lrQ33oFRvRl8p/aKeuNVI3xJ9nVkxNkl46wXZvZ4wAmb96qh7cVf5dmpf6P9dHVfp2mu9QTJH9lIMg/14PUp2FBNbn9YZIENuhpA4ODIL+HmtPzaHDetZzY7zCDGO1KT6bOpysHuiXmzHI6fOvWB1MXwF1mR4sX6MBrg==",
    "mchName": "M1755226149",
    "realNetwork": "arbitrum",
    "wayCode": "QR_CODE",
    "payWay": "USDC(Arbitrum)",
    "successUrl": "http://gs.shequnplatform.com:38669/order/success",
    "failUrl": "http://gs.shequnplatform.com:38669/order/failure",
    "reqTime": "1755854933053",
    "realPayCurrency": "USDC",
    "createdAt": "2025-08-22 09:00:22",
    "appId": "689ea02565ac52e60665ea8a",
    "successTime": "1755853505000",
    "mchUserId": "1ed646e0dc6e444ea3b98751c2ab9deb",
    "currency": "USDC",
    "realPayAmount": 0.010000,
    "state": 2,
    "mchNo": "M1755226149",
    "refundAmount": "0.000000",
    "updatedAt": "2025-08-22 09:26:25",
    "settleAmount":0.01,
    "settleCurrency":"USDC"
}

查询余额

  • 数据类型:JSON(content-type:application/json)
  • 请求⽅式:POST
  • 路径Path: /v1/hexpay/balance/query
  • 验证方式:签名验证

接口说明

该接口根据商户号、币种、appId查询余额信息

请求参数

字段名类型最大长度是否必输说明
appIdString64应用id,传该商户下的任意一个均可
mchNoString30商户号
versionString10版本:v1.0
signTypeString10签名类型:当前版本仅支持RSA2
signString512签名
currencyString10币种,可选值:USDT、USDC

请求示例

JSON
{
    "mchNo": "M1752564528",
    "currency": "USDC",
    "appId":"68887ae1e4b04fb9fe9e03f2",
    "signType":"RSA2",
    "version":"1.0",
    "sign":"Qu1AVxR1YxDBisaRLITSdC3Dh7pZT+eoRxUxJMd8BOmkoMlN2Zx5MTXWnIaeE/AyXuGcQGT35kgQLhrHecJ2YhzyFS5e89Sfqlm+sNQNxNl9Ad01CrD34DK+jjArM0r69oquAO/alcyuJmkJZWmYtZyPP2xuBWWyzwune6WicYr05GPeswvl/5I0po7XZXBjvPKq/ilCpVWdWf6PZGUVUIQpzLXxmCSt9xAKzm92lNTPC0duXF+hq6dh/Ebjg5YG5IazFVIRGPhuuxAVZMA9aJFc7SnMliwmRYqeugME0IRfKN29nNtVxDKiaobST6DXxQEXhXYBwTfnZGXvALp03w=="
}

响应参数

类型字段名说明
Stringcurrency币种
StringavailableBalance可用余额
StringfrozenBalance冻结余额
StringcoinFullName币种全称

响应示例

json
{
    "code": 0,
    "data": [
        {
            "availableBalance": 65.08666658,
            "coinFullName": "USD Coin",
            "currency": "USDC",
            "frozenBalance": 4.48858868
        }
    ],
    "msg": "SUCCESS"
}