- 使用 OpenAI 的
gpt-image-2.5-flare模型生成图像。 - 跟踪每次图像生成,以便进行计费。
- 向客户收取其生成图像的费用。
- 处理两个质量层级:
medium和high。
我们要构建的内容
PixelGen AI 的工作方式如下:- 服务:使用 OpenAI Image API 生成图像
- 定价模式:按图像计费(每张图像 $0.05)
- 免费层级:每位客户每月可免费生成 10 张图像
- 质量选项:
medium和high质量的图像,价格相同
- 一个 Dodo Payments 账户。
- OpenAI API 的访问权限。在使用 GPT Image 模型之前,OpenAI 可能要求完成 API Organization Verification。
- Node.js 22 或更高版本,以及 TypeScript 和 Node.js 的实际使用经验。
第 1 步:创建 Usage Meter
在 Dodo Payments dashboard 中创建一个 Meter,用于跟踪服务生成的每张图像。Meter 会统计可计费事件。
Open the Meters Section
- 登录 Dodo Payments dashboard。
- 在侧边栏中转到 Products → Meters。
- 点击 Create Meter。
Enter the Meter Details
Image Generation Meter描述:Tracks each AI image generation request made by customers using our OpenAI image serviceEvent Name:image.generatedConfigure How Images Are Counted
imagesAdd Quality Filtering

- 开启 Enable Event Filtering。
- 将匹配逻辑设置为 OR,这样当任意条件匹配时,事件就会被计数。
- 添加第一个条件:
- Key:
quality - Operator:
equals - Value:
medium
- Key:
- 点击 Add condition,然后添加第二个条件:
- Key:
quality - Operator:
equals - Value:
high
- Key:
Create Your Meter
- 检查每项设置是否与上述值一致。Meter 创建后无法编辑。
- 点击 Create Meter。
第 2 步:创建计费产品
创建一个定义定价的产品:每张图像 $0.05,并提供 10 张免费图像。该产品会将 Meter 连接到计费功能。Navigate to Products
- 在 Dodo Payments dashboard 中,点击侧边栏的 Products。
- 点击 Add Product。
- 在 Pricing Type 下选择 Usage Based Billing。
Enter Product Details
PixelGen AI - Image GenerationDescription:AI-powered image generation service with pay-per-use billingProduct Image:上传清晰且相关的图像。Connect Your Meter

0,这样客户只需按使用量付费,无基础费用。然后连接您创建的 Meter:- 滚动到 Associated Meters 部分。
- 点击 Add meters。
- 从下拉菜单中选择 “Image Generation Meter”。
- 确认 Meter 已显示在产品配置中。
Set Your Pricing

0.05,即每张图像 $0.05。Free Threshold:10。每位客户每月可免费生成 10 张图像。Save Your Product
- 检查设置:
- 名称:PixelGen AI - Image Generation
- Meter:Image Generation Meter
- 价格:每张图像 $0.05
- 免费层级:10 张图像
- 点击 Save Changes。
第 3 步:进行测试购买
在 test mode 中购买一次产品。此次购买会创建应用发送使用量事件所需的客户。Get Your Payment Link
- 在 Dodo Payments dashboard 中转到 Products。
- 找到 “PixelGen AI - Image Generation” 产品。
- 点击产品旁边的 Share。
- 复制 payment link。
https://test.checkout.dodopayments.com/buy/pdt_IgPWlRsfpbPd5jQKezzW1?quantity=1。Complete a Test Purchase
- 在新的浏览器标签页中打开 payment link。
- 输入 测试支付信息 并完成购买。
Find Your Customer ID
- 返回 Dodo Payments dashboard。
- 在侧边栏中转到 Sales → Customers。
- 根据测试电子邮件地址找到您创建的客户。
- 复制客户 ID。它类似于
cus_abc123def456。
第 4 步:构建示例应用
设置好计费并创建测试客户后,构建示例 PixelGen AI 应用。该应用会生成图像,并将其报告给 Dodo Payments 以进行计费。gpt-image-2.5-flare 模型。Image API 返回 Base64 编码的图像数据,因此该示例会将每张图像保存为 PNG 文件。Dodo Payments 部分(计量器、产品和 image.generated 使用事件)不依赖于模型。Set Up Your Project
Install Dependencies
Create the Main Application
index.ts 的文件,并粘贴下面的应用代码。.env 和 package.json:
第 5 步:测试示例应用
端到端测试 PixelGen AI,并观察使用量是否到达 Dodo Payments。Set Up Your Environment
- 在
pixelgen-ai目录中创建一个.env文件。 - 添加您的 API keys:
- 安装依赖并运行应用:
Generate Your First Test Image
sendUsageEvent 输出的请求调试行已省略:Generate a Few More Images
npm start,并使用以下提示词:- “A sunset over mountains with purple clouds”
- “A steampunk coffee machine in a Victorian kitchen”
- “A friendly dragon reading a book in a library”
Check Your Dodo Payments Dashboard
- 打开 Dodo Payments dashboard。
- 转到 Products → Meters,然后打开 Image Generation Meter。
- 选择 Events 标签页。
- 在列表中找到您的图像生成事件。
- Event name:
image.generated - Customer ID:您的测试客户 ID
Verify Billing Calculations

- 在 Meter 中选择 Customers 标签页。
- 找到您的测试客户。
- 检查 Consumed Units 列。
Test the Billing Threshold
- 再生成 8 张图像,使总数达到 12 张。
- 再次打开 Meter 的 Customers 标签页。
- 检查以下值:
- Consumed Units:12
- Chargeable Units:2(12 − 10 张免费图像)
- Total Price:$0.10
故障排除
常见问题及解决方法:Events not appearing in dashboard
Events not appearing in dashboard
- 事件名称与 Meter 配置不完全匹配
- 客户 ID 不存在于您的账户中
- API key 无效或已过期
- 网络连接问题
- 检查事件名称是否与 Meter 完全匹配。事件名称区分大小写。
- 检查客户 ID 是否存在于 Dodo Payments 中。
- 使用简单的 API 调用测试 API key。
- 检查网络连接和防火墙设置。