概述
Dodo Payments Checkout SDK 提供了一种无缝的方式将我们的支付覆盖集成到您的 Web 应用程序中。它使用 TypeScript 和现代 Web 标准构建,提供了一个强大的解决方案,用于处理实时事件处理和可自定义主题的支付。
演示
Interactive Demo
通过我们的实时演示查看覆盖式结账的实际效果。
快速开始
只需几行代码即可开始使用 Dodo Payments Checkout SDK:分步集成指南
1
Install the SDK
使用您喜欢的包管理器安装 Dodo Payments Checkout SDK:
2
Initialize the SDK
在您的应用程序中初始化 SDK,通常在您的主组件或应用程序入口点:
3
Create a Checkout Button Component
创建一个打开结账覆盖的组件:
4
Add Checkout to Your Page
在您的应用程序中使用结账按钮组件:
5
Handle Success and Failure Pages
创建页面以处理结账重定向:
6
Test Your Integration
- 启动您的开发服务器:
- 测试结账流程:
- 点击结账按钮
- 验证覆盖是否出现
- 使用测试凭据测试支付流程
- 确认重定向正常工作
你应该在浏览器控制台看到结账事件的日志。
7
Go Live
当您准备好进行生产时:
- 将模式更改为
'live':
- 更新您的结账 URL,以使用来自后端的实时结账会话
- 在生产环境中测试完整流程
- 监控事件和错误
API 参考
配置
初始化选项
结账选项
方法
打开结账
使用指定的结账会话 URL 打开结账覆盖。关闭结账
以编程方式关闭结账覆盖。检查状态
返回结账覆盖当前是否打开。事件
SDK 提供实时事件,您可以通过onEvent 回调监听:
实施选项
包管理器安装
如 分步集成指南 所示,通过 npm、yarn 或 pnpm 安装。CDN 实施
对于无需构建步骤的快速集成,您可以使用我们的 CDN:主题定制
您可以通过在打开结账时传递一个themeConfig 对象到 options 参数来自定义结账外观。主题配置支持浅色和深色模式,允许您自定义颜色、边框、文本、按钮和边框半径。
本节介绍使用 Checkout SDK 进行已弃用的客户端主题配置。推荐的方法是在通过 API 创建 checkout session 时,使用
theme_config 参数在服务端配置主题。有关 API 级别的配置,请参阅 Checkout Theme Customization,或在 dashboard 中使用 Design page 通过实时预览以可视化方式配置主题。基本主题配置
完整主题配置
所有可用的主题属性:仅浅色模式
如果只想自定义浅色主题:仅深色模式
如果只想自定义深色主题:部分主题覆盖
你可以只覆盖特定属性。对于未指定的属性,checkout 将使用默认值:与其他选项结合的主题配置
你可以将主题配置与其他 checkout 选项结合使用:TypeScript 类型
对于 TypeScript 用户,所有主题配置类型都会导出:错误处理
SDK 通过事件系统提供详细的错误信息。请务必在onEvent 回调中实现适当的错误处理:
最佳实践
- 只初始化一次:在应用加载时初始化 SDK 一次,而不是在每次 checkout 尝试时初始化
- 错误处理:始终在事件回调中实现适当的错误处理
- 测试模式:在开发期间使用
test模式,只有在准备好上线时才切换到live - 事件处理:处理所有相关事件,以提供完整的用户体验
- 有效 URL:始终使用来自 create checkout session API 的有效 checkout URL
- TypeScript:使用 TypeScript 以获得更好的类型安全性和开发体验
- 加载状态:在 checkout 打开期间显示加载状态,以改善 UX
- 计时器管理:如果希望手动处理 session 过期,请禁用计时器(
showTimer: false)
故障排除
Checkout not opening
Checkout not opening
可能原因:
- 在调用
open()前未初始化 SDK - checkout URL 无效
- 控制台中存在 JavaScript 错误
- 网络连接问题
- 确认在打开 checkout 前已完成 SDK 初始化
- 检查控制台错误
- 确保 checkout URL 有效,并且来自 create checkout session API
- 验证网络连接
Events not firing
Events not firing
可能原因:
- 未正确设置事件处理程序
- JavaScript 错误阻止了事件传播
- SDK 未正确初始化
- 确认已在
Initialize()中正确配置事件处理程序 - 检查浏览器控制台中的 JavaScript 错误
- 验证 SDK 初始化已成功完成
- 先使用简单的事件处理程序进行测试
Styling issues
Styling issues
可能原因:
- CSS 与应用样式发生冲突
- 主题设置未正确应用
- 响应式设计问题
- 在浏览器 DevTools 中检查 CSS 冲突
- 验证主题设置是否正确
- 在不同屏幕尺寸下进行测试
- 确保 overlay 不存在 z-index 冲突
启用数字钱包
有关设置 Google Pay 和其他数字钱包的详细信息,请参阅 Digital Wallets 页面。overlay checkout 目前尚不支持 Apple Pay。Apple Pay 支持即将推出。
浏览器支持
Dodo Payments Checkout SDK 支持以下浏览器:- Chrome(最新版本)
- Firefox(最新版本)
- Safari(最新版本)
- Edge(最新版本)
- IE11+
Overlay 与 Inline Checkout
根据你的使用场景选择合适的 checkout 类型:相关资源
Inline Checkout
将 checkout 直接嵌入页面,实现完全集成的体验。
Checkout Sessions API
创建 checkout sessions,为 checkout 体验提供支持。
Webhooks
使用 webhooks 在服务端处理 payment events。
Integration Guide
Dodo Payments 集成完整指南。