
Checkout Sessions
Tillämpa en eller flera staplade koder under värdkassan med
discount_codes och UI-kontroller.Get Discount
Hämta en rabatt med dess ID för att granska dess status och begränsningar.
Get Discount by Code
Look up and validate a discount using its code name (e.g., “SAVE20”).
Create Discount (API)
Programmatically create new discount codes.
List & Update Discounts
Bläddra och hantera befintliga rabatter; uppdatera eller ta bort vid behov.
Plan Change Discounts
Tillämpa rabattkoder vid uppgradering eller nedgradering av prenumerationsplaner.
Vad är Rabattkoder?
Rabattkoder är kampanjtokens som minskar ordersumman i Checkout. Använd dem för säsongskampanjer, incitament vid första köpet, återvinningskampanjer eller förhandlade B2B-priser. Koderna är procentbaserade (t.ex. 15 % rabatt) eller baserade på ett fast belopp (t.ex. 5 $ rabatt). Du kan kombinera upp till 20 koder per Checkout, betalning eller prenumeration, så att en kund kan lösa in både ett välkomsterbjudande och en kampanjkod i samma transaktion. Begränsa koder till specifika produkter, ange hur många gånger varje kund får använda dem, ange utgångsdatum och styr vem som får lösa in dem.Viktiga Fördelar
- Flexibla rabatter: Procentbaserade rabatter eller rabatter med fast belopp
- Kombinerbara koder: Tillämpa upp till 20 koder per Checkout, betalning eller prenumeration
- Riktad kontroll: Begränsa efter produkt, prenumerationscykler och kundberättigande
- Kampanjstyrning: Schemalagda startdatum, utgångsdatum samt övergripande användningsgränser och gränser per kund
- Prissättning per valuta: Ange det fasta avdraget, beloppsgränsen och minimisumman per valuta
Skapa Rabattkoder
Skapa rabattkoder i din Dodo Payments-instrumentpanel och tillämpa dem sedan i värdad kassa eller via API.
Konfiguration i Dashboard
- Rabattnamn (obligatoriskt): Intern etikett för Dashboard.
- Kod (obligatoriskt): Strängen som kunder anger i Checkout. Generera en slumpmässig kod eller ange en egen (minst 3 tecken, konverteras automatiskt till versaler).
- Typ (obligatoriskt): Procent (en procentuell rabatt) eller Belopp (ett fast avdrag).
- Belopp (obligatoriskt): För procent anges den procentuella rabatten i Dashboard (t.ex.
15för 15 %). Via API är samma värde uttryckt i baspunkter (1500). För belopp anges det fasta avdraget i kodens standardvaluta. - Startdatum (valfritt): Schemalägg när koden ska aktiveras. Lämna tomt för att aktivera den omedelbart.
- Utgångsdatum (valfritt): Datum efter vilket koden inte längre kan lösas in.
- Användningsgräns (valfritt, under Avancerat): Maximalt totalt antal inlösningar för alla kunder.
- Användningsgräns per kund (valfritt, under Avancerat): Maximalt antal inlösningar för en enskild kund. Måste vara mindre än eller lika med den övergripande användningsgränsen när båda anges.
- Kundberättigande (valfritt): Begränsa vem som får lösa in koden — alla kunder, förstagångskunder, befintliga kunder eller en manuellt vald lista.
- Valutaalternativ (valfritt): Rabattbeloppet för varje valuta du säljer i. Se Alternativ per valuta.
- Produktbegränsning (valfritt): Begränsa koden till specifika produkter.
- Gräns för prenumerationscykler (valfritt, under Avancerat): Antalet faktureringscykler som rabatten gäller för. Lämna tomt för obegränsad giltighet.
- Behåll vid planändring (valfritt): Behåll rabatten aktiv när en prenumeration byter plan (
preserve_on_plan_change). - Metadata (valfritt): Lägg till anpassade nyckel–värde-par för intern spårning.
- Kräv ett minsta ordervärde (valfritt, under Avancerat): Minsta delsumma i kundvagnen (per valuta) för att koden ska tillämpas.


En procentuell
amount uttrycks i basis points via API:t — 1500 betyder 15 %. Ett fast amount är ett penningvärde och anges enligt kodens valutaalternativ.Rabatttyper
Båda typerna kan kombineras i samma
discount_codes-array och tillämpas i arrayens ordning.

Kundbehörighet
Angecustomer_eligibility för att styra vilka som får lösa in en kod:

Valutaalternativ
När du säljer i flera valutor anger du beteendet per valuta för varje kod. Under Valutaalternativ anger varje post:- Belopp — för en beloppsrabatt, det fasta avdraget i valutan; för en procentbaserad rabatt, den maximala rabattgränsen. Mappas till
max_amount_possiblei API:t. - Standard — markera en valuta som standardvaluta. Valutor utan konfiguration konverteras från denna standardvaluta.
- Minsta delsumma — koden tillämpas endast när kundvagnen når denna delsumma i den valutan.
0betyder att ingen miniminivå gäller.

Minsta delsumman mäts alltid mot kundvagnens ursprungliga priser, inte mot den löpande summan efter tidigare rabatter i kombinationen. Ordningen på kombinationen ändrar aldrig om minimikravet är uppfyllt.
Checkout-upplevelse
Kunder anger rabattkoder i Checkout-fältet. Berättigade koder tillämpas omedelbart och summorna uppdateras.
I Checkout Sessions skickar du
discount_codes (en array) för att förtillämpa en eller flera koder. Fältet för rabattinmatning visas som standard. Ange feature_flags.allow_discount_code till false för att dölja det. Koderna tillämpas i arrayens ordning, upp till maximalt 20.Kombinera rabattkoder
Checkout sessions, payments och subscriptions accepterar upp till 20 kombinerade koder viadiscount_codes-arrayen. Koderna tillämpas i arrayens ordning: den första berättigade koden minskar startpriset, nästa minskar det redan rabatterade priset och så vidare. När Purchasing Power Parity är aktiverat är startpriset det PPP-justerade beloppet. Svaret innehåller discount_ids (för payments/subscriptions) och discounts (mer detaljerad information per rabatt, inklusive position och återstående prenumerationscykler).
Det singulara fältet
discount_code är föråldrat men stöds fullt ut för bakåtkompatibilitet. Det kan inte kombineras med discount_codes i samma begäran. Migrera till discount_codes (array-formen) för att dra nytta av kombinationer och det mer detaljerade svaret.För ett prenumerationspris där Card-Optional at Zero Price är aktiverat innebär en kombination av koder som minskar beloppet som ska betalas i dag hela vägen till
0 att kortkravet också hoppas över — kunden slutför Checkout utan att ha någon betalningsmetod registrerad, på samma sätt som för ett inbyggt 0-pris.API-hantering
Create discounts
Create discounts
Skapa rabattkoder programmatiskt med typ och belopp.
API Reference
Visa API:t för att skapa rabatter.
List and retrieve
List and retrieve
Lista alla rabatter eller hämta detaljer för hantering och granskning.
API Reference
Bläddra bland API:erna för listning och hämtning.
Get discount by code
Get discount by code
Slå upp en rabatt med dess läsbara kod (t.ex. “SAVE20”) i stället för det interna ID:t.
API Reference
Hämta rabatt med kodnamn.
Update discounts
Update discounts
Ändra rabattkonfigurationen, till exempel belopp, utgångsdatum eller begränsningar.
API Reference
Läs mer om hur du uppdaterar rabattdetaljer.
Retrieve a discount
Retrieve a discount
Hämta en rabatt med dess ID för att granska status, användningsantal och begränsningar innan den tillämpas.
API Reference
Hämta en rabatt med ID.
Delete discounts
Delete discounts
Inaktivera eller ta bort rabatter som inte längre behövs.
API Reference
Ta bort en rabatt.
Manage the customer allow list
Manage the customer allow list
För en rabatt där
customer_eligibility är inställd på specific hanterar du de kunder som får lösa in den:GET /discounts/{discount_id}/customers— lista de kopplade kunderna (paginering, upp till 100 per sida).POST /discounts/{discount_id}/customers— koppla kunder via ID. Anropet är idempotent och accepterar upp till 1 000 ID:n, som alla redan måste finnas i ditt företag. Svaret innehåller endast de ID:n som skickades i den begäran, så använd list-endpointen för att läsa hela allow-listan.DELETE /discounts/{discount_id}/customers/{customer_id}— koppla bort en enskild kund.
Vanliga användningsfall
- Introduktionserbjudanden: Tidsbegränsade lanseringskampanjer för nya produkter
- Bulk eller B2B: Avtalade rabatter för utvalda produktuppsättningar
- Retention-aktiviteter: Återvinningskoder i arbetsflöden för att förebygga kundbortfall
- Säsongskampanjer: Helg- eller evenemangsbaserade kampanjer
Integrationsexempel
Skapa en rabatt med metadata
Lägg till anpassade nyckel–värde-par för intern spårning.Tillämpa rabatter i Checkout Sessions
Förtillämpa en eller flera kombinerade rabatter och visa gränssnittet för kodinmatning.Tillämpa rabatter vid planändringar
Erbjud kampanjpriser när kunder uppgraderar eller nedgraderar sin prenumeration.discount_codes styr hur rabatter hanteras:
Läs alla tillämpade rabatter från prenumerationens
discounts-array i svaret. Varje post innehåller discount_id, position, cycles_remaining och den ursprungliga koden.Dölj rabattkodsfältet
Fältet för rabattinmatning visas som standard. Angeallow_discount_code till false för att dölja det.
Bästa praxis
- Namnge tydligt: Använd igenkännbara koder som överensstämmer med kampanjnamnen.
- Tidsbegränsa: Lägg till utgångsdatum för att skapa brådska och förhindra missbruk.
- Begränsa klokt: Begränsa till specifika produkter för att undvika marginalförlust.
- Validera tidigt: Kontrollera kodens tillämplighet innan Checkout bekräftas.
- Övervaka effekten: Följ användning och konvertering per kampanj.