客户门户是一个安全的托管区域,客户可以在其中管理订阅、查看发票并访问许可密钥详细信息——无需联系支持。
Create Portal Session (API)
通过编程方式创建安全的时限门户会话。
Subscriptions
管理定期计划、升级、降级和附加组件。

什么是客户门户?
该门户为客户提供了一个可信的、品牌化的自助服务体验,客户可以:- 访问账单历史记录:查看发票并下载收据。
- 管理订阅:查看订阅详情,暂停和恢复订阅,并立即或在下一个账单日期取消订阅。
- 更新支付方式:更改有效订阅的支付方式,或重新激活处于暂停状态的订阅。
- 获取许可证密钥:访问与购买相关联的所有密钥。
- 轻松导航:使用返回按钮在门户的各个部分之间切换,同时不会丢失上下文。
主要好处
- 降低支持量:客户自行解决常见的账单请求。
- 更快的价值实现:立即访问发票和密钥。
- 降低流失风险:清晰可见的续订和计划详情。
- 安全设计:使用过期链接的令牌化访问。
访问方式
客户可以通过静态链接或一次性动态链接访问门户。静态链接(基于电子邮件的访问)
客户可以通过在一个永不过期的静态链接中输入他们的电子邮件来请求门户访问。 静态门户链接格式因环境而异: 测试模式(用于测试和开发):{business_id} 替换为您的实际业务标识符,然后与客户分享相应链接,以便他们输入电子邮件并获取安全的门户访问权限。

1
Merchant flow
- 转到 Sales → Customer。
- 点击 Share invite。
- 复制 Static link 并与客户分享。
2
Customer flow
- 打开该静态链接。
- 输入购买时使用的电子邮件。
- 收到一个安全的登录链接以访问门户。
现有客户会被自动识别。
动态链接(魔法链接)
一个个性化的一次性魔法链接,直接将客户引导到门户。该链接在24小时内过期。
1
Merchant flow
- 转到 Sales → Customer。
- 点击 Share invite。
- 复制 Dynamic link 并与客户分享。
2
Customer flow
- 打开该动态链接。
- 直接访问客户门户,无需输入电子邮件。
门户功能
改版后的客户门户提供了简洁统一的界面,带有左侧边栏,并为所有账户管理需求组织了各个版块。Active Subscriptions
查看所有有效订阅,包括计划名称、价格、续订日期和有效期。点击“管理订阅”以查看详情、编辑账单信息、暂停或取消订阅。
Payment Methods
一目了然地查看所有保存的支付方式(卡、UPI 等)。可以直接在订阅详情中编辑支付方式。
Billing History
在详细表格中查看所有交易,含日期、状态、定价类型、权益以及可下载的发票。
Billing Information
在订阅详情页查看并编辑姓名、电子邮件、电话号码及账单地址。
门户概览
门户主页在一个可滚动视图中展示所有激活订阅、保存的支付方式和账单历史。
支付方式与账单历史
向下滚动可查看保存的支付方式和含状态指示及可下载发票的完整账单历史。
计划变更(升级/降级)
当产品被归类到 产品集合 中时,客户可以直接在客户门户内在计划之间升级或降级。- 自动检测:首次访问时,门户会根据客户的浏览器设置检测其首选语言,并加载相应的翻译(如果有)。默认情况下使用英语。
- 手动覆盖:客户可以随时通过门户标题中的语言选择器更改活动语言(适用于电脑和移动设备)。
- 持久偏好:所选语言将存储在
NEXT_LOCALEcookie 中(有效期为1年),以便在会话之间记住选择。
计划变更的工作原理
- 客户在门户中查看当前订阅
- 根据产品集合显示可用的升级/降级选项
- 客户选择新计划
- 按比例分摊会被计算并(如适用)立即处理付款
- 订阅被更新至新计划
计划变更仅在同一集合内的产品之间可用。产品必须是订阅或基于使用量计费类型。
企业控制
企业可在订阅设置中配置计划变更行为:- Allow Subscription Updates:启用或禁用客户升级或降级其订阅的能力
Product Collections
了解如何设置产品集合并配置升级/降级路径。
- 客户在订阅详情页面点击 Change Plan。
- 系统根据产品集合显示可用的升级/降级选项。
- 客户选择新方案。Confirm Plan Change 面板会显示当前方案与更新后的方案、订单项明细(旧方案的抵扣、新方案的费用)、税费以及当前应付金额。客户也可以在此处添加折扣代码。
- 客户点击 Pay ${amount} 确认。
- 系统计算按比例计费金额并处理费用——费用会从已保存的支付方式中扣除;如果商家通过 payment link 收取方案变更费用,则会跳转到托管结账页面(见下文)。
- 订阅更新为新方案。更新是立即生效,还是仅在费用支付成功后生效,取决于您的 payment failure handling;通过 payment link 支付的方案变更始终需要等待支付完成。


方案变更仅适用于同一集合中的产品。产品必须使用订阅或基于用量的计费类型。
通过 Payment Link 收取方案变更费用
默认情况下,立即变更方案会直接从客户已保存的支付方式中扣款。启用 Collect Plan Change Payments by Payment Link 后,行为将发生变化:客户不会通过已保存的卡片支付,而是会被发送到 Dodo Checkout 页面完成支付。此设置适用于会产生费用的升级和降级。

在 checkout 支付成功之前,订阅会保持在当前方案上——支付失败或中止不会改变订阅,因此客户可以在同一 checkout session 中重试。计划中的降级(
effective_at: next_billing_date)不受影响,仍会在下一个计费日期生效,无需经过 checkout。Plan Change via Payment Link (API)
了解如何使用
collect_via_payment_link 请求 payment link 并处理响应。商家控制项
商家可以在 Subscription Settings 中配置 Customer Portal 的订阅行为:- Allow Subscription Updates:启用或禁用客户升级或降级订阅的功能
- Allow Subscription Cancellation:启用或禁用客户取消自己订阅的功能
- Allow Subscription Pause:启用或禁用客户暂停和恢复自己订阅的功能
- Collect Plan Change Payments by Payment Link:将客户发送到 checkout 页面,为立即方案变更付款,而不是从其已保存的支付方式中扣款。默认关闭。
Product Collections
了解如何设置产品集合并配置升级/降级路径。
订阅详情
客户在任何有效订阅上点击“Manage subscription”后,会进入订阅详情页面。此页面显示:- 方案详情:订阅名称、价格、续订日期和有效期
- 支付方式:与订阅关联的卡片或支付方式,以及“Edit”按钮
- 账单信息:姓名、电子邮件、电话号码和账单地址,以及“Edit”按钮
- 账单历史:此订阅的所有支付记录的详细表格
- 暂停:暂停订阅的选项,仅在您允许自助暂停时显示
- Cancel Subscription:用于取消订阅的醒目按钮

取消订阅
客户可以直接从订阅详情页面取消订阅。点击“Cancel Subscription”会打开确认对话框,其中包含两个选项:- 在下一个计费日期取消:订阅会保持有效,直到当前计费周期结束,然后自动取消。
- 立即取消:订阅会立即取消。
自助取消由 Settings → Subscriptions 下的 Allow Subscription Cancellation 设置控制,该设置默认启用。关闭后,Cancel Subscription 按钮会被禁用,并显示提示客户联系您的工具提示;Customer Portal 中的两种取消路径——立即取消和在下一个计费日期取消——都会被拒绝。已经安排取消的客户仍可以撤销取消,因此可以选择继续保留订阅。您自行执行的取消操作不会受到影响。

取消原因
在确认取消之前,系统会询问客户**“您为什么要取消?”**,并提示客户从整理后的列表中选择原因。该原因会存储在订阅中,并显示在 webhook payload 和 API 中,因此您可以分析流失原因并调整挽回客户的流程。
所选值会写入订阅的
cancellation_feedback 字段。还可以选择性地记录自由文本 cancellation_comment。
subscription.cancelled webhook payload 中;通过 API 安排或执行取消时,您还可以通过 PATCH /subscriptions/{subscription_id} 以编程方式填充这些字段。
暂停订阅
暂停为客户提供了保留订阅与直接取消之间的中间选项。暂停的订阅会停止计费,但保留其方案和历史记录,因此客户之后可以恢复订阅,而不必重新开始。 客户从订阅详情页面打开暂停对话框。对话框会显示当前方案,警告访问权限会立即结束,并说明计费日期如何顺延。客户点击 Pause subscription 确认。
- 访问权限会立即停止。 订阅包含的功能、下载内容和许可证密钥会停止工作,直到订阅恢复。
- 暂停没有结束日期。 订阅会一直处于暂停状态,直到客户恢复订阅。
- 不会损失时间。 下一个计费日期和续订日期都会按照暂停时长向后顺延。
active,访问权限也会恢复。
自助暂停由 Settings → Subscriptions 下的 Allow Subscription Pause 设置控制,该设置默认禁用。关闭时,客户无法开始新的暂停;但已经暂停的客户仍可以恢复自己发起的暂停。您从 dashboard 自行执行的暂停操作不会受到影响。
How Pausing Works
了解完整的暂停行为,包括计费影响、用量结算和 webhooks。
更新支付方式
客户可以直接从订阅详情页面更新支付方式,只需点击支付方式旁边的“Edit”。此功能对于重新激活因支付失败而被置于暂停状态的订阅尤为重要。重新激活处于暂停状态的订阅
当订阅因支付失败而处于on_hold 状态时,客户必须更新支付方式才能重新激活订阅。更新流程会自动:
- 创建一笔费用,用于支付剩余应付款项
- 生成 invoice,用于记录该费用
- 处理支付,使用新的支付方式完成
- 重新激活订阅,支付成功后将订阅恢复为
active状态
成功更新
on_hold 订阅的支付方式后,客户会看到确认页面,并收到有关支付成功和订阅重新激活的电子邮件通知。支付方式更新流程
1
Access subscription details
从 Customer Portal 主页的任意有效订阅中点击“Manage subscription”。
2
Click Edit on payment method
点击支付方式旁边的“Edit”按钮,打开支付方式更新界面。
3
Select or add payment method
选择现有的已保存支付方式,或安全地输入卡片详细信息来添加新的支付方式。
4
Confirm changes
确认更新。对于
on_hold 订阅,系统会自动创建一笔费用,用于支付剩余应付款项。5
Complete payment (if on hold)
如果订阅处于暂停状态,客户会被重定向以完成剩余应付款项的支付。支付成功后,订阅会自动重新激活。
6
Confirmation
客户会收到支付方式已更新的确认信息;如果适用,也会收到订阅已重新激活的确认信息。
集成示例
通过 API 为特定客户创建有时效限制的 Customer Portal session,然后将用户重定向到 session URL。统一 Customer Portal
除面向特定商家的 Customer Portal 外,Dodo Payments 还在 customer.dodopayments.com 提供统一 Customer Portal,客户可以在其中查看和管理通过 Dodo Payments 向不同商家购买的所有商品和订阅。
统一 Portal 功能
- 跨商家可见性:在一个位置查看任何 Dodo Payments 商家的所有购买记录和订阅
- 集中管理:从单一 dashboard 管理不同商家的订阅
- 统一账单历史:访问所有购买记录的 invoice 和支付历史
- 单点登录:使用电子邮件登录一次,即可访问所有 Dodo Payments 商家的购买记录
故障排查
- 链接已过期:生成并发送新的动态链接。
- 未识别电子邮件:请客户使用与其购买记录关联的电子邮件
- 订阅处于暂停状态:如果订阅处于暂停状态,客户必须通过 Portal 更新支付方式,以结清欠款并重新激活订阅。更新流程会自动收取剩余应付款项。
- 支付方式更新失败:如果
on_hold订阅在更新过程中支付失败,订阅将继续处于暂停状态。客户可以使用其他支付方式重试。
Design & Theme Customization
在 Design 页面使用预构建主题、字体排版、颜色和实时预览,自定义 Customer Portal 的外观。