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.
Licensnycklar är av entitetstypen Licensnyckel. Skapa en licensnyckel-entitet en gång med den aktiveringsgräns, utgångsdatum och instruktioner du önskar, koppla den till vilken produkt som helst, och Dodo Payments genererar och levererar en nyckel per köp eller prenumerationsplats, automatiskt.
Vad är Licensnycklar?
Licensnycklar är unika token som auktoriserar åtkomst till din produkt. De är idealiska för:- Programvarulicensering: Skrivbordsappar, plugins och CLIs
- Per-användarkontroller: Begränsa aktiveringar per användare eller enhet
- Digitala varor: Stänga av nedladdningar, uppdateringar eller premiumfunktioner
Skapa en Licensnyckel Entitlement
Open Entitlements
Gå till Entitlements i din Dodo Payments-instrumentpanel och klicka på + för att skapa en ny entitlement.
Choose License Key
Välj License Key som integration. Konfigurera hur varje utfärdad nyckel beter sig:
- Aktiveringsbegränsningar: Maximalt antal samtidiga aktiveringar per nyckel (t.ex.,
1för enanvändarlicens,5för teamlicenser, lämna tom för obegränsat). - Varaktighet: Hur lång tid nyckeln förblir giltig efter utfärdande (t.ex., 30 dagar, 1 år). För prenumerationsutgivna nycklar, lämna tom; nycklar förblir giltiga så länge prenumerationen är aktiv.
- Aktiveringsinstruktioner: Kundanvisningar som skickas med nyckeln till e-post. Exempel:
Paste the key in Settings → LicenseellerRun: mycli activate <key>.

Koppla till Produkter
Öppna en produkt, expandera Avancerade inställningar → Entitlements & Credits, och välj din Licensnyckel-entitlement. En enskild produkt kan leverera en licensnyckel tillsammans med andra entitlements (Discord-åtkomst, filnedladdningar, GitHub-repoåtkomst, etc.) vid samma köp.
Hur nycklar utfärdas
Nyckelutfärdande följer standarden grant lifecycle:| Event | Beteende |
|---|---|
payment.succeeded (one-time) | Generera en nyckel per quantity köpt. Nyckelns utgång respekterar entitetsperioden. |
subscription.active | Generera en nyckel per prenumeration quantity (seat). Nyckeln har ingen utgång; giltigheten är kopplad till prenumerationsstatus. |
subscription.renewed | No-op. Befintliga nycklar förblir. |
subscription.on_hold | Inaktivera nycklarna. De återaktiveras när prenumerationen inte längre är pausad. |
subscription.cancelled / expired | Inaktivera nycklarna permanent. |
subscription.plan_changed | Inaktivera de gamla nycklarna; utfärda nya för den nya planen. |
refund.succeeded (one-time) | Inaktivera nycklarna. |
| Manuell återkallelse via API/instrumentpanelen | Inaktivera nycklarna med revocation_reason: manual. Dessa återges inte automatiskt vid prenumerationsförnyelse. |
| Licensnyckel inaktiverad direkt | Återkalla beviljandet med revocation_reason: license_key_disabled. Återaktivering av nyckeln återaktiverar beviljandet automatiskt. |
Kvantitetsbeteende
- Prenumerationsprodukter utfärdar en nyckel per plats (
subscriptions.quantity). - Engångsprodukter utfärdar en nyckel per kassaartikel (
product_cart.quantity). - Manuella API-beviljanden utfärdar exakt en nyckel.
Aktivering, Validering, Inaktivering
API-slutpunkterna för aktivering/validering/inaktivering är offentliga och kräver ingen API-nyckel. Använd dem direkt från skrivbordsprogramvara, CLI:er eller webbläsarbaserade klienter för att verifiera nycklar vid körning.Offentliga Slutpunkter: Aktivera, inaktivera och validera licensslutpunkterna är offentliga och kräver ingen API-nyckel. Anropa dem direkt från dina klientapplikationer utan att exponera dina API-uppgifter.
Aktivera en licens
Validera en licens
Inaktivera en aktiveringsinstans
Hantera Nycklar
Öppna Licensnyckel-entiteten från din instrumentpanel för att se varje beviljande (en rad per kundnyckel) med leveransdatum, aktiveringsantal och en återkallande åtgärd. Varje givande detalj visar den underliggande licensnyckeln, utgång, använda aktiveringar och aktiveringsgräns. Du kan också lista beviljanden programmatiskt:Importera Befintliga Licensnycklar via API
Har du redan licensnycklar i ett annat system? Använd Create License Key API för att importera dem till Dodo Payments. Detta låter dig migrera befintliga nycklar utan att störa dina kunder – de fortsätter att aktivera, validera och inaktivera mot samma nyckelsträngar utan återskapande.Skillnaden mellan importerade och automatgenererade nycklar
| Fält | Automatgenererad nyckel | Importerad nyckel |
|---|---|---|
source | "auto" | "import" |
payment_id | Ställ in på ursprunglig betalning | null (ingen Dodo Payments transaktion) |
subscription_id | Ställ in om nyckeln utfärdades via en prenumeration | null om inte explicit länkat |
| Kundens e-postavisering | Sänds vid utfärdande | Skickas inte — hantera separat |
source-fältet på GET /license_keys-svar för att särskilja migrerat lager från organiskt utfärdade nycklar vid avstämning eller revision.
Licensnycklar i Return URL
När en kund slutför ett köp för en produkt med en Licensnyckel-entitlement, läggs den genererade nyckeln automatiskt till dinreturn_url som en frågeparameter. Detta låter dig visa nyckeln omedelbart på din nätsida utan att göra en extra API-anrop.
subscription_id istället för payment_id:
API-hantering
Lifecycle Operations (Public Endpoints)
Lifecycle Operations (Public Endpoints)
Aktivering, inaktivering, och validering är offentliga; ingen API-nyckel krävs.
Activate License
Skapa eller registrera en aktiveringsinstans för en licensnyckel.
Deactivate License
Återkalla en tidigare aktivering för att frigöra kapacitet.
Validate License
Kontrollera äkthet, status och begränsningar innan du beviljar åtkomst.
License Key Management
License Key Management
Skapa, lista, hämta och uppdatera individuella licensnyckelregister. Använd dessa för att importera befintliga nycklar eller hämta användningsdetaljer.
Create License Key
Skapa en ny licensnyckel eller importera en befintlig.
List License Keys
Bläddra bland alla nycklar med status och användningsdetaljer.
Get License Key
Hämta en specifik nyckel och dess metadata.
Update License Key
Ändra utgång, aktiveringsgränser, eller aktivera/inaktivera en nyckel.
Entitlement Management
Entitlement Management
Hantera själva Licensnyckel-entitlement: dess aktiveringsgräns, varaktighet och instruktioner.
Create Entitlement
Skapa en Licensnyckel-entitlement.
Update Entitlement
Uppdatera entitlement-konfigurationen.
List Grants
Lista nycklarna som utfärdats för en entitlement.
Revoke Grant
Återkalla manuellt en kunds nyckel.
Webhooks
Leverans och återkallande av licensnycklar utlöser de fyraentitlement_grant.* webhook-händelserna. Grant-payloaden inkluderar ett fyllt license_key-objekt med nyckeln, utgång, använda aktiveringar och gräns.
De äldre license_key.*-händelserna (license_key.created) fortsätter att avfyras för den underliggande licensnyckelns registerlivscykel; se sidan License Key webhook payload.
Äldre Licensnycklar
Produkter skapade med den äldre
license_key_enabled-flaggan har blivit automatiskt migrerade till en Licensnyckel-entitlement. Migrationen är transparent: befintliga kunders nycklar fortsätter att fungera oförändrade, den offentliga /licenses/activate, /licenses/validate, /licenses/deactivate-slutpunkterna fortsätter att fungera, och /license_keys/* API-slutpunkterna fortsätter att läsa och skriva till samma nyckellager.Den fristående License Keys instrumentpanelssektionen förblir tillgänglig som en platt lista över varje utfärdad nyckel, användbar för revision och sökning. Nya konfigurationer (ändring av aktiveringsgränser, varaktigheter eller instruktioner) bör göras genom att redigera den migrerade Licensnyckel-entitlement under Entitlements.Bästa Praxisen
- Håll aktiveringsgränserna klara: Välj rimliga standardvärden (1 för enanvändarappar, 3–5 för teamlicenser) och dokumentera dem.
- Ge precisa aktiveringsinstruktioner: Kunder klistrar in dessa från sina mejl, så exakta vägar och kommandon sparar supportärenden.
- Validera nycklar server-side: För nätverksanslutna produkter, validera via
/licenses/validateistället för att cachea aktivering lokalt. - Använd webhooks för återkallelse: Lyssna på
entitlement_grant.revokedför att omedelbart inaktivera in-app funktioner när en kund avbokar eller får återbetalning. - Testa med prenumerationer och engångstillfällen: Licensnyckelbeteende skiljer sig subtilt mellan de två, så testa båda innan du startar.