Skip to main content
Den här handledningen visar hur du implementerar platsbaserad prissättning med hjälp av Dodo Payments-tillägg. Du skapar en prenumerationsprodukt med tillägg för extra platser och genererar betalningslänkar med anpassade tilläggskvantiteter.
Den här handledningen använder Node.js och Express. Du kan anpassa koden för ditt ramverk (Next.js, React, Vue osv.) och anpassa användargränssnittet så att det passar din applikation.
I slutet av denna handledning kommer du att veta hur man:
  • Skapar prenumerationsprodukter med platsbaserad prissättning
  • Ställer in tillägg för ytterligare platser
  • Genererar betalningslänkar med anpassade tilläggsmängder
  • Hanterar kassa-sessioner med dynamiska platsantal

Vad vi bygger

Låt oss skapa en platsbaserad prissättningsmodell:
  • Basplan: $49/månad för upp till 5 teammedlemmar
  • Platstillägg: $2/månad per extra plats
  • Betalningslänkar: Dynamisk checkout med anpassade platskvantiteter
Innan vi börjar, se till att du har:
  • Ett Dodo Payments-konto
  • Grundläggande kunskaper om TypeScript/Node.js

Steg 1: Skapa ditt plats-tillägg

Skapa ett tillägg som representerar extra platser. Det här tillägget kopplas till din basprenumeration och gör det möjligt för kunder att köpa extra platser.
Skapa platstillägg i instrumentpanelen
Det här bygger vi: Ett tillägg som kostar $2/månad per plats och kan läggas till i valfri basprenumeration.
1

Navigate to Add-Ons

  1. I din Dodo Payments-instrumentpanel, håll dig kvar i avsnittet Products
  2. Klicka på fliken Add-Ons
  3. Klicka på Create Add-On
Detta öppnar formuläret för att skapa tillägg.
2

Enter add-on details

Fyll i de här värdena för vårt plats-tillägg:Add-On Name: Additional Team SeatDescription: Add extra team members to your workspace with full access to all featuresPrice: Enter → 2.00Valuta: Måste matcha din basprenumerationsvalutaSkattekategori: Välj lämplig kategori för din produkt.
3

Save your add-on

  1. Granska alla dina inställningar:
    • Namn: Ytterligare teamplats
    • Pris: $2.00/månad
  2. Klicka på Create Add-On
Tillägg skapat! Ditt plats-tillägg finns nu tillgängligt för att kopplas till prenumerationer.

Steg 2: Skapa din basprenumerationsprodukt

Skapa en basprenumerationsprodukt som inkluderar 5 teammedlemmar. Detta blir grunden för din platsbaserade prismodell.
Skapa basprenumerationsprodukt i instrumentpanelen
1

Navigate to Products

  1. Logga in på din Dodo Payments-instrumentpanel
  2. Klicka på Products i vänstra sidomenyn
  3. Klicka på knappen Create Product
  4. Välj Subscription som produkttyp
Du bör nu se ett formulär där vi konfigurerar vår basprenumeration.
2

Fill in the subscription details

Nu anger vi de specifika detaljerna för vår basplan:Product Name: MotionDescription: Where your team's documentation lives.Recurring Price: Enter → 49.00Billing Cycle: Select → MonthlyCurrency: Select your preferred currency (e.g., USD)

Steg 3: Koppla tillägg till prenumeration

Koppla ditt platstillägg till basprenumerationen så att kunder kan köpa extra platser under checkout.
1

Attach the seat add-on

Koppla tillägg till prenumeration i instrumentpanelen
  1. Scrolla ner till sektionen Tillägg
  2. Klicka på Lägg till Tillägg
  3. Välj ditt plats-tillägg från rullgardinsmenyn
  4. Bekräfta att det visas i din prenumerationskonfiguration
2

Save subscription changes

  1. Granska din fullständiga prenumerationskonfiguration:
    • Basplan: $49/månad för 5 platser
    • Tillägg: $2/månad per ytterligare plats
  2. Klicka på Spara ändringar
Platsbaserad prissättning har konfigurerats! Kunder kan nu köpa din basplan och lägga till extra platser efter behov.

Steg 4: Generera betalningslänkar med anpassade tilläggskvantiteter

Skapa en Express.js-applikation som genererar betalningslänkar med anpassade tilläggskvantiteter. Detta gör att du dynamiskt kan skapa checkout-sessioner med valfritt antal extra platser.
1

Set up your project

Skapa ett nytt Node.js-projekt och installera de nödvändiga beroendena:
Skapa en tsconfig.json-fil:
2

Create your environment file

Skapa en .env-fil med din Dodo Payments API-nyckel:
Checka aldrig in din API-nyckel i versionshanteringen. Lägg till .env i din .gitignore-fil.
3

Implement the checkout session creation

Skapa en src/server.ts-fil med följande kod:
4

Add a simple web interface

Skapa en public/index.html-fil för enkel testning:
Webbgränssnittet har skapats! Du har nu ett enkelt användargränssnitt för att testa olika platskvantiteter.
5

Serve static files

Lägg till detta i din src/server.ts för att visa HTML-filen:
Statiska filer har konfigurerats! Besök http://localhost:3000 för att se ditt demogränssnitt.

Steg 5: Testa din implementation

Låt oss testa vår platsbaserade prismodell för att säkerställa att allt fungerar korrekt.
1

Start your server

  1. Se till att du har din .env-fil med rätt API-nyckel
  2. Uppdatera produkt- och tilläggs-ID:na i koden med de faktiska värdena från din Dodo Payments-instrumentpanel
  3. Starta servern:
Servern bör starta utan problem och visa “Server is running on port 3000”
2

Test the web interface

Demogränssnitt för platsbaserad prissättning
  1. Öppna webbläsaren och gå till http://localhost:3000
  2. Du bör se demogränssnittet för platsbaserad prissättning
  3. Testa olika platskvantiteter (0, 3, 10 osv.)
  4. Klicka på “Generate Checkout Link” för varje kvantitet
  5. Kontrollera att checkout-URL:erna genereras korrekt
3

Test a checkout session

  1. Generera en checkout-länk med 3 extra platser
  2. Klicka på checkout-URL:en för att öppna Dodo Payments checkout
  3. Kontrollera att checkout visar:
    • Basplan: $49/månad
    • Extra platser: 3 × 2 dollar = $6/månad
  4. Slutför testköpet
Checkout bör visa rätt prisuppdelning och låta dig slutföra köpet.
4

Listen for webhooks and update your database

Håll din databas synkroniserad med ändringar av prenumerationer och platser genom att lyssna efter webhook-händelser från Dodo Payments. Webhooks meddelar din backend när en kund slutför checkout, uppdaterar sin prenumeration eller ändrar antalet platser.Följ den officiella Dodo Payments-guiden för webhooks för stegvisa instruktioner om hur du konfigurerar webhook-endpoints och hanterar händelser:

Dodo Payments Webhooks Documentation

Lär dig hur du tar emot och bearbetar webhook-händelser för prenumerations- och platshantering på ett säkert sätt.

Felsökning

Vanliga problem och deras lösningar:
Möjliga orsaker:
  • Ogiltigt produkt-ID eller tilläggs-ID
  • API-nyckeln har inte tillräckliga behörigheter
  • Tillägget är inte korrekt kopplat till prenumerationen
  • Problem med nätverksanslutningen
Lösningar:
  1. Kontrollera att produkt- och tilläggs-ID:na finns i din Dodo Payments-instrumentpanel
  2. Kontrollera att tillägget är korrekt kopplat till prenumerationen
  3. Säkerställ att API-nyckeln har behörighet att skapa checkout-sessioner
  4. Testa API-anslutningen med en enkel GET-begäran

Grattis! Du har implementerat platsbaserad prissättning

Du har skapat ett platsbaserat prissättningssystem med Dodo Payments. Här är vad du har åstadkommit:

Base Subscription

Skapat en prenumerationsprodukt med 5 inkluderade platser för $49/månad

Seat Add-ons

Konfigurerat tillägg för extra platser för $2/månad per plats

Checkout

Byggt ett API som genererar checkout-sessioner med anpassade platskvantiteter

Web Interface

Skapat ett enkelt webgränssnitt för att testa olika platskvantiteter
Det här exemplet visar en minimal implementation av platsbaserad prissättning. För produktionsanvändning bör du lägga till felhantering, autentisering, datavalidering och säkerhetsåtgärder samt anpassa logiken efter din applikations krav.
Senast ändrad 26 september 2026