开发者

数行代码即可集成

公钥用于打开结账。密钥用于创建会话。Webhook 在链上确认后闭环订单履约流程。

# Create order + session in one call
curl -X POST https://api.infraio.xyz/v1/quick-checkout \
  -H "Authorization: Bearer sk_live_…" \
  -H "Idempotency-Key: order_8412" \
  -d '{
    "amount": "1000.00",
    "currency": "USD",
    "success_url": "https://shop.example/thanks"
  }'

# → 201 Created
{ "checkout_url": "https://pay.infraio.xyz/c/s_9f2…",
  "expires_in": 900 }

从无代码开始,准备好后转向 API 优先。

无代码

Payment Links

在仪表盘生成链接,随处分享,支付后接收 webhook。

打开仪表盘
一个脚本标签

SDK Checkout

弹窗、跳转或嵌入 iframe。SDK 以适合你网站的方式打开同一个托管结账。

SDK 指南
完全控制

QuickCheckout API

服务端一次调用创建订单与会话。HMAC 签名、幂等、含沙盒。

API 参考

将 SDK 接入任意 Web 应用

一次 import,一次调用。以弹窗、跳转或嵌入方式打开托管结账,并以同样方式打开客户退款表单。

import { loadInfraIo } from "@lartech/infraio-checkout-js";

// Open hosted checkout from a session
async function payNow(sessionKey, checkoutUrl) {
  const sdk = await loadInfraIo("pk_live_yourkeyhere");

  sdk.checkout({
    sessionId: sessionKey,
    checkoutUrl,
    mode: "popup", // "popup" | "redirect" | "embed"
    onSuccess: ({ sessionId }) => fulfill(sessionId),
    onCancel: () => showRetry(),
  });
}

覆盖每个状态的 webhook

使用端点密钥签名,带退避重试,可从仪表盘重放。

事件触发时机
payment.pending买家已广播交易;正在等待确认。
payment.confirmed交易已达到该网络的确认阈值。
payment.settled资金已归集到你的结算钱包。
session.expired结账窗口未付款即关闭。不计费。

像运营团队一样运行加密货币支付

控制台的设计理念是运营控制台, 而非钱包。商户每天都会用到的四大核心界面。

订单与会话每笔结账都可追溯至一个订单、一个支付意图以及一个不可变的会话。稳定的 ID 可供您的履约流程作为关联键使用。
交易链上结算、确认数、网络费用,以及每笔支付意图的清晰状态:已支付 / 等待中 / 不足额。
退款支持部分或全额退款, 可直接退至原钱包,或向买家发送一次性链接由其填写收款地址。完整审计且可导出。
Webhook按端点的测试探测、宽限期内密钥轮换、含 6 层延迟梯度的重试队列、死信外箱(outbox) + 自助重放。

按支付基础设施标准打造,而非加密插件

HMAC 签名的 B2B API每个服务端请求均经过签名 + 时间戳(X-Client-ID、X-Timestamp、X-Signature)。每个端点都做恒定时间校验,±5 分钟重放窗口。
会话范围的结账 URL每个结账 URL 都绑定到唯一的 session_key。篡改即作废;已过期的会话无法再次使用, 清理工作进程在惰性清理 + 定时扫描中将其切换为 EXPIRED。
幂等键可安全重试。重复订单会合并为单一支付意图, 您的网络错误重试路径绝不会重复扣款或重复发币。
确定性存款地址每次结账都会预先派生专属的 EVM 存款地址,买家付款至与该订单严格绑定的地址槽位。随后资金通过链上 sweep 归集至商户的结算钱包, InfraIO 从不在热钱包中保管买家资金。

沙盒免费。生产环境同样免费,直到有买家付款。