Documentation Index
Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
Use this file to discover all available pages before exploring further.
Mã giấy phép thuộc loại quyền được cấp phép License Key. Tạo một quyền cấp phép License Key một lần với giới hạn kích hoạt, thời hạn hết hạn và hướng dẫn bạn muốn, gắn nó vào bất kỳ sản phẩm nào, và Dodo Payments sẽ tạo và phân phối một mã mỗi lần mua hoặc mỗi chỗ trong đăng ký, tự động.
Mã Giấy Phép là gì?
License keys are unique tokens that authorize access to your product. They’re ideal for:- Software licensing: Desktop apps, plugins, and CLIs
- Per-seat controls: Limit activations per user or device
- Digital goods: Gate downloads, updates, or premium features
Tạo một Quyền cấp phép License Key
Open Entitlements
Đi đến Entitlements trong bảng điều khiển Dodo Payments của bạn và nhấp + để tạo một quyền mới.
Choose License Key
Chọn License Key làm tích hợp. Cấu hình cách mà mỗi mã được cấp phát hành xử lý:
- Giới hạn Kích hoạt: Số lượng kích hoạt đồng thời tối đa cho mỗi mã (ví dụ,
1cho ứng dụng một người dùng,5cho giấy phép nhóm, để trống cho không giới hạn). - Thời Gian: Thời gian mã duy trì hiệu lực sau khi phát hành (ví dụ, 30 ngày, 1 năm). Đối với mã được cấp phát hành thông qua đăng ký, để trống; mã vẫn có hiệu lực miễn là đăng ký còn hoạt động.
- Hướng Dẫn Kích Hoạt: Các hướng dẫn dành cho khách hàng được gửi kèm với mã qua email. Ví dụ:
Paste the key in Settings → LicensehoặcRun: mycli activate <key>.

Gắn vào Sản Phẩm
Mở một sản phẩm, mở rộng Cài Đặt Nâng Cao → Entitlements & Credits, và chọn quyền cấp phép License Key của bạn. Một sản phẩm đơn có thể cấp một mã giấy phép cùng với các quyền khác (truy cập Discord, tải tệp, truy cập kho GitHub, v.v.) trong cùng một lần mua.
Cách Mã Được Phát Hành
Việc phát hành mã theo chuẩn vòng đời cấp phát:| Sự Kiện | Hành Vi |
|---|---|
payment.succeeded (một lần) | Tạo một mã cho mỗi quantity đã mua. Thời hạn mã tôn trọng thời gian của quyền cấp phát hành. |
subscription.active | Tạo một mã cho mỗi chỗ trong đăng ký quantity. Mã không có thời hạn; hiệu lực được gắn với tình trạng đăng ký. |
subscription.renewed | Không hành động. Các mã đã có vẫn tồn tại. |
subscription.on_hold | Vô hiệu hóa mã. Chúng sẽ được kích hoạt lại khi đăng ký thoát khỏi chế độ tạm dừng. |
subscription.cancelled / expired | Vô hiệu hóa permanent mã. |
subscription.plan_changed | Vô hiệu hóa mã cũ; phát hành mã mới cho kế hoạch mới. |
refund.succeeded (một lần) | Vô hiệu hóa mã. |
| Thu hồi thủ công qua API/bảng điều khiển | Vô hiệu hóa mã với revocation_reason: manual. Các mã này không tự cấp phát lại khi đăng ký được gia hạn. |
| Mã giấy phép bị vô hiệu hóa trực tiếp | Thu hồi quyền cấp phát với revocation_reason: license_key_disabled. Kích hoạt lại mã sẽ tự động kích hoạt việc cấp phát lại. |
Hành vi với Số lượng
- Sản phẩm đăng ký cấp một mã cho mỗi chỗ (
subscriptions.quantity). - Sản phẩm một lần cấp một mã cho mỗi dòng sản phẩm trong giỏ hàng (
product_cart.quantity). - Cấp phát thủ công qua API chỉ cấp đúng một mã.
Kích hoạt, Xác thực, Hủy kích hoạt
Các điểm cuối API kích hoạt/xác thực/hủy kích hoạt là công khai và không yêu cầu mã API. Sử dụng chúng trực tiếp từ phần mềm máy tính để bàn, giao diện dòng lệnh, hoặc khách hàng dựa trên trình duyệt để xác thực mã khi chạy.Các Điểm Cuối Công Khai: Các điểm cuối kích hoạt, hủy kích hoạt, và xác thực mã giấy phép là công khai và không yêu cầu mã API. Gọi chúng trực tiếp từ ứng dụng khách của bạn mà không cần lộ thông tin API của bạn.
Kích hoạt giấy phép
Xác thực giấy phép
Hủy kích hoạt một phiên bản kích hoạt
Quản lý Mã
Mở quyền cấp phát License Key từ bảng điều khiển của bạn để xem mọi quyền được cấp phát (một hàng cho mỗi mã khách hàng) với ngày giao, số lượng kích hoạt, và một hành động thu hồi. Chi tiết mỗi quyền cấp phát xuất hiện mã giấy phép nền, thời hạn, số kích hoạt đã sử dụng, và giới hạn kích hoạt. Bạn cũng có thể liệt kê các quyền cấp phát một cách lập trình:Nhập Mã Giấy Phép Hiện Có qua API
Đã có mã giấy phép trong hệ thống khác? Sử dụng API Tạo Mã Giấy Phép để nhập chúng vào Dodo Payments. Điều này cho phép bạn chuyển đổi mã hiện có mà không làm gián đoạn khách hàng của bạn — họ tiếp tục kích hoạt, xác thực, và hủy kích hoạt theo cùng chuỗi mã mà không cần cấp phát lại.Khác biệt của mã đã nhập từ mã tự động tạo
| Trường | Mã tự động tạo | Mã đã nhập |
|---|---|---|
source | "auto" | "import" |
payment_id | Đặt theo thanh toán gốc | null (không có giao dịch Dodo Payments) |
subscription_id | Đặt nếu mã được cấp phát thông qua một đăng ký | null trừ khi được liên kết rõ ràng |
| Thông báo email khách hàng | Gửi khi phát hành | Không gửi — xử lý riêng |
source trên phản hồi GET /license_keys để phân biệt hàng tồn kho được di chuyển từ các mã cấp phát tự nhiên khi hòa giải hoặc kiểm toán.
Mã Giấy Phép trong URL Trả Về
Khi một khách hàng hoàn thành mua một sản phẩm có quyền cấp phép License Key, mã được tạo sẽ tự động được đính kèm vàoreturn_url của bạn dưới dạng tham số truy vấn. Điều này cho phép bạn hiển thị mã ngay lập tức trên trang thành công của bạn mà không cần gọi thêm API.
subscription_id được sử dụng thay vì payment_id:
Quản Lý API
Lifecycle Operations (Public Endpoints)
Lifecycle Operations (Public Endpoints)
Kích hoạt, hủy kích hoạt, và xác thực là công khai; không yêu cầu mã API.
Activate License
Tạo hoặc ghi nhận một phiên kích hoạt cho một mã giấy phép.
Deactivate License
Thu hồi một kích hoạt trước để giải phóng dung lượng.
Validate License
Kiểm tra tính xác thực, trạng thái, và hạn chế trước khi cấp quyền truy cập.
License Key Management
License Key Management
Tạo, liệt kê, truy xuất và cập nhật các bản ghi mã giấy phép riêng lẻ. Sử dụng những điều này để nhập các mã hiện có hoặc lấy chi tiết sử dụng.
Create License Key
Tạo một mã giấy phép mới hoặc nhập một mã hiện có.
List License Keys
Duyệt tất cả các mã với chi tiết trạng thái và sử dụng.
Get License Key
Truy xuất một mã cụ thể và siêu dữ liệu của nó.
Update License Key
Chỉnh sửa thời hạn, giới hạn kích hoạt, hoặc bật/tắt một mã.
Entitlement Management
Entitlement Management
Quản lý quyền cấp phép License Key: giới hạn kích hoạt, thời gian và hướng dẫn của nó.
Create Entitlement
Tạo một quyền cấp phép License Key.
Update Entitlement
Cập nhật cấu hình của quyền cấp phép.
List Grants
Liệt kê các mã phát hành cho một quyền cấp phép.
Revoke Grant
Thu hồi thủ công mã của khách hàng.
Webhooks
Việc giao và thu hồi mã giấy phép kích hoạt bốn sự kiện webhookentitlement_grant.*. Payload của quyền cấp phát chứa một đối tượng license_key được điền đầy đủ với mã, thời hạn, số lượng kích hoạt đã sử dụng, và giới hạn.
Các sự kiện license_key.* cũ (license_key.created) tiếp tục kích hoạt cho vòng đời ghi lại mã giấy phép cơ bản; hãy xem trang payload webhook Mã Giấy Phép License Key webhook payload page.
Mã Giấy Phép Cũ
Các sản phẩm được tạo với flag
license_key_enabled cũ đã được tự động chuyển đổi sang quyền cấp phép License Key. Việc chuyển đổi là minh bạch: các mã của khách hàng hiện hữu vẫn hoạt động không đổi, các điểm cuối công cộng /licenses/activate, /licenses/validate, /licenses/deactivate tiếp tục hoạt động, và các điểm cuối API /license_keys/* tiếp tục đọc và ghi vào cùng kho mã.Phần bảng điều khiển License Keys độc lập vẫn có sẵn dưới dạng danh sách phẳng của mọi mã đã phát hành, hữu ích cho kiểm toán và tìm kiếm. Cấu hình mới (thay đổi giới hạn kích hoạt, thời hạn, hoặc hướng dẫn) nên được thực hiện bằng cách chỉnh sửa quyền cấp phép License Key đã chuyển đổi dưới Entitlements.Thực Hành Tốt Nhất
- Giữ rõ ràng các giới hạn kích hoạt: Chọn các mặc định hợp lý (1 cho ứng dụng một người dùng, 3–5 cho giấy phép nhóm) và tài liệu hóa chúng.
- Cung cấp hướng dẫn kích hoạt chính xác: Khách hàng sẽ dán chúng từ email của họ, vì vậy các đường dẫn và lệnh chính xác sẽ tiết kiệm các yêu cầu hỗ trợ.
- Xác thực mã phía máy chủ: Đối với các sản phẩm kết nối mạng, hãy xác thực qua
/licenses/validatethay vì lưu trữ tạm thời kích hoạt cục bộ. - Sử dụng webhooks để thu hồi: Nghe
entitlement_grant.revokedđể vô hiệu hóa các tính năng trong ứng dụng ngay lập tức khi khách hàng hủy hoặc hoàn tiền. - Kiểm tra với các đăng ký và mục tiêu đơn lẻ: Hành vi của mã giấy phép có sự khác biệt tinh tế giữa hai loại, vì vậy hãy thử nghiệm cả hai trước khi hoạt động.