Skip to content

创建支付订单

支付订单用于把你网站里的业务订单连接到 Taria Pay 结账页。你的服务端创建 payment intent 后,会得到一个 checkoutUrl,前端再把买家跳转过去付款。

请求由谁发起

必须由你的服务端发起。不要从浏览器直接调用 Taria Pay API,也不要把 API key 放到前端、移动端包或公开仓库里。

推荐字段

字段是否必填说明
orderId必填你自己系统里的订单号,同一商户下必须唯一
amount必填订单金额,建议使用字符串
currency必填USDCUSDTEURC
successUrl推荐买家支付后返回你网站的地址
cancelUrl推荐买家取消支付后返回你网站的地址
customer可选买家邮箱、姓名等信息
metadata可选你的业务上下文,例如购物车 ID
expiresAt可选订单过期时间,ISO-8601 格式

SDK 示例

ts
const paymentIntent = await tariapay.paymentIntents.create({
  orderId: "order_1001",
  amount: "12.50",
  currency: "USDC",
  successUrl: "https://merchant.example/success",
  cancelUrl: "https://merchant.example/cancel",
  customer: {
    email: "buyer@example.com",
    name: "Alice",
  },
  metadata: {
    cartId: "cart_12",
  },
});

return {
  paymentId: paymentIntent.paymentId,
  checkoutUrl: paymentIntent.checkoutUrl,
};

REST 示例

bash
curl -X POST "https://api.tariapay.com/v1/payment-intents" \
  -H "Authorization: Bearer tpk_..." \
  -H "Content-Type: application/json" \
  -d '{
    "orderId": "order_1001",
    "amount": "12.50",
    "currency": "USDC",
    "successUrl": "https://merchant.example/success",
    "cancelUrl": "https://merchant.example/cancel",
    "customer": {
      "email": "buyer@example.com",
      "name": "Alice"
    },
    "metadata": {
      "cartId": "cart_12"
    }
  }'

重要规则

  • orderId 对同一商户必须唯一。
  • 重复创建相同 orderId 通常会返回冲突错误。
  • 商家不需要提交链上归属地址。
  • 通常不需要在创建支付订单时传 chainId,结账页会展示当前可用的支付网络。
  • 不要用 successUrl 当作最终支付结果。

下一步