PAYMENTS / LINKS

收款链接

收款链接是一个可以反复使用的付款入口:商户在后台创建一次,把链接发到聊天、邮件或网页上,每个付款人打开后都会生成一笔自己的支付订单。

如何使用

  1. 在商户后台「收款 → 收款链接」创建链接:标题、说明、法币币种,固定金额或允许付款人在最低 / 最高范围内自填,可限定可选币种、单笔订单有效分钟数(默认 60),以及链接本身的过期时间。
  2. 后台给出链接地址 {checkoutBaseUrl}/pay/{linkToken},直接分享即可。链接可随时停用。
  3. 付款人打开链接页面(打开不建单),填金额 / 邮箱提交后才生成订单,订单 source=PAYMENT_LINK、业务单号以 PL 开头,状态 AWAITING_CURRENCY,随后跳到托管付款页选币付款。
  4. 到账同样推送支付订单回调。

创建、修改、停用链接没有开放 API

收款链接只能在商户后台管理。下面两个公开接口供链接页面使用,无需 AppSign 签名,按 IP + token 每分钟 20 次限流。

公开接口

请求示例

curl -X GET "https://api.pqpa.com/api/v1/payment/link/7d2a...f0"

响应

Response
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 字段说明

merchantName
string optional
商户名称(应用名称)。
title / description
string? optional
链接标题 / 说明。
fiatCurrency
string required
法币币种。
fiatAmount
number? optional
固定金额;为空表示由付款人填写金额。
minFiatAmount / maxFiatAmount
number? optional
付款人自填金额时的最低 / 最高金额。
status
string required
ENABLED / DISABLED / EXPIRED;非 ENABLED 时不能建单。停用或过期的链接仍会返回,不报错。
selectableTokens
array required
可选币种:chainTokenId / chainCode / chainName / tokenSymbol / tokenType(此接口不返回 estimatedPayAmount)。
POST/api/v1/payment/link/{linkToken}/orders

付款人提交建单。返回新订单的 checkoutToken 与 checkoutUrl,之后走付款页选币流程。

Body 参数

application/json
fiatAmount
number optional
付款金额,最多 2 位小数。金额由付款人填写的链接必填,且须在最低 ~ 最高金额之间;固定金额链接忽略此值。
payerEmail
string 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"}'

响应

Response
200OK
{
  "code": 0,
  "data": {
    "checkoutToken": "9b1e...4c",
    "checkoutUrl": "https://pay.example.com/checkout/9b1e...4c"
  },
  "msg": ""
}

错误码

code名称说明
1007004050PAYMENT_LINK_NOT_FOUND收款链接不存在。
1007004051PAYMENT_LINK_UNAVAILABLE收款链接已停用或已过期,不能建单。
1007004053PAYMENT_LINK_AMOUNT_REQUIRED金额由付款人填写的链接,建单时必须填写 fiatAmount。
1007004054PAYMENT_LINK_AMOUNT_OUT_OF_RANGE付款金额须在链接设置的最低 ~ 最高金额之间。
1007004056PAYMENT_LINK_AMOUNT_SCALE_INVALID法币金额最多 2 位小数。
1007004028PAYMENT_ORDER_FIAT_AMOUNT_INVALID法币金额必须大于 0。