# SaaS 平台嵌入式支付：2026 年实现指南

> 现代 SaaS 平台如何添加嵌入式支付，同时避免成为支付公司。涵盖架构、合规、收入分成和实现模式。
- **Author**: Ayush Agarwal
- **Published**: 2026-04-29
- **Category**: Payments, SaaS, Integration
- **URL**: https://dodopayments.com/blogs/zh/embedded-payments-saas-platforms

---

嵌入式支付意味着客户无需离开你的应用即可完成付款。实际上，SaaS 平台通常会从三种架构中选择一种来实现：基于 iframe 的内嵌式结账、模态弹窗覆盖层，或使用客户端令牌化的原始卡片 API。前两种方案可让你保持在 SAQ-A 范围内，大约一周即可上线。第三种方案提供完整的 UI 控制权，但会让你进入完整的 PCI-DSS 合规范围。

这个选择基本决定了大部分方案。虽然如此，剩余的实现工作并不简单：嵌入式支付涉及 PCI 合规、资金转移法律、结算风险、风控筛查和客户支持。大多数尝试自行构建嵌入式结账的创始人，最终都会得到一个每次发布都可能出问题的"弗兰肯斯坦式"集成。

本指南将介绍如何在 2026 年为 SaaS 产品添加嵌入式支付，同时避免承担成为支付公司的监管负担。内容涵盖架构选择、合规权衡，以及适用于不同 SaaS 垂直领域的实践模式。

## 嵌入式支付究竟是什么

嵌入式支付意味着客户无需离开你的应用即可付款。卡片表单、成功状态、收据和订阅管理都存在于你的 UI 中。

这与托管式结账不同：在托管式结账中，客户点击按钮后会被重定向到第三方域名。托管式结账适合一次性购买，但不适合经常性 SaaS 收入，因为让客户留在应用内通常可以带来 15% 到 25% 的转化提升。你可以在 [内嵌式结账与托管式结账](https://dodopayments.com/blogs/inline-vs-hosted-checkout) 中并排比较这些权衡。

嵌入式支付也不同于"支付即平台"模式。在后者中，你让自己的客户（平台上的商户）接受付款。两者的模式有重叠，但当你为第三方促成支付时，需要面对的合规范围要大得多。

> 我最常看到的错误，是创始人把嵌入式支付和支付促成混为一谈。嵌入式支付意味着让客户的结账流程留在应用内；支付促成意味着让你的客户的客户完成付款。它们不是同一个问题，监管分量也完全不同。
>
> - Ayush Agarwal，Dodo Payments 联合创始人兼 CPTO

## SaaS 平台为何嵌入支付

三个因素推动了这一决策：

1. **转化率。** 每次将客户重定向到第三方域名，都会损失一部分客户。嵌入式结账能够切实提升转化率，尤其是在移动设备上。
2. **品牌一致性。** 客户不应该在购买过程中感觉自己被转交给了别人。从你的应用无缝过渡到陌生域名上的支付表单，会破坏信任。
3. **订阅管理。** 当客户可以在你的应用内管理订阅、更换卡片或取消订阅时，留存率会提高。让客户前往第三方门户取消订阅，会让人感觉不够友好。

如需进一步了解转化影响，请参阅我们关于 [定价页面转化优化](https://dodopayments.com/blogs/pricing-page-conversion-optimization) 的深度文章，以及 [本地化支付方式为何能带来更高转化率](https://dodopayments.com/blogs/why-localized-payment-methods-are-important-for-higher-conversions) 的分析。

## 嵌入式支付的三种架构

大多数 SaaS 平台会选择三种模式之一。每种模式都在控制力和复杂性之间做出不同权衡。

```mermaid
flowchart LR
    A[SaaS Application] --> B{Architecture Choice}
    B -->|Pattern 1| C[Inline Checkout]
    B -->|Pattern 2| D[Overlay Checkout]
    B -->|Pattern 3| E[Raw Card API]
    C --> F[iframe in your page]
    D --> G[Modal over your app]
    E --> H[Custom UI + tokenized card]
    F --> I[Lowest PCI scope]
    G --> I
    H --> J[Highest PCI scope]
```

### 模式 1：内嵌式结账（基于 iframe）

支付服务商会将支付表单渲染为页面内的 iframe。你可以控制周围的布局，而卡片表单则处于沙箱环境中。

这种模式可以让你不进入 PCI 合规范围（只需遵守 SAQ-A）。对于 80% 的 SaaS 平台来说，这是正确的选择。具体实现请参阅 [内嵌式结账文档](https://docs.dodopayments.com/developer-resources/inline-checkout)。

### 模式 2：覆盖层结账（基于模态弹窗）

支付服务商会在你的应用上方打开一个模态弹窗，用于完成支付步骤。客户在视觉上不会离开你的域名，但从技术上看，模态弹窗是由服务商加载的。

与内嵌式结账相比，可控性略低，但通常更容易集成。对于希望快速上线、又不想管理 iframe 在不同屏幕尺寸下的大小问题的 SaaS 平台来说，这是正确的选择。请参阅 [覆盖层结账文档](https://docs.dodopayments.com/developer-resources/overlay-checkout)。

### 模式 3：原始卡片 API（完全控制）

你自行构建卡片表单，由支付服务商提供令牌化端点。你将令牌而不是原始卡片数据发送到支付 API。

这是最灵活、也最危险的选项。你需要承担 PCI-DSS 一级合规责任，以及卡片表单中任何客户端漏洞所带来的责任。只有在 iframe 结账无法满足特定 UI 要求，并且你拥有安全团队提供支持时，才应使用此方案。该方案触发的义务详见 [原始卡片 API 与 PCI 合规](https://dodopayments.com/blogs/raw-card-api-pci-compliance)。另请参阅 [原始卡片 API 文档](https://docs.dodopayments.com/developer-resources/raw-card-api)。

如需深入了解结账集成模式，请参阅 [结账会话文档](https://docs.dodopayments.com/developer-resources/checkout-session)。

## 选择正确的模式

使用以下决策矩阵：

| 场景                                                   | 推荐模式            | 原因                                             |
| ------------------------------------------------------ | ------------------- | ------------------------------------------------ |
| 标准 SaaS 订阅结账                                     | 内嵌式（iframe）    | PCI 范围最低，在 iframe 选项中拥有最高设计控制力 |
| 移动端占比较高的产品                                   | 覆盖层（模态弹窗）  | 模态弹窗比 iframe 更适合小屏幕                   |
| 采用自定义结账流程的市场或平台                         | 内嵌式 + 自定义会话 | 在控制力和 PCI 最小化之间取得平衡                |
| 具有非标准支付 UX 的产品（独特的表单布局、自定义验证） | 原始卡片 API        | 唯一能够提供完整 UI 控制权的选项                 |
| 没有安全团队的公司                                     | 内嵌式（iframe）    | 默认避免进入 PCI 合规范围                        |

## 实现步骤：内嵌式结账

不同支付服务商的实现模式大致相同。以下是使用 Dodo Payments 时的示例。

```javascript
import DodoPayments from "dodopayments";

const client = new DodoPayments({
  bearerToken: process.env["DODO_PAYMENTS_API_KEY"],
});

// Server: create a checkout session
const session = await client.checkoutSessions.create({
  product_cart: [{ product_id: "pdt_pro_plan_monthly", quantity: 1 }],
  customer: { email: "customer@example.com", name: "Customer Name" },
  return_url: "https://yourapp.com/success",
});

// Client: render the iframe with session.checkout_url
// <iframe src={session.checkout_url} width="100%" height="600" />
```

会话 ID 的有效期很短（默认 15 分钟）。iframe 会渲染卡片表单、处理验证、在需要时执行 3DS，并通过 webhook 事件将控制权交还给你的应用。

完整的集成步骤请参阅 [集成指南](https://docs.dodopayments.com/developer-resources/integration-guide)。

## Webhook 处理

嵌入式支付意味着你需要可靠的 webhook 处理机制。面向客户的 UI 会根据乐观更新显示成功状态，而真正的事实来源是支付服务商发送的 webhook 流。

至少订阅以下事件：

- `payment.succeeded`
- `payment.failed`
- `subscription.active`
- `subscription.updated`
- `subscription.cancelled`
- `refund.succeeded`

幂等性是强制要求。Webhook 服务商会在失败时重试，而你无法承受重复授予订阅或重复扣款。将事件 ID 作为数据库中的唯一键，并参阅 [支付 API 中的幂等键](https://dodopayments.com/blogs/idempotency-keys-payment-api)，了解能够经受重试的实现模式。[Webhook 文档](https://docs.dodopayments.com/developer-resources/webhooks)中提供了完整的事件目录。

## 合规注意事项

嵌入式支付的合规范围分为三个层面：

### PCI-DSS

如果使用内嵌式或覆盖层结账，你处于 SAQ-A 范围内。卡片数据不会接触你的服务器。你只需确保托管环境具备合理的安全性，并保持 TLS 配置为最新状态。

如果使用原始卡片 API，你需要遵守 SAQ-D 或 PCI-DSS 一级合规要求，具体取决于交易量。仅合规一项，预计每年就要投入 25,000 至 250,000 美元。

如需进一步了解，请参阅我们的 [SaaS PCI 合规清单](https://dodopayments.com/blogs/pci-compliance-checklist-saas) 和 [数字业务的 PCI-DSS 合规指南](https://dodopayments.com/blogs/pci-dss-compliance-digital-business)。

### 税务

嵌入式支付无法解决税务问题。你仍然需要在拥有客户的每个司法管辖区计算、收取并缴纳税款。这正是 [MoR（名义商户）模式](https://dodopayments.com/blogs/what-is-a-merchant-of-record)发挥作用的地方：MoR（名义商户）会将税务处理作为嵌入式结账的一部分自动完成。

### 资金转移

如果你为自己的产品运行嵌入式结账，则不需要资金转移牌照。如果你运营的是一个由客户的客户完成付款的市场，则可能需要牌照。如果你属于市场平台类别，请咨询专门从事金融科技的律师。

## 在应用内管理订阅

嵌入支付只是完成了一半工作。另一半是让客户能够在你的应用内管理订阅：更换卡片、升级套餐、查看发票和取消订阅。

有两种方式：

1. **构建自己的订阅管理 UI**，调用支付服务商的 API。
2. **嵌入支付服务商的客户门户**，以 iframe 形式呈现。

自行构建可以完全控制体验，但会增加工程负担。嵌入服务商的门户上线更快，并且会随着服务商增加功能而保持更新。大多数 SaaS 公司会先使用嵌入式门户，规模超出其能力后再迁移到自定义 UI。

如需了解实现模式，请参阅我们关于 [订阅升级、降级与按比例计费](https://dodopayments.com/blogs/subscription-upgrade-downgrade-proration) 和 [SaaS 订阅管理](https://dodopayments.com/blogs/saas-subscription-management) 的指南。

## 失败支付恢复

嵌入式支付会让客户更直接地看到失败支付的恢复流程。当续费失败时，你必须在应用内进行沟通，而不能只发送电子邮件。

最佳实践：

1. **显示横幅提示**：支付失败或即将失败时，在应用内显示提示
2. **提前通知**：在卡片过期前通知客户（大多数服务商会通过 webhook 发送这些通知）
3. **软重试序列**：采用合理的间隔（1 天、3 天、7 天、14 天）
4. **宽限期**：在催收序列期间保持客户访问权限
5. **最终通知**：在降级或取消前发送最后通知

如需深入了解，请参阅我们关于 [SaaS 收入恢复](https://dodopayments.com/blogs/revenue-recovery-saas)的分析。

## 嵌入式支付应该花费多少

大多数 SaaS 创始人都会严重高估嵌入式支付的工程成本。借助 Dodo Payments 这样的现代服务商，完整的结账流程不到一周即可实现：

- 第 1-2 天：服务端创建会话、搭建 webhook 处理程序骨架
- 第 3-4 天：集成内嵌式或覆盖层结账前端
- 第 5-6 天：订阅管理 UI（或嵌入式门户）
- 第 7 天：测试、边界情况和错误状态

复杂性会在后续出现：税务合规、风控规则、重试逻辑、多币种和本地化支付方式。这正是 MoR（名义商户）服务商能够节省大量时间的地方。

## 常见的嵌入式支付错误

以下模式在生产环境中经常出问题：

- **Webhook 不实现幂等性。** 客户会被重复扣款。选择一个唯一键并将其持久化。
- **乐观 UI 缺少错误处理。** 当支付在客户看到"成功"后实际失败时，客服工单会迅速增加。
- **没有卡片更新流程。** 当客户的卡片过期，而唯一的更新方式是联系客服时，他们往往会流失。
- **硬编码税率。** 税率会发生变化。使用服务商的税务计算 API，或使用 MoR（名义商户）。
- **假设只有单一货币。** 即使你以 USD 上线，最终也会有欧洲客户希望使用 EUR 付款。请提前规划。

如需进一步了解货币，请参阅我们的 [面向全球 SaaS 的自适应货币指南](https://dodopayments.com/blogs/multi-currency-pricing-global-saas)。

## Dodo Payments 如何实现嵌入式支付

Dodo Payments 从第一天起就围绕嵌入式结账构建：

- 一个 SDK 同时提供内嵌式、覆盖层和原始卡片 API 选项
- 原生订阅管理，并在每个维度支持按比例计费
- 自动执行 3DS、风控筛查和重试逻辑
- 完整的 MoR（名义商户）覆盖，在 220 多个国家/地区自动处理税务
- 每次账单状态变化都会触发 webhook 事件，并内置幂等性支持
- 客户门户可嵌入你的应用，无需额外代码
- 透明定价：每笔交易收取 4% 加 40 美分，无月费

完整的开发者流程请参阅 [集成指南](https://docs.dodopayments.com/developer-resources/integration-guide)。

## 常见问题

### 嵌入式支付和支付网关有什么区别？

支付网关是处理卡片交易的底层基础设施。嵌入式支付则是一种 UX 模式，结账流程位于你的应用内，而不是位于重定向后的第三方页面。你可以在任何支付网关之上构建嵌入式支付，但大多数现代服务商会将两者作为一个产品提供。

### 嵌入式支付需要 PCI-DSS 合规吗？

如果使用基于 iframe 或覆盖层的结账，你至少需要遵守 SAQ-A，这是一份包含 22 个问题的自我评估表。只有在通过自定义表单处理原始卡片数据时，才需要完整的 PCI-DSS 一级合规。大多数 SaaS 平台都会使用基于 iframe 的嵌入式结账，从而保持在 SAQ-A 范围内。

### 实现嵌入式支付需要多长时间？

使用现代服务商实现标准 SaaS 订阅结账和嵌入式支付，大约需要一周的集中开发时间。税务合规、多币种、风控规则和重试逻辑还需要额外一到两周。如果没有 MoR（名义商户）服务商，考虑到需要在每个司法管辖区进行税务注册，预计总时间会延长到两到三个月。

### 嵌入式结账比托管式结账更好吗？

对于经常性 SaaS 收入来说，是的。在大多数经过测量的案例中，嵌入式结账的转化率始终比托管式结账高 15% 到 25%，因为客户不会因被重定向到第三方域名而失去上下文。对于一次性购买和交易量非常低、转化提升不足以抵消集成工作的产品，托管式结账仍然很有意义。

### 之后可以从托管式结账切换到嵌入式结账吗？

可以，而且大多数 SaaS 公司都会这样做。先使用托管式结账，验证客户是否愿意为产品付费。收入达到一定规模后，再切换到嵌入式结账以获得转化提升。如果你的服务商通过同一个 API 支持两种流程，迁移通常需要一到两周。

## 总结

到 2026 年，嵌入式支付已经成为 SaaS 的基本预期。与托管式结账相比，其转化提升非常显著，不容忽视；而现代服务商已将集成成本降低到一周左右。

大多数场景请选择基于 iframe 的内嵌式结账。如果移动端是你的主要使用场景，请选择覆盖层。只有在产品确实需要高度定制的 UX，并且有安全团队提供支持时，才使用原始卡片 API。

无论选择哪种方案，都应将税务和合规从你的工作清单中移除。像 Dodo Payments 这样的 [MoR（名义商户）服务商](https://dodopayments.com)可以在一个技术栈中处理嵌入式结账、税务合规、风控筛查和全球付款。请访问 [定价页面](https://dodopayments.com/pricing) 或 [集成指南](https://docs.dodopayments.com/developer-resources/integration-guide) 开始使用。
---
- [More Payments articles](https://dodopayments.com/blogs/category/payments)
- [All articles](https://dodopayments.com/blogs)