Dodo 结账会话
使用 Talivia 元数据归因 Dodo 结账会话、浮层结账和内嵌结账。
后端创建 Dodo 结账会话时使用此方案。Dodo 浮层结账和内嵌结账也从结账会话开始,因此同样适用。
在网站设置 → 收入 → Dodo Payments中连接账户,然后把当前 Talivia 会话放入结账元数据。
将会话加入结账元数据
在后端读取 Talivia 会话 Cookie,并将它合并到现有 Dodo 调用的 metadata 对象中。
const taliviaSessionId = request.cookies.get('talivia_session_id')?.value;
const checkout = await dodo.checkoutSessions.create({
product_cart,
return_url: 'https://your-site.com/thanks',
metadata: {
// Keep your existing metadata fields here.
...(taliviaSessionId && { talivia_session_id: taliviaSessionId }),
},
});metadata 是 Dodo 的标准元数据对象。请保留已有字段,只新增 talivia_session_id。Talivia 会从已验证的付款事件中读取该值并完成归因。
结账接口位于其他来源
如果浏览器代码调用其他来源的结账接口,请在请求中包含不透明的会话值:
const sessionId = window.talivia.getSessionId();
await fetch('https://api.your-site.com/create-checkout', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ sessionId }),
});照常验证请求。后端创建结账会话时,将收到的值放入 metadata.talivia_session_id。会话编号是归因标识符,不是身份验证凭据。
服务商端选项请参阅 Dodo 结账会话。
无需手动配置网络回调。连接服务商时,Talivia 会配置并验证 Dodo 网络回调。