跳转到主要内容
计费 SDK 是一个全面的开源解决方案,为现代 Web 应用程序提供完整的计费基础设施。它包括 React 组件、CLI 工具和对多个框架的全栈集成支持,兼容 Dodo Payments。

概述

计费 SDK 提供:
  • React 组件:为 React 应用程序预构建的可定制计费组件
  • CLI 工具:用于项目初始化和组件管理的命令行界面
  • 框架支持:与 Next.js、Express.js、Hono、Fastify 和 React 的集成
  • 支付提供商:与 Dodo Payments 的完整集成

快速开始

几分钟内开始使用计费 SDK:
1

安装 CLI

使用 npx 运行 CLI,无需安装:
npx @billingsdk/cli --help
或者为频繁使用全局安装:
npm install -g @billingsdk/cli
2

初始化项目

运行交互式设置以创建新的计费项目:
npx @billingsdk/cli init
系统会提示您选择:
  • 您的首选框架(Next.js、Express.js、Hono、Fastify、React)
  • 您的支付提供商(Dodo Payments)
3

添加组件

将单个计费组件添加到您的项目中:
npx @billingsdk/cli add pricing-table-one
npx @billingsdk/cli add subscription-management

支持的框架

计费 SDK 支持多个框架,并提供全面的 Dodo Payments 集成:
框架Dodo Payments
Next.js✅ 是
Express.js✅ 是
Hono✅ 是
React✅ 是
Fastify✅ 是

CLI 命令

@billingsdk/cli init

初始化一个新的计费项目,包含框架配置、Dodo Payments 集成和必要的依赖项。 它的功能:
  1. 框架选择:选择您首选的框架
  2. 模板安装:下载并安装特定于框架的模板,包含 Dodo Payments 集成
  3. 依赖管理:自动安装所需的依赖项
  4. 文件生成:创建必要的配置文件和样板代码
示例:
npx @billingsdk/cli init

@billingsdk/cli add

使用 shadcn/ui 注册系统将单个计费组件添加到您现有的项目中。 示例:
# Add a pricing table
npx @billingsdk/cli add pricing-table-one

# Add subscription management
npx @billingsdk/cli add subscription-management

# Add usage monitoring
npx @billingsdk/cli add usage-meter-circle
发生的事情:
  1. 从注册表下载组件配置
  2. 在您的 components/billingsdk/ 目录中安装组件文件
  3. 如有需要,更新您的项目配置
  4. 安装任何额外的依赖项

生成的文件结构

运行 init 后,您将获得一个完整的项目结构,包含:
  • API 路由:用于结账、客户、产品、订阅和 Webhook 的全面端点
  • Hooks:用于计费操作的 React hooks(如果使用 React/Next.js)
  • 库文件:支付提供商客户端初始化和实用工具
  • 环境配置:示例环境变量文件

Next.js 示例结构

your-project/
├── app/api/
│   └── (dodopayments)/
│       ├── checkout/route.ts
│       ├── customer/route.ts
│       ├── customer/payments/route.ts
│       ├── customer/subscriptions/route.ts
│       ├── product/route.ts
│       ├── products/route.ts
│       └── webhook/route.ts
├── hooks/
│   └── useBilling.ts
├── lib/
│   └── dodopayments.ts
└── .env.example

环境配置

初始化后配置您的环境变量:
# DodoPayments
DODO_PAYMENTS_API_KEY=your_api_key_here
DODO_PAYMENTS_ENVIRONMENT=test_mode
DODO_PAYMENTS_WEBHOOK_KEY=your_webhook_key_here

# App URL
NEXT_PUBLIC_APP_URL=http://localhost:3000
始终使用环境变量安全存储您的 API 密钥。切勿将其提交到版本控制中。

可用组件

计费 SDK 提供了一整套 React 组件:
  • 定价表:多种变体用于显示产品定价
  • 订阅管理:用于管理客户订阅的组件
  • 使用监控:用于跟踪基于使用的计费的可视化组件
  • 结账组件:预构建的结账流程
  • 客户门户:用于客户自助服务的组件

开源

计费 SDK 基于开源原则构建:
  • 🔍 透明性:完全了解组件的工作原理
  • 🤝 社区:由开发者为开发者构建
  • 🔒 安全性:开放代码意味着通过同行评审提高安全性
  • 📈 创新:通过社区贡献加快迭代
计费 SDK 根据 GNU 通用公共许可证 (GPL) 发布,确保项目保持开放和免费。

获取帮助

需要计费 SDK 的帮助吗?

贡献

我们欢迎贡献!请查看我们的 贡献指南,了解:
  • 报告错误
  • 请求功能
  • 提交拉取请求
  • 添加新组件
  • 改进文档

了解更多