Hoppa till huvudinnehåll

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.

Översikt av rabattkoder omslagsbild
Discount codes let you run targeted promotions and incentives. Create percentage or fixed-amount discounts, set limits and expirations, restrict to products, and apply them seamlessly in checkout.

Checkout Sessions

Tillämpa en eller flera staplade koder under värdkassan med discount_codes och UI-kontroller.

Validate Discount

Check if a discount is valid by its ID.

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 kampanjtoken som minskar ordersummorna i kassan. De är idealiska för:
  • Säsongskampanjer: Black Friday, produktlanseringar eller jubileer
  • Förvärvserbjudanden: Första-köp incitament eller belöningar vid hänvisningar
  • Behållande: Återvinnings- eller lojalitetsbelöningar för befintliga kunder
  • B2B-erbjudanden: Avtalade eller förhandlade priser via privata koder

Viktiga Fördelar

  • Flexibla rabatter: Procentsats eller fast belopp
  • Stapelbara koder: Använd upp till 20 koder per kassa, betalning eller prenumeration — kombinera kampanjer (t.ex. WELCOME10 + BLACKFRIDAY20) utan att skapa skräddarsydda koder
  • Riktad kontroll: Begränsa efter produkt och prenumerationscykler
  • Kampanjstyrning: Utgångsdatum och användningsbegränsningar
  • Sömlös kassa: UI-fält och API-stöd via kassasessioner

Skapa Rabattkoder

Skapa rabattkoder i din Dodo Payments-instrumentpanel och tillämpa dem sedan i värdad kassa eller via API.

Inställning av Instrumentpanelen

  • Rabattnamn (obligatoriskt): Internt och i instrumentpanelens visningsnamn
  • Kod (obligatoriskt): Strängen kunderna anger vid utcheckning
  • Typ & Belopp (obligatoriskt): Ställ in en procent- eller fast belopp, eller generera en slumpmässig kod med den medföljande knappen
  • Förfallodatum (valfritt): Datum efter vilket koden blir ogiltig
  • Användningsbegränsning (valfritt): Maximal total inlösning över alla kunder
  • Produktbegränsning (valfritt): Begränsa tillämplighet till utvalda produkter
  • Begränsning av prenumerationscykel (valfritt): Antal faktureringscykler som rabatten gäller för
  • Metadata (valfritt): Bifoga anpassade nyckel–värde-par för intern spårning eller integrationer
Använd cykelbegränsningar för introduktionsprissättning på prenumerationer (t.ex., “50% rabatt i 3 månader”).

Kassaupplevelse

  1. Kunder anger koden i fältet i kassan.
  2. Berättigade rabatter tillämpas och totalen uppdateras omedelbart.
I Checkout Sessions, skicka discount_codes (en array) för att föranvända en eller flera koder och ställ in feature_flags.allow_discount_code för att visa inmatningsfältet. Koderna tillämpas i array-ordning, med ett maximum på 20.

Stapla Rabattkoder

Kassasessioner, betalningar och prenumerationer accepterar upp till 20 staplade koder via discount_codes arrayen (max 20 poster). Koderna tillämpas i array-ordning, så den första giltiga koden reducerar baspriset först, nästa kod reducerar det redan rabatterade priset, osv. Hela uppsättningen tillämpade rabatter returneras i svaret under discount_ids (på betalningar/prenumerationer) och discounts (rikare per-rabattdetalj, inklusive position och återstående prenumerationscykler).
const session = await client.checkoutSessions.create({
  product_cart: [{ product_id: 'prod_abc', quantity: 1 }],
  discount_codes: ['WELCOME10', 'BLACKFRIDAY20'], // applied in this order
  customer: { email: 'user@example.com' },
  return_url: 'https://yoursite.com/return'
});
Det unika discount_code fältet är föråldrat men fortfarande fullt stödd för bakåtkompatibilitet — befintliga integrationer fortsätter att fungera utan ändringar. Det kan inte kombineras med discount_codes i samma begäran. Vi rekommenderar att migrera till discount_codes (arrayformen) när det passar, även för enskilda koder, för att dra nytta av stapling och den rikare svarformen.

API-hantering

Skapa rabattkoder programmatisk med typ och mängd.

API Reference

Visa skapa rabatt-API.
Lista alla rabatter eller hämta detaljer för hantering och revision.

API Reference

Bläddra bland listning och hämtning API:er.
Slå upp en rabatt med sin lättläsliga kod (t.ex., “SAVE20”) istället för det interna ID:t.

API Reference

Hämta rabatt efter kodnamn.
Ändra rabattkonfiguration som belopp, utgångsdatum eller begränsningar.

API Reference

Lär dig hur man uppdaterar rabattdetaljer.
Kontrollera om en rabatt är giltig och tillämplig innan den används.

API Reference

Validera rabattanvändning.
Avaktivera eller ta bort rabatter som inte längre behövs.

API Reference

Radera en rabatt.

Vanliga Användningsfall

  • Introerbjudanden: Lanseringserbjudanden för nya produkter under begränsad tid
  • Bulk eller B2B: Avtalsrabatter för utvalda produktuppsättningar
  • Retentionsstrategier: Återvinningskoder i churnförebyggande arbetsflöden
  • Säsongskampanjer: Semester- eller händelsebaserade kampanjer

Integrations Exempel

Skapa en rabatt med metadata

Bifoga skräddarsydda nyckel-värde-par för intern spårning.
const discount = await client.discounts.create({
  type: 'percentage',
  amount: 1500, // 15%
  code: 'SUMMER2025',
  metadata: {
    campaign: 'summer_promo',
    source: 'email_blast'
  }
});
Använd metadata för att tagga rabatter efter kampanj, källa eller interna referens-ID så att du kan sammanställa användning och mäta ROI senare.

Tillämpa rabatter i Checkout Sessions

Föranvänd en eller flera staplade rabatter och visa kodinmatningsgränssnittet.
const session = await client.checkoutSessions.create({
  product_cart: [
    { product_id: 'prod_abc', quantity: 1 }
  ],
  discount_codes: ['BLACKFRIDAY2024', 'NEWUSER5'], // stacked in array order
  customer: { email: 'user@example.com', name: 'Jane Doe' },
  return_url: 'https://yoursite.com/return'
});

Tillämpa rabatter vid planändringar

Erbjuda kampanjprissättning när kunder uppgraderar eller nedgraderar sin prenumeration.
await client.subscriptions.changePlan('sub_123', {
  product_id: 'prod_pro',
  quantity: 1,
  proration_billing_mode: 'prorated_immediately',
  discount_codes: ['UPGRADE20']
});
discount_codes värdeBeteende vid planändring
undefined / null (ej tillhandahållen)Befintliga rabatter med preserve_on_plan_change=true bevaras om de är tillämpliga på den nya produkten.
[] (tom array)Alla befintliga rabatter tas bort från prenumerationen.
['CODE_A', 'CODE_B', ...]Ersätter eventuella befintliga rabatter med denna staplade uppsättning, tillämpad i array-ordning.
Läs alla tillämpade rabatter från prenumerationen via den nya discounts arrayen i prenumerationssvaret. Varje post inkluderar discount_id, position, cycles_remaining (för prenumerationer), och den ursprungliga koden.

Aktivera kodinmatning utan föranvändning

Låt kunder ange en kod vid kassan utan att en skickas i förväg.
const session = await client.checkoutSessions.create({
  product_cart: [
    { product_id: 'prod_abc', quantity: 1 }
  ],
  feature_flags: {
    allow_discount_code: true
  },
  return_url: 'https://yoursite.com/return'
});

Bästa Praxis

  • Namnsätt tydligt: Använd igenkännbara koder som matchar kampanjnamn
  • Begränsa tid: Lägg till utgångsdatum för att skapa brådska och förhindra missbruk
  • Fokusera rätt: Begränsa till specifika produkter för att undvika marginalförlust
  • Validera tidigt: Kontrollera kodens tillämplighet innan kassan bekräftas
  • Övervaka påverkan: Spåra användning och konvertering per kampanj
Rabattkoder är kraftfulla verktyg för förvärv och retention. Börja med enkla, välbetitlade erbjudanden, validera noggrant och iterera baserat på prestanda.
Last modified on May 22, 2026