Skip to Content
入门简介

简介

支付的构成

接入 InfraIO Pay 的商户需要处理四个环节:

结账会话

你在服务端创建一个会话,携带明细项和总额。响应中带有 session_keycst_…)和 checkout_url。会话有 TTL(默认 30 分钟),且只能 使用一次。

托管结账页

你加载我们的浏览器 SDK 并打开该会话 — popup、redirect 或嵌入式 iframe。买家选择一个链 × 资产组合(例如 Polygon 上的 USDT、Base 上 的 ETH……),看到生成的充值地址 + 二维码,并从自己的钱包发送资金。

支付确认

payment-service 会监控相应的链,寻找与该会话充值地址匹配的入账 转账。一旦达到配置的确认数(例如 Ethereum 主网 12 个确认、Polygon 5 个确认 — 见链与资产),底层的 PaymentIntent 就会转为 SETTLED,其所属的 Order 也随之转为 PAID

Webhook

我们会向你注册的 Webhook URL POST 一个已签名的 payment.settled 事件。你的服务器验证签名,通过 external_ref 关联回自己的订单, 然后完成履约。

数据模型示意图

CheckoutSession ← 1:1 → Order ← 1:N → PaymentIntent (有 TTL) (永久) (每次支付尝试一个)

你为履约而思考订单,为收款而创建会话,系统则在背后为重试 / 选链管理 PaymentIntent

InfraIO Pay 负责什么,你负责什么

InfraIO Pay 负责你负责
托管结账 UI(充值地址、二维码、资产选择器)在你的数据库中创建 Catalog + Order
跨 8 条 EVM 链的链上监控 + 确认逻辑Webhook 接收端 + 签名验证
多资产结账(USDT、USDC,以及各链原生 ETH/BNB/POL/MNT)通过 external_ref 把我们的 order_id 映射到你自己的订单 ID
退款记账(状态机、仪表板、API)签名并广播链上退款交易
测试模式密钥 + 隔离的测试 Webhook从水龙头为测试网钱包充值

我们不托管商户资金。买家到商户的转账直接在链上完成;我们只是 索引 + 对账层,负责告诉你转账何时到账。

测试模式与生产模式

每个账户都从测试模式开始。测试密钥以 pk_test_ / sk_test_ 为前缀。生产密钥(pk_live_ / sk_live_)需要满足以下条件才能 开通:

  1. 完成 KYB
  2. 资金钱包证明(你签名一条消息,证明自己掌握着每条要接收资金的 链上目标钱包的控制权)

同一个 API base URL 同时服务这两种环境 — 环境由密钥前缀决定,而 不是 URL。测试模式运行在真实的测试网上(Sepolia、Base Sepolia、BSC Testnet 等)— 没有模拟链。要触发一笔测试支付,你需要 从水龙头领取真实的测试网资金。

InfraIO Pay 不是什么

  • 不是托管方。 资金在链上直接从买家钱包转到商户钱包。我们从 不持有余额。
  • 不是钱包提供方。 客户自带钱包;托管结账页内置了 WalletConnect 选项,但不提供原生托管。
  • 不是法币兑换通道。 买家用自己持有的加密资产付款;我们不做 兑换。
  • 目前还不是 Tron 或 Solana 网关。 优先支持 EVM。完整支持矩阵 见链与资产

下一步