Skip to main content
结账页面
Dodo Payments 结账页面是面向数字产品和 SaaS 业务的转化优化、全球合规结账。它支持多种货币、语言、税费、折扣、附加项以及企业友好的合规模式。

Checkout Sessions API

通过编程方式创建托管结账会话。

Preview Checkout

在创建会话前计算价格和税费。

Payment Methods

支持的支付方式和配置选项。
通过 Checkout Sessions API 生成的结账链接不可重复使用,并会在 24 小时内过期。请为每位客户和每次付款尝试生成新的 session。

Adaptive Currency

Adaptive Currency 允许客户使用首选的本地货币付款,从而提升信任度和转化率。

工作原理

  1. 启用:从 Settings → Business 中启用 Adaptive Currency
  2. 选择:客户可以直接在结账页面切换货币
  3. 转换:使用实时 FX 汇率动态转换价格
  4. 显示:付款前透明地显示最终应付金额
结账页面上的货币选择器

Adaptive Currency

详细了解支持的货币、转换费用和退款处理。

多语言结账

Dodo Payments 支持在结账页面使用多种语言,让客户能够以熟悉的语言完成付款。
结账页面上的语言选择器

主要特点

  • 可直接在结账页面使用语言选择器
  • UI 文本、标签和系统消息均已本地化
  • 提升可访问性和国际转化率

支持的语言

结账页面支持 21 种语言:
创建 checkout session 时,可以通过设置 force_language 参数,强制结账页面使用特定语言。详情请参阅 Checkout Sessions API

自动税费计算

系统会根据客户的账单地址自动计算税费,确保符合 GST、VAT 和 sales tax 要求,无需手动设置。

税费计算方式

1

Location Detection

系统会根据客户所在国家(以及适用时的地区)应用税务规则。
2

Dynamic Updates

以下情况发生时,税额会自动更新:
  • 国家/地区发生变化
  • 地址更新
3

Transparent Display

付款前会清晰显示最终税费明细。
税费计算完全自动化。对于标准数字商品和 SaaS 产品,无需手动配置。

企业税号支持

对于已注册的企业,结账页面允许客户输入 Business Tax ID(例如 VAT/GST number)。

输入税号后会发生什么

  • 实时验证税务资格
  • 应用适用的税收豁免或 reverse-charge 规则
  • 结账页面上的税额即时更新
结账页面上的企业税号输入框
这对于 B2B SaaS 和数字服务尤其有用,因为企业客户可能符合税收豁免条件。

折扣码

客户可以直接在结账页面使用你在 dashboard 中创建的折扣码或促销码。

结账体验

  1. 客户输入折扣码
  2. 系统即时验证折扣码
  3. 清晰显示更新后的价格和节省金额
结账页面上的折扣码输入框

API 集成

预先应用一个或多个可叠加的折扣码,或启用折扣码输入字段:
discount_codes 接受最多包含 20 个代码的数组,并按顺序叠加。单数形式的 discount_code 字段已弃用,但仍可使用——现有集成无需立即更改。你可以在方便时迁移到 discount_codes,以使用叠加功能和更丰富的响应结构。

Discount Codes

了解如何创建和管理折扣码。

Validate Discount by Code

使用代码名称查找并验证折扣。

智能地址收集

结账页面支持灵活的地址输入方式,帮助客户更快完成结账。

可用选项

地址收集在速度、准确性和全球覆盖范围之间取得平衡,在确保合规的同时最大限度提升转化率。

最简地址模式

为了最大限度提升转化率,可以启用最简地址收集来减少结账阻力。当 minimal_address 设置为 true 时,结账页面仅收集:
  • 国家/地区——税费确定始终需要
  • ZIP/Postal code——仅在 sales tax、VAT 或 GST 计算需要的地区收集
其他所有地址字段(街道、城市、省/州)都会跳过,从而显著加快结账完成速度。
最简地址模式,仅显示结账页面上的国家/地区和 ZIP/postal code 字段
完整地址收集仍是默认设置。对于不需要完整账单信息的数字产品和 SaaS 流程,请启用 minimal_address

Minimal Address Reference

请参阅 Checkout Sessions API 指南中完整的 minimal_address 参数参考。

电话号码收集

使用 checkout session feature flags 控制结账页面是否显示电话号码字段,以及该字段是否为必填项。
require_phone_number: true 要求启用 allow_phone_number_collection: true。如果禁用了电话号码收集但将电话号码设为必填,API 会拒绝创建该 session。
对于 B2B SaaS、受监管行业,或任何需要经过验证的支持、欺诈审查或合规联系渠道的流程,请使用 require_phone_number

自定义字段

通过定义自定义表单字段,在结账过程中收集客户的其他信息。这适用于收集公司名称、团队规模、推荐来源或其他业务特定信息。

可用字段类型

示例

客户的响应会自动包含在 webhook payload(payment.succeededsubscription.active)和 API 响应的 custom_field_responses 数组中。每个 checkout session 最多可以定义 5 个自定义字段。

Custom Fields Guide

详细了解自定义字段配置和响应访问方式。

隐私政策和条款接受

为确保法律和合规透明度:
这有助于满足包括 GDPR 合规在内的全球消费者保护和数据隐私要求。

集合结账

Product Collections 提供统一的结账体验,让客户可以在一次结账中查看并选择多个相关产品(例如 Starter、Pro、Enterprise 计划)。

工作原理

  1. 显示所有产品:客户可以看到集合中的每个活跃产品
  2. 预选第一个产品:系统会自动选择集合中的第一个产品
  3. 比较选项:客户可以在选择前比较价格和功能
  4. 单项选择:选择产品后,结账将按照标准付款流程继续

创建集合结账

使用 product_collection_id 时,请传入空的 product_cart 数组。创建 session 时无法预先应用折扣码。

Product Collections

了解如何创建和管理 Product Collections,以实现统一的结账体验。

Checkout Session 配置

使用 Checkout Sessions API 控制结账行为:
付款后,客户会被重定向到你的 return_url,并自动附加 query parameters——包括 payment_idsubscription_idstatusemail,以及 license_key(如果适用)。完整列表请参阅 Checkout Sessions 指南

Checkout Sessions API

Checkout sessions 的完整 API 参考。

Checkout Integration Guide

集成结账的分步指南。

结账主题自定义

通过 API 创建 checkout session 时使用 customization.theme_config 参数,自定义结账页面外观以匹配你的品牌。可以为浅色和深色模式配置颜色、字体、边框圆角和按钮文本。
自定义主题的结账页面

Design & Theme Customization

在 dashboard 中通过预构建主题、排版、颜色和实时预览以可视化方式配置主题。
本节介绍使用 customization.theme_config 进行 server-side API 主题配置。如果你使用的是 Checkout SDK(overlay 或 inline checkout),请参阅 Overlay Checkout 中的主题自定义部分,该部分使用 camelCase 属性(例如使用 bgPrimary 而不是 bg_primary)。

主题配置选项

颜色配置(浅色/深色模式)

每种模式(lightdark)都支持以下颜色属性:
所有颜色字段都接受标准 CSS 颜色格式:
  • Hex:#fff#ffffff#ffffffff
  • RGB/RGBA:rgb(255, 255, 255)rgba(255, 255, 255, 0.5)
  • HSL/HSLA:hsl(120, 100%, 50%)hsla(120, 100%, 50%, 0.5)
  • 命名颜色:redbluetransparent

示例

无需指定所有颜色属性。未指定的属性将使用默认主题值。
最后修改于 2026年7月31日