Skip to main content
将此提示复制到你的 AI 代码编辑器(Cursor、Copilot、Claude Code 等)中,即可自动完成集成:

你将构建什么

一个完整的 Next.js 收银台集成,包括:
  • 服务端创建收银台会话
  • 客户端重定向到托管收银台页面
  • Webhook 处理支付确认
  • 基于支付状态的受保护路由

前置条件

  • Next.js 13+ 带 App Router
  • Waffo Pancake 账户和 API 密钥
  • 在 Dashboard 中创建的产品

项目设置

1. 安装依赖

2. 环境变量

SDK 支持多种私钥格式:PEM、base64 或原始格式,初始化时会自动标准化。.env 文件中的字面量 \n 也能正常使用。

创建收银台 API 路由

使用 SDK 创建一个 API 路由来生成收银台会话:
SDK 会自动处理请求签名和确定性幂等键,无需手动设置请求头。

定价页面组件

创建带有收银台按钮的定价页面:

Webhook 处理器

使用 SDK 内置的 verifyWebhook() 处理支付确认 — 它内嵌了测试和生产环境的公钥,无需管理 Webhook 密钥:
SDK 的 verifyWebhook() 使用内嵌公钥进行签名验证,无需设置 WAFFO_WEBHOOK_SECRET 环境变量。同时默认包含重放攻击防护。

成功页面

支付成功后显示确认:

完整文件结构


测试清单

上线前:
  • 使用测试卡 4576 7500 0000 0110 测试收银台流程
  • 验证 Webhooks 已收到(检查 Dashboard 日志)
  • 使用 4576 7500 0000 0220 测试拒绝支付
  • 确认成功页面正确显示
  • 切换到正式 API 密钥
  • 更新 Webhook URL 为生产端点

下一步

处理 Webhooks

深入了解 Webhook 处理

订阅管理

高级订阅功能