# Stripe 的其他归因方式 (https://talivia.com/zh-CN/docs/revenue-guides/stripe/other-methods)



请选择能够为 Talivia 提供服务器验证付款的最小范围集成。

## Stripe 对象仍在已连接账户中 [#stripe-对象仍在已连接账户中]

如果第三方结账在连接到 Talivia 的同一个 Stripe 账户中创建付款意图，请使用[付款意图](https://talivia.com/zh-CN/docs/revenue-guides/stripe/payment-intents)。第三方允许提供付款意图元数据时，请附加 `talivia_session_id`。

如果无法提供元数据，请使用 Stripe 付款中相同的电子邮箱或客户编号识别已登录客户：

```javascript title="关联客户身份"
window.talivia.identify('user_123', {
  email: currentUser.email,
  stripeCustomerId: currentUser.stripeCustomerId,
});
```

这只会关联身份，不会在浏览器中创建或确认收入；Stripe 带签名网络回调仍是付款事实来源。

## 处理商隐藏 Stripe 付款对象 [#处理商隐藏-stripe-付款对象]

后端确认付款后使用[手动付款接口](https://talivia.com/zh-CN/docs/revenue-guides/manual)。发送与订单一起保存的 Talivia 会话和稳定的交易编号。

```javascript title="记录第三方确认的付款"
await fetch('https://talivia.com/api/payments/manual', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'x-talivia-api-key': process.env.TALIVIA_API_KEY,
  },
  body: JSON.stringify({
    websiteId: 'YOUR_WEBSITE_ID',
    providerName: 'your-billing-provider',
    transactionId: payment.id,
    providerCustomerId: payment.customerId,
    email: payment.customerEmail,
    amount: payment.amount,
    currency: payment.currency,
    sessionId: order.taliviaSessionId,
  }),
});
```

## 为什么没有浏览器付款命令 [#为什么没有浏览器付款命令]

公开 `payment` 事件可以被重放或伪造，因此 Talivia 将两项职责分开：

* 浏览器追踪和 `identify` 提供归因上下文；
* 带签名 Stripe 网络回调或经过身份验证的后端接口确认收入。

这样既能保持金额和付款状态可信，也能支持自定义计费流程。
