Denna handledning tillhandahåller exempel på implementationskod för en Node.js/Express-applikation. Du kan modifiera denna kod för ditt specifika ramverk (Next.js, React, Vue, etc.) och anpassa användargränssnittet enligt dina applikationsbehov.
- 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 USD/månad för upp till 5 teammedlemmar
- Plats-tillägg: 2 USD/månad per ytterligare plats
- Betalningslänkar: Dynamisk kassa med anpassade platsmängder
Innan vi börjar, se till att du har:
- Ett Dodo Payments-konto
- Grundläggande kännedom om TypeScript/Node.js
Steg 1: Skapa ditt plats-tillägg
Nu behöver vi skapa ett tillägg som representerar ytterligare platser. Detta tillägg kommer att kopplas till vår basprenumeration och tillåta kunder att köpa ytterligare platser.
1
Navigera till Tillägg
- I din Dodo Payments-instrumentpanel, stanna i Produkter-sektionen
- Klicka på fliken Tillägg
- Klicka på Skapa Tillägg
2
Ange tilläggsdetaljer
Fyll i dessa värden för vårt plats-tillägg:Tilläggsnamn:
Additional Team SeatBeskrivning: Add extra team members to your workspace with full access to all featuresPris: Ange → 2.00Valuta: Måste matcha din basprenumerationsvalutaSkattekategori: Välj lämplig kategori för din produkt.3
Spara ditt tillägg
- Granska alla dina inställningar:
- Namn: Ytterligare Teamplats
- Pris: 2,00 USD/månad
- Klicka på Skapa Tillägg
Tillägg skapat! Ditt plats-tillägg är nu tillgängligt för att kopplas till prenumerationer.
Steg 2: Skapa din basprenumerationsprodukt
Vi börjar med att skapa en basprenumerationsprodukt som inkluderar 5 teammedlemmar. Detta kommer att vara grunden för vår platsbaserade prissättningsmodell.
1
Navigera till Produkter
- Logga in på din Dodo Payments-instrumentpanel
- Klicka på Produkter i vänster sidofält
- Klicka på knappen Skapa Produkt
- Välj Prenumeration som produkttyp
2
Fyll i prenumerationsdetaljer
Nu kommer vi att ange de specifika detaljerna för vår basplan:Produktnamn:
MotionBeskrivning: Where your team's documentation lives.Återkommande pris: Ange → 49.00Faktureringscykel: Välj → MonthlyValuta: Välj din föredragna valuta (t.ex. USD)Steg 3: Koppla tillägg till prenumeration
Nu behöver vi koppla vårt plats-tillägg till basprenumerationen så att kunder kan köpa ytterligare platser under kassan.1
Fäst plats-tillägget

- Scrolla ner till sektionen Tillägg
- Klicka på Lägg till Tillägg
- Välj ditt plats-tillägg från rullgardinsmenyn
- Bekräfta att det visas i din prenumerationskonfiguration
2
Spara prenumerationsändringar
- Granska din kompletta prenumerationsinställning:
- Basplan: 49 USD/månad för 5 platser
- Tillägg: 2 USD/månad per ytterligare plats
- Gratis provperiod: 14 dagar
- Klicka på Spara Ändringar
Platsbaserad prissättning konfigurerad! Kunder kan nu köpa din basplan och lägga till extra platser vid behov.
Steg 4: Generera betalningslänkar med anpassade tilläggsmängder
Nu låt oss skapa en Express.js-applikation som genererar betalningslänkar med anpassade tilläggsmängder. Det är här den verkliga kraften i platsbaserad prissättning kommer in - du kan dynamiskt skapa kassa-sessioner med vilket antal ytterligare platser som helst.1
Ställ in ditt projekt
Skapa ett nytt Node.js-projekt och installera de nödvändiga beroenden:Skapa en
tsconfig.json fil:2
Skapa din miljöfil
Skapa en
.env fil med din Dodo Payments API-nyckel:3
Implementera skapandet av kassa-sessioner
Skapa en
src/server.ts fil med följande kod:4
Lägg till ett enkelt webbgränssnitt
Skapa en
public/index.html fil för enkel testning:Webbgränssnitt skapat! Du har nu ett enkelt användargränssnitt för att testa olika platsmängder.
5
Servera statiska filer
Lägg till detta i din
src/server.ts för att servera HTML-filen:Statiska filer konfigurerade! Besök
http://localhost:3000 för att se ditt demogränssnitt.Steg 5: Testa din implementation
Låt oss testa vår platsbaserade prissättningsimplementation för att säkerställa att allt fungerar korrekt.1
Starta din server
- Se till att du har din
.envfil med rätt API-nyckel - Uppdatera produkt- och tilläggs-ID:erna i din kod med de faktiska värdena från din Dodo Payments-instrumentpanel
- Starta din server:
Din server bör starta framgångsrikt och visa “Servern körs på http://localhost:3000”
2
Testa webbgränssnittet

- Öppna din webbläsare och gå till
http://localhost:3000 - Du bör se demogränssnittet för platsbaserad prissättning
- Prova olika platsmängder (0, 3, 10, etc.)
- Klicka på “Generera Kassa-länk” för varje mängd
- Verifiera att kassa-URL:erna genereras korrekt
3
Testa en kassa-session
- Generera en kassa-länk med 3 ytterligare platser
- Klicka på kassa-URL:en för att öppna Dodo Payments-kassan
- Verifiera att kassan visar:
- Basplan: 49 USD/månad
- Ytterligare platser: 3 × 2 dollar = 6 USD/månad
- Slutför testköpet
Kassan bör visa den korrekta prissättningen och låta dig slutföra köpet.
4
Lyssna på webhooks och uppdatera din databas
För att hålla din databas synkroniserad med prenumerations- och platsändringar måste du lyssna på webhook-händelser från Dodo Payments. Webhooks meddelar din backend när en kund slutför kassan, uppdaterar sin prenumeration eller ändrar platsantal.Följ den officiella Dodo Payments-webhookguiden för steg-för-steg-instruktioner om hur du ställer in webhook-slutpunkter och hanterar händelser:
Dodo Payments Webhooks Dokumentation
Lär dig hur du säkert tar emot och bearbetar webhook-händelser för prenumeration och platsadministration.
Felsökning
Vanliga problem och deras lösningar:Kassa skapande misslyckas
Kassa skapande misslyckas
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
- Nätverksanslutningsproblem
- Verifiera att produkt- och tilläggs-ID:n finns i din Dodo Payments-instrumentpanel
- Kontrollera att tillägget är korrekt kopplat till prenumerationen
- Se till att API-nyckeln har behörigheter för att skapa kassa-sessioner
- Testa API-anslutningen med en enkel GET-förfrågan
Grattis! Du har implementerat platsbaserad prissättning
Du har framgångsrikt skapat ett system för platsbaserad prissättning med Dodo Payments! Här är vad du har åstadkommit:Basprenumeration
Skapat en prenumerationsprodukt med 5 inkluderade platser för 49 USD/månad
Plats-tillägg
Konfigurerade tillägg för ytterligare platser för 2 USD/månad per plats
Kassa
Byggt ett API som genererar kassa-sessioner med anpassade platsmängder
Webbgränssnitt
Skapat ett enkelt webbgränssnitt för att testa olika platsmängder
Detta exempel visar endast en minimal implementation av platsbaserad prissättning. För produktionsanvändning bör du lägga till robust felhantering, autentisering, datavalidering, säkerhetsåtgärder och anpassa logiken för att passa din applikations krav.