EtsyPay API 文档

HOST https://api.etsypayment.com

1. 创建支付订单

获取商户订单收款地址

接口地址:/encryptCoinPay/createOrder

请求方式: POST

请求数据类型: application/x-www-form-urlencoded

{
  "merchantId": "10001",
  "productId": "1223",
  "orderNo": "TEST12535452",
  "chain": "ETH",
  "token": "USDT",
  "amount": "1.5",
  "expectPayCodeType": 1,
  "remark": "test",
}

请求参数:

参数名
类型
是否必须
描述

merchantId

string(15)

商户id,由EtsyPay平台分配给商户

productId

int

产品id,由EtsyPay平台分配给商户

orderNo

string(64)

商户订单号,商户侧保证该单号唯一

chain

string(15)

区块链网络,ETH/BSC/TRON/POLYGON

token

string(10)

加密货币,可填USDT

amount

string

支付金额, 以USDT计价

expectPayCodeType

int

可选

0: 返回区块链地址

1: 返回支付引导页面,默认为1

remark

string(256)

可选

订单备注

expireTime

string(20)

可选

订单过期时间,格式:yyyy-MM-dd HH:mm:ss

returnUrl

string(256)

可选

支付完成后跳转地址

callbackUrl

string(256)

可选

支付结果回调地址

version

string(5)

接口版本,默认填1.0

sign

string(256)

请求签名

响应参数:

参数名
类型
是否必须
描述

code

string

返回码

msg

string

返回信息

orderNo

string

商户传的订单号

tradeNo

string

平台生成的支付流水号

payCode

string

支付地址或支付引导页面

payCodeType

string

0: 返回区块链地址 1: 返回支付引导页面,默认为1

expireTime

string

订单过期时间(GMT+0)

sign

string

响应签名

traceId

string

链路id

响应示例:

{
    "code": "200",
    "msg": "SUCCESS",
    "sign": "71e66336b2e238f84444a55068c9fb6d",
    "traceId": "c0a39622cbaf4f109ef00f6c3c6bb9e3",
    "orderNo": "CTP24327220220109002331",
    "tradeNo": "10012022010823233181900000",
    "payCode": "https://checkout.etsypayment.com/encryptCoinPay?orderInfo=c9ym%2B3%2B2nZYFOlh1ePCuAAQqwCv2iPSc0r5p6nN1Eg0F%2B0vzktTrnntKA6FWPFCg%2BMFecSqfr2CnBzREtaaaAaXcyUnhpAC%2BzLK5YTNxyf7hHAWhH0uc5dcqDrIb%2B7KqCWsGGlOUhq3Xbuq4YFFbRYrxbAhjPCuVGt7P0Zva0RhfA%2Bm34bzND11SGBAB75JRo6bfuL2Y60B4gjArHq7lzQ9%2BIaYhsEOGtBoJjnU%2F7tifargPOOPvLakNwyZ9rqP5",
    "payCodeType": "1",
    "expireTime": "2024-04-19 03:16:37"
}

2. 创建代付订单

接口地址:/encryptCoinPay/payout

请求方式: POST

请求数据类型: application/x-www-form-urlencoded

请求参数:

参数名

类型

是否必须

描述

merchantId

string(15)

商户id,由EstyPay平台分配给商户

version

string(5)

接口版本,默认填1.0

sign

string(256)

请求签名

productId

int

产品id,由EtsyPay平台分配给商户

orderNo

string(64)

商户订单号,商户侧保证该单号唯一

name

string(15)

付款人姓名

amount

string

支付金额, 以USDT计价

addressTo

string(256)

目标区块链地址

chain

string(256)

区块链网络 【通过 queryTokenList方法 获取】

token

string(256)

加密货币,可填USDT/USDC

callbackUrl

string(256)

可选

支付结果回调地址

remark

string(256)

可选

订单备注

响应参数:

参数名

类型

是否必须

描述

code

string

返回码

msg

string

返回信息

traceId

string

链路id

orderNo

string

商户订单号

tradeNo

string

平台订单号

orderAmount

string

下单金额

totalAmount

string

总金额

fee

string

手续费

chain

string

区块链网络

token

string

币种

addressFrom

string

代付发起地址

addressTo

string

代付收款地址

tradeHash

string

链上交易hash

3. 查询订单

接口地址:/encryptCoinPay/queryOrder

请求方式: POST

请求数据类型: application/x-www-form-urlencoded

请求参数:

参数名
类型
是否必须
描述

merchantId

string(15)

商户id,由EstyPay平台分配给商户

orderNo

string(64)

可选(orderNo,tradeNo 必填其中一个)

商户订单号,商户侧保证该单号唯一

tradeNo

string(256)

可选(orderNo,tradeNo 必填其中一个)

平台订单号

version

string(5)

接口版本,默认填1.0

sign

string(256)

请求签名

响应参数:

参数名
类型
是否必须
描述

code

string

返回码

msg

string

返回信息

orderNo

string

商户传的订单号

tradeNo

string

平台生成的支付流水号

payState

string

支付状态: 11 支付中, 00 支付成功 , 99 支付失败

payResultMsg

string

可选

失败原因,payState为99时才会返回

amount

string

支付金额

merchantId

string

商户ID

chain

string

区块链

token

string

加密货币

payerAddress

string

可选

付款地址

payeeAddress

string

收款地址

expireTime

string

订单过期时间

trxId

string

链上交易id

stateChangeTime

string

订单状态更新时间

sign

string

签名

traceId

string

链路id

响应示例:

{
    "code": "200",
    "msg": "SUCCESS",
    "sign": "550324104f340356c03bc9a88612583a",
    "traceId": "c0a39622cbaf4f109ef00f6c3c6bb9e3",
    "payState": "00",
    "orderNo": "CTP24327220220109002331",
    "tradeNo": "10012022010823233181900000",
    "amount": 10,
    "merchantId": "88893",
    "returnUrl": "https://www.baidu.com",
    "expireTime": "2024-04-08 10:42:26",
    "stateChangeTime": "2024-04-07 13:46:48",
    "token": "USDT",
    "chain": "POLYGON",
    "payerAddress": "0x651bgd63031....",
    "payeeAddress": "0x984ews65516....",
    "trxId": "0x4da651r5f6da15ef...."
}

4. 回调模板

请求方式:POST

请求数据类型:application/json

接口描述:

当商户接受到请求并处理完成后,返回http code 200即可。

请求示例:

{
    "amount": "17000", 
    "merchantId": "88893", 
    "orderNo": "CTP24327220220109002331", 
    "payState": "00", 
    "returnCode": "200", 
    "returnMsg": "success", 
    "sign": "faac6db8df3ba21b0c9cb5aa3c85085c", 
    "tradeNo": "10012022010823233181900000", 
    "type": 1
}

请求参数:

参数名
类型
是否必须
描述

returnCode

string

返回码,200为成功

returnMsg

string

返回信息,success为成功

sign

string

请求签名,签名规则见上方通信协议及规范

orderNo

string

商户订单号

tradeNo

string

平台生成的流水号

payState

string

支付状态:00 成功 , 99 失败

amount

string

金额

payCode

string

可选

链上收款地址

merchantId

string

商户id

type

string

1 支付结果回调 2 代付结果回调

errorCode

string

可选

失败的错误码

errorMsg

string

可选

失败的信息

5. 支持的货币列表

接口地址:/encryptCoinPay/queryTokenList

请求方式:POST

请求数据类型:application/x-www-form-urlencoded

请求参数:

参数名
类型
是否必须
描述

merchantId

string(15)

商户id,由EstyPay平台分配给商户

version

string(5)

接口版本,默认填1.0

sign

string(256)

请求签名

响应参数:

参数名
类型
是否必须
描述

code

string

返回码

msg

string

返回信息

traceId

string

链路id

data

list

支持的网络、币种信息

响应示例:


{
    "code": "200",
    "msg": "SUCCESS",
    "traceId": "c38e1314e8fa4133bb7e0bfd185c53b8",
    "data": [
        {
            "chain": "ETH",
            "supportTokens": [
                "USDT"
            ]
        },
        {
            "chain": "BSC",
            "supportTokens": [
                "USDT"
            ]
        },
        {
            "chain": "TRON",
            "supportTokens": [
                "USDT"
            ]
        },
        {
            "chain": "POLYGON",
            "supportTokens": [
                "USDT"
            ]
        }
    ]
}

Last updated