Talivia 使用文档
Talivia 使用文档
首页数据看板
简介安装团队获取更新
Stripe
Yolfi
Dodo Payments
LemonSqueezy
Polar
Polar 结账接口Polar 结账链接Polar 内嵌结账Polar 订阅与续费Polar 的其他归因方式测试与排查 Polar
手动付款接口测试付款集成
集成
人工智能代理与模型上下文协议llms.txtllms-full.txt
收入Polar

Polar 结账接口

使用 Talivia 会话元数据创建 Polar 结账会话。

查看 Markdown 原文

这是最可靠的 Polar 集成方式。Talivia 会在带签名的 order.paid 网络回调中收到同一会话编号,无需依赖返回访问即可归因订单。

将 Talivia 会话发送给后端

浏览器移交结账
const sessionId = window.talivia.getSessionId();

const response = await fetch('/api/create-polar-checkout', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ sessionId }),
});

const { url } = await response.json();
window.location.assign(url);

会话编号是归因标识符,不是身份验证凭据。请照常在后端验证商品和已登录用户。

创建结账时添加元数据

将 Polar 访问令牌保存在服务器。Polar 会把结账元数据复制到生成的订单和订阅,因此一个字段即可覆盖单次和循环产品。

创建 Polar 结账会话
import { Polar } from '@polar-sh/sdk';

const polar = new Polar({ accessToken: process.env.POLAR_ACCESS_TOKEN });

const checkout = await polar.checkouts.create({
  products: [process.env.POLAR_PRODUCT_ID],
  successUrl: 'https://your-site.com/thanks?checkout_id={CHECKOUT_ID}',
  returnUrl: 'https://your-site.com/pricing',
  externalCustomerId: user.id,
  customerEmail: user.email,
  metadata: { talivia_session_id: sessionId },
});

return Response.json({ url: checkout.url });

externalCustomerId 应是应用中稳定的编号,可为未来续费提供第二个匹配信号。请在成功网址中保留 checkout_id={CHECKOUT_ID},作为备用和排查信号。

Polar

选择 Polar 结账流程,并把订单、订阅和退款归因到 Talivia 流量。

Polar 结账链接

通过付款成功后的返回访问归因无需代码的 Polar 结账链接。