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.
Kunci lisensi adalah jenis hak Kunci Lisensi. Buat hak Kunci Lisensi sekali dengan batas aktivasi, masa berlaku, dan instruksi yang Anda inginkan, lampirkan ke produk apa pun, dan Dodo Payments menghasilkan serta mengirimkan kunci per pembelian atau kursi langganan, secara otomatis.
Apa itu Kunci Lisensi?
Kunci lisensi adalah token unik yang mengotorisasi akses ke produk Anda. Mereka ideal untuk:- Lisensi perangkat lunak: Aplikasi desktop, plugin, dan CLI
- Kontrol per pengguna: Batasi aktivasi per pengguna atau perangkat
- Barang digital: Batasi unduhan, pembaruan, atau fitur premium
Buat Hak Kunci Lisensi
Open Entitlements
Pergi ke Entitlements di dasbor Dodo Payments Anda dan klik + untuk membuat entitlements baru.
Choose License Key
Pilih License Key sebagai integrasi. Konfigurasikan bagaimana setiap kunci yang diterbitkan berperilaku:
- Activations Limit: Aktivasi bersamaan maksimum per kunci (misalnya,
1untuk pengguna tunggal,5untuk lisensi tim, kosongkan untuk tidak terbatas). - Duration: Berapa lama kunci tetap berlaku setelah diterbitkan (misalnya, 30 hari, 1 tahun). Untuk kunci yang diterbitkan melalui langganan, kosongkan; kunci tetap berlaku selama langganan aktif.
- Activation Instructions: Instruksi yang dikirimkan kepada pelanggan bersama dengan kunci. Contoh:
Paste the key in Settings → LicenseatauRun: mycli activate <key>.

Lampirkan ke Produk
Buka produk, perluas Advanced Settings → Entitlements & Credits, dan pilih hak Kunci Lisensi Anda. Satu produk dapat mengirimkan kunci lisensi bersama dengan hak lain (akses Discord, unduhan file, akses repo GitHub, dll.) pada pembelian yang sama.
Bagaimana Kunci Dibagikan
Penerbitan kunci mengikuti standar siklus hidup penghargaan:| Peristiwa | Perilaku |
|---|---|
payment.succeeded (sekali saja) | Menghasilkan satu kunci per quantity yang dibeli. Kadaluarsa kunci mengikuti durasi hak. |
subscription.active | Menghasilkan satu kunci per langganan quantity (kursi). Kunci tidak memiliki kadaluarsa; keabsahan terkait dengan status langganan. |
subscription.renewed | Tidak ada operasi. Kunci yang ada tetap ada. |
subscription.on_hold | Menonaktifkan kunci. Kunci akan diaktifkan kembali ketika langganan tidak lagi ditahan. |
subscription.cancelled / expired | Menonaktifkan kunci secara permanen. |
subscription.plan_changed | Menonaktifkan kunci lama; mengeluarkan kunci baru untuk rencana baru. |
refund.succeeded (sekali saja) | Menonaktifkan kunci. |
| Pencabutan manual melalui API/dasbor | Menonaktifkan kunci dengan revocation_reason: manual. Ini tidak akan diterbitkan kembali secara otomatis pada pembaruan langganan. |
| Kunci lisensi dinonaktifkan langsung | Mencabut penghargaan dengan revocation_reason: license_key_disabled. Mengaktifkan kembali kunci akan mengaktifkan kembali penghargaan secara otomatis. |
Perilaku Kuantitas
- Produk langganan menerbitkan satu kunci per kursi (
subscriptions.quantity). - Produk satu kali mengeluarkan satu kunci per item garis keranjang (
product_cart.quantity). - Pemberian API manual mengeluarkan tepat satu kunci.
Aktivasi, Validasi, Penonaktifan
Endpoint API untuk aktivasi/validasi/penonaktifan bersifat publik dan tidak memerlukan kunci API. Gunakan secara langsung dari perangkat lunak desktop, CLI, atau klien berbasis peramban untuk memverifikasi kunci pada saat menjalankan.Public Endpoints: Aktivasi, penonaktifan, dan validasi endpoint lisensi bersifat publik dan tidak memerlukan kunci API. Panggil secara langsung dari aplikasi klien Anda tanpa mengekspos kredensial API Anda.
Aktivasi lisensi
Validasi lisensi
Nonaktifkan instance aktivasi
Mengelola Kunci
Buka hak Kunci Lisensi dari dasbor Anda untuk melihat setiap penghargaan (satu baris per kunci pelanggan) dengan tanggal pengiriman, jumlah aktivasi, dan tindakan pencabutan. Setiap detail penghargaan memunculkan kunci lisensi yang mendasari, kadaluarsa, aktivasi yang digunakan, dan batas aktivasi. Anda juga dapat membuat daftar penghargaan secara terprogram:Impor Kunci Lisensi yang Ada melalui API
Sudah memiliki kunci lisensi di sistem lain? Gunakan API Create License Key untuk mengimpornya ke Dodo Payments. Ini memungkinkan Anda memigrasikan kunci yang ada tanpa mengganggu pelanggan Anda — mereka tetap mengaktifkan, memvalidasi, dan menonaktifkan terhadap string kunci yang sama tanpa penerbitan ulang.Perbedaan kunci impor dari kunci yang dihasilkan otomatis
| Bidang | Kunci yang dihasilkan otomatis | Kunci impor |
|---|---|---|
source | "auto" | "import" |
payment_id | Diatur ke pembayaran asal | null (tidak ada transaksi Dodo Payments) |
subscription_id | Diatur jika kunci diterbitkan melalui langganan | null kecuali secara eksplisit terhubung |
| Pemberitahuan email pelanggan | Dikirim pada penerbitan | Tidak dikirim — tangani secara terpisah |
source di tanggapan GET /license_keys untuk membedakan inventaris yang dimigrasi dari kunci yang dikeluarkan secara organik saat merekonsiliasi atau mengaudit.
Kunci Lisensi dalam URL Pengembalian
Ketika pelanggan menyelesaikan pembelian untuk produk dengan hak Kunci Lisensi, kunci yang dihasilkan secara otomatis ditambahkan kereturn_url Anda sebagai parameter kueri. Ini memungkinkan Anda menampilkan kunci segera di halaman sukses Anda tanpa perlu memanggil API tambahan.
subscription_id digunakan sebagai pengganti payment_id:
Manajemen API
Lifecycle Operations (Public Endpoints)
Lifecycle Operations (Public Endpoints)
Aktivasi, penonaktifan, dan validasi bersifat publik; tidak diperlukan kunci API.
Activate License
Buat atau catat instance aktivasi untuk kunci lisensi.
Deactivate License
Mencabut aktivasi sebelumnya untuk membebaskan kapasitas.
Validate License
Periksa keaslian, status, dan batasan sebelum memberikan akses.
License Key Management
License Key Management
Buat, daftar, ambil, dan perbarui catatan kunci lisensi individual. Gunakan ini untuk mengimpor kunci yang ada atau mengambil detail penggunaan.
Create License Key
Buat kunci lisensi baru atau impor kunci yang sudah ada.
List License Keys
Telusuri semua kunci dengan status dan detail penggunaan.
Get License Key
Ambil kunci tertentu dan metadata-nya.
Update License Key
Modifikasi masa kadaluarsa, batas aktivasi, atau aktifkan/nonaktifkan kunci.
Entitlement Management
Entitlement Management
Kelola hak Kunci Lisensi itu sendiri: batas aktivasi, durasi, dan instruksinya.
Create Entitlement
Buat hak Kunci Lisensi.
Update Entitlement
Perbarui konfigurasi hak.
List Grants
Daftar kunci yang diterbitkan untuk hak tersebut.
Revoke Grant
Mencabut kunci pelanggan secara manual.
Webhooks
Penyampaian kunci lisensi dan pencabutan memicu empatentitlement_grant.* peristiwa webhook. Muatan penghargaan mencakup license_key objek dengan kunci, kadaluarsa, aktivasi yang digunakan, dan batas.
Acara license_key.* lama (license_key.created) terus memicu untuk siklus hidup rekaman kunci lisensi yang mendasari; lihat halaman muatan webhook Kunci Lisensi.
Kunci Lisensi Lama
Produk yang dibuat dengan bendera lama
license_key_enabled telah secara otomatis dimigrasikan ke hak Kunci Lisensi. Migrasi ini transparan: kunci pelanggan yang ada tetap bekerja tanpa perubahan, public /licenses/activate, /licenses/validate, /licenses/deactivate endpoint tetap berfungsi, dan /license_keys/* endpoint API terus membaca dan menulis ke penyimpanan kunci yang sama.Bagian dasbor License Keys yang berdiri sendiri tetap tersedia sebagai daftar datar setiap kunci yang diterbitkan, berguna untuk audit dan pencarian. Konfigurasi baru (mengubah batas aktivasi, durasi, atau instruksi) harus dilakukan dengan mengedit hak Kunci Lisensi yang dimigrasikan di bawah Entitlements.Praktik Terbaik
- Simpan batas aktivasi dengan jelas: Pilih default yang masuk akal (1 untuk aplikasi pengguna tunggal, 3–5 untuk lisensi tim) dan dokumentasikan.
- Berikan instruksi aktivasi yang tepat: Pelanggan menyalin dan menempel dari email mereka, sehingga jalur dan perintah yang tepat menghemat tiket dukungan.
- Validasi kunci sisi server: Untuk produk yang terhubung ke jaringan, validasi melalui
/licenses/validatealih-alih menyimpan aktivasi secara lokal. - Gunakan webhooks untuk pencabutan: Dengarkan
entitlement_grant.revokeduntuk menonaktifkan fitur dalam aplikasi segera ketika pelanggan membatalkan atau mengembalikan. - Uji dengan langganan dan satu kali: Perilaku kunci lisensi berbeda secara halus antara keduanya, jadi uji keduanya sebelum ditayangkan.