跳转到主要内容
为您的软件或数字商品签发唯一密钥,控制激活,并在需要时撤销访问。许可证密钥非常适合与订阅和一次性购买配合使用。

什么是许可证密钥?

许可证密钥是授权访问您产品的唯一令牌。它们非常适合:
  • 软件许可:桌面应用程序、插件和命令行工具
  • 每用户控制:限制每个用户或设备的激活次数
  • 数字商品:限制下载、更新或高级功能

主要好处

  • 访问控制:定义到期和激活限制
  • 操作可见性:跟踪使用情况、设备和历史记录
  • 安全性和支持:快速禁用、重新启用和审计

创建许可证密钥

1

Create a License Key

转到您的 Dodo Payments 仪表板并打开许可证密钥部分。选择创建新许可证密钥的选项。
2

Configure License Key Settings

设置许可证密钥的签发和使用方式,请填写以下字段:
  • License Key Expiry Date:定义密钥有效期。选择特定时长(例如 30 天或 1 年),或者选择 “no expiry” 以获取永久密钥。
  • Activation Limit:设置每个密钥的最大并发激活数。针对单用户(1)或团队许可(5)使用特定数字,或选择 “unlimited” 以取消激活上限。
  • Activation Instructions:为客户提供清晰的激活步骤,这些步骤也会随许可证密钥通过电子邮件发送。例如:“在 Settings → License 中粘贴密钥”或“运行:mycli activate <key>”。
3

Review and Save

检查所有输入的详细信息。准备就绪后,保存许可证密钥配置以完成密钥创建。
使用现实的说明并包含支持链接,以减少激活请求。
在 Dodo Payments 仪表板中创建许可证密钥

管理与监控

许可证密钥部分提供所有许可证密钥活动的全面视图,使您能够有效管理和监控许可证。

关键信息

查看每个许可证密钥的详细信息:
  • 密钥详细信息:许可证密钥值、相关产品名称、客户详细信息(customer_id)和购买日期
  • 使用活动:激活次数、激活日期和时间,以及状态(激活、过期、禁用)
  • 到期和限制:密钥到期日期、剩余激活次数和当前激活实例
许可证密钥详细信息

可用操作

您可以对许可证密钥执行以下操作:
  • 禁用许可证密钥:立即禁用密钥以防止进一步使用
  • 启用密钥:重新启用先前禁用的许可证密钥
  • 查看激活实例:查看特定许可证密钥的所有相关激活实例
许可证密钥操作

好处

  • 实时跟踪许可证密钥活动
  • 识别潜在的滥用或未经授权的激活
  • 通过提供详细的使用记录简化客户支持,以防出现差异

API 管理

使用这些 API 激活、验证、列出和更新许可证密钥及其激活实例。
公共端点:激活、停用和验证许可证端点是公开的不需要 API 密钥。这使您可以直接从客户端应用程序、桌面软件或 CLI 调用它们,而无需暴露 API 凭据。

集成示例

激活许可证

这些端点不需要 API 密钥,可直接从客户端应用调用。
import DodoPayments from 'dodopayments';

// No API key needed for public license endpoints
const client = new DodoPayments();

const response = await client.licenses.activate({ 
  license_key: 'license_key', 
  name: 'Device Name' 
});

console.log(response.id);

验证许可证

import DodoPayments from 'dodopayments';

// No API key needed for public license endpoints
const client = new DodoPayments();

const response = await client.licenses.validate({ 
  license_key: '2b1f8e2d-c41e-4e8f-b2d3-d9fd61c38f43' 
});

console.log(response.valid);

返回 URL 中的许可证密钥

当客户完成启用许可证密钥的产品购买时,许可证密钥会自动作为查询参数附加到您的 return_url 上。这样您就可以在成功页面上立即显示密钥,而无需额外的 API 调用。
https://yoursite.com/return?payment_id=pay_xxx&status=succeeded&license_key=LK-001&email=customer%40example.com
如果购买生成多个许可证密钥(例如数量 > 1),它们将以逗号分隔:
https://yoursite.com/return?payment_id=pay_xxx&status=succeeded&license_key=LK-001,LK-002&email=customer%40example.com
对于订阅,subscription_id 会替代 payment_id
https://yoursite.com/return?subscription_id=sub_xxx&status=active&license_key=LK-001&email=customer%40example.com
在您的返回页面解析 license_key 参数,以便立即向客户显示密钥,从而改善购买后的体验。

最佳实践

  • 保持限制明确:为过期时间和激活次数选择合理的默认值
  • 指导用户:提供精确的激活说明和自助文档
  • 自动化检查:在授予访问之前在服务器端验证密钥
  • 监控事件:使用 webhook 检测滥用并自动执行撤销