PAYMENTS / LINKS
收款链接
收款链接是一个可以反复使用的付款入口:商户在后台创建一次,把链接发到聊天、邮件或网页上,每个付款人打开后都会生成一笔自己的支付订单。
如何使用
- 在商户后台「收款 → 收款链接」创建链接:标题、说明、法币币种,固定金额或允许付款人在最低 / 最高范围内自填,可限定可选币种、单笔订单有效分钟数(默认 60),以及链接本身的过期时间。
- 后台给出链接地址
{checkoutBaseUrl}/pay/{linkToken},直接分享即可。链接可随时停用。 - 付款人打开链接页面(打开不建单),填金额 / 邮箱提交后才生成订单,订单
source=PAYMENT_LINK、业务单号以PL开头,状态AWAITING_CURRENCY,随后跳到托管付款页选币付款。 - 到账同样推送支付订单回调。
创建、修改、停用链接没有开放 API
收款链接只能在商户后台管理。下面两个公开接口供链接页面使用,无需 AppSign 签名,按 IP + token 每分钟 20 次限流。公开接口
/api/v1/payment/link/{linkToken}查询链接展示信息。linkToken 不存在返回 1007004050。
请求示例
curl -X GET "https://api.pqpa.com/api/v1/payment/link/7d2a...f0"响应
200OK
{
"code": 0,
"data": {
"merchantName": "Demo Shop",
"title": "打赏",
"description": null,
"fiatCurrency": "USD",
"fiatAmount": null,
"minFiatAmount": 1.00,
"maxFiatAmount": 500.00,
"status": "ENABLED",
"selectableTokens": [
{ "chainTokenId": 50, "chainCode": "TRON", "chainName": "Tron", "tokenSymbol": "USDT", "tokenType": "TRC20" }
]
},
"msg": ""
}data 字段说明
merchantNamestring optional | 商户名称(应用名称)。 |
title / descriptionstring? optional | 链接标题 / 说明。 |
fiatCurrencystring required | 法币币种。 |
fiatAmountnumber? optional | 固定金额;为空表示由付款人填写金额。 |
minFiatAmount / maxFiatAmountnumber? optional | 付款人自填金额时的最低 / 最高金额。 |
statusstring required | ENABLED / DISABLED / EXPIRED;非 ENABLED 时不能建单。停用或过期的链接仍会返回,不报错。 |
selectableTokensarray required | 可选币种:chainTokenId / chainCode / chainName / tokenSymbol / tokenType(此接口不返回 estimatedPayAmount)。 |
/api/v1/payment/link/{linkToken}/orders付款人提交建单。返回新订单的 checkoutToken 与 checkoutUrl,之后走付款页选币流程。
Body 参数
application/jsonfiatAmountnumber optional | 付款金额,最多 2 位小数。金额由付款人填写的链接必填,且须在最低 ~ 最高金额之间;固定金额链接忽略此值。 |
payerEmailstring optional | 付款人邮箱,选填,最多 128 个字符。 |
请求示例
curl -X POST "https://api.pqpa.com/api/v1/payment/link/7d2a...f0/orders" \
-H "Content-Type: application/json" \
-d '{"fiatAmount":20.00,"payerEmail":"alice@example.com"}'响应
200OK
{
"code": 0,
"data": {
"checkoutToken": "9b1e...4c",
"checkoutUrl": "https://pay.example.com/checkout/9b1e...4c"
},
"msg": ""
}错误码
| code | 名称 | 说明 |
|---|---|---|
1007004050 | PAYMENT_LINK_NOT_FOUND | 收款链接不存在。 |
1007004051 | PAYMENT_LINK_UNAVAILABLE | 收款链接已停用或已过期,不能建单。 |
1007004053 | PAYMENT_LINK_AMOUNT_REQUIRED | 金额由付款人填写的链接,建单时必须填写 fiatAmount。 |
1007004054 | PAYMENT_LINK_AMOUNT_OUT_OF_RANGE | 付款金额须在链接设置的最低 ~ 最高金额之间。 |
1007004056 | PAYMENT_LINK_AMOUNT_SCALE_INVALID | 法币金额最多 2 位小数。 |
1007004028 | PAYMENT_ORDER_FIAT_AMOUNT_INVALID | 法币金额必须大于 0。 |