Förutsättningar
För att integrera Dodo Payments API behöver du:- Ett Dodo Payments handelskonto
- API-uppgifter (API-nyckel och webhook hemlig nyckel) från instrumentpanelen
Inställning av instrumentpanelen
- Navigera till Dodo Payments Dashboard
- Skapa en produkt (engångsbetalning eller prenumeration)
-
Generera din API-nyckel:
- Gå till Utvecklare > API
- Detaljerad guide
- Kopiera API-nyckeln i miljön med namnet DODO_PAYMENTS_API_KEY
-
Konfigurera webhooks:
- Gå till Utvecklare > Webhooks
- Skapa en webhook-URL för betalningsnotifikationer
- Kopiera den hemliga webhook-nyckeln i miljön
Integration
Betalningslänkar
Välj integrationsväg som passar ditt användningsfall:- Checkout Sessions (rekommenderas): Bäst för de flesta integrationer. Skapa en session på din server och omdirigera kunder till en säker, hostad kassa.
- Overlay Checkout: Använd när du behöver en in-page-upplevelse som öppnar kassan som en modal overlay på din webbplats.
- Inline Checkout: Bädda in kassan direkt i din sidlayout för helt integrerade, varumärkesanpassade kassaupplevelser.
- Statisk betalningslänkar: Ingen kod, omedelbart delbara URL:er för snabb betalningsinsamling.
- Dynamiska betalningslänkar: Programmatisk skapade länkar. Dock rekommenderas Checkout Sessions och ger mer flexibilitet.
1. Checkout Sessions
Använd Checkout Sessions för att skapa en säker, hostad checkoutupplevelse för engångsbetalningar eller prenumerationer. Du skapar en session på din server, och omdirigerar sedan kunden till den returneradecheckout_url.
Checkout-sessions är giltiga i 24 timmar som standard. Om du skickar
confirm=true, är sessionerna giltiga i 15 minuter och alla obligatoriska fält måste anges.1
Skapa en checkout-session
Välj ditt föredragna SDK eller anropa REST API.
- Node.js SDK
- Python SDK
- REST API
2
Omdirigera kunden till checkout
Efter sessionens skapande, omdirigera till
checkout_url för att starta den hostade flödet.2. Overlay Checkout
För en sömlös in-page checkoutupplevelse, utforska vår Overlay Checkout integration som gör att kunder kan slutföra betalningar utan att lämna din webbplats.3. Inline Checkout
För helt integrerade kassaupplevelser som är inbäddade direkt i din sida, använd vår Inline Checkout integration. Detta gör att du kan bygga anpassade orderöversikter och ha full kontroll över kassalayouten medan Dodo Payments säkert hanterar betalningsinsamlingen.4. Statisk betalningslänkar
Statisk betalningslänkar låter dig snabbt ta emot betalningar genom att dela en enkel URL. Du kan anpassa kassaupplevelsen genom att skicka med frågeparametrar för att förifylla kunduppgifter, kontrollera formulärfält och lägga till anpassad metadata.1
Konstruera din betalningslänk
Börja med bas-URL:en och lägg till ditt produkt-ID:
2
Lägg till kärnparametrar
Inkludera viktiga frågeparametrar:
-
Antal artiklar att köpa.
-
URL att omdirigera till efter betalningens slutförande.
Omdirigerings-URL:en kommer att inkludera betalningsdetaljer som frågeparametrar, till exempel:
https://example.com/?payment_id=pay_ts2ySpzg07phGeBZqePbH&status=succeeded3
Förifyll kundinformation (valfritt)
Lägg till kund- eller faktureringsfält som frågeparametrar för att effektivisera kassan.
Stödda kundfält
Stödda kundfält
-
Kundens fullständiga namn (ignoreras om firstName eller lastName anges).
-
Kundens förnamn.
-
Kundens efternamn.
-
Kundens e-postadress.
-
Kundens land.
-
Gatuadress.
-
Stad.
-
Stat eller provins.
-
Postnummer/ZIP-kod.
-
true eller false
4
Kontrollera formulärfält (valfritt)
Du kan inaktivera specifika fält för att göra dem skrivskyddade för kunden. Detta är användbart när du redan har kundens uppgifter (t.ex. inloggade användare).
disable… flagga till true:- Inaktiveringsflaggor Tabell
| Fält | Inaktiveringsflagga | Obligatorisk parameter |
|---|---|---|
| Fullständigt namn | disableFullName | fullName |
| Förnamn | disableFirstName | firstName |
| Efternamn | disableLastName | lastName |
| E-post | disableEmail | email |
| Land | disableCountry | country |
| Gatuadress | disableAddressLine | addressLine |
| Stad | disableCity | city |
| Stat | disableState | state |
| ZIP-kod | disableZipCode | zipCode |
Att ställa in
showDiscounts=false kommer att inaktivera och dölja rabattsektionen i kassafältet. Använd detta om du vill förhindra att kunder anger kupong- eller kampanjkoder under kassan.5
Lägg till avancerade kontroller (valfritt)
-
Anger betalningsvalutan. Standard är den faktureringslandets valuta.
-
Visa eller dölja valutaväljaren.
-
Belopp i cent (endast för Pay What You Want-prissättning).
-
Anpassade metadatafält (t.ex.
metadata_orderId=123).
6
Dela länken
Skicka den färdiga betalningslänken till din kund. När de besöker, samlas alla frågeparametrar in och lagras med ett session-ID. URL:en förenklas sedan för att endast inkludera sessionsparametern (t.ex.
?session=sess_1a2b3c4d). Den lagrade informationen kvarstår genom siduppdateringar och är tillgänglig under hela kassa-processen.Kundens kassaupplevelse är nu strömlinjeformad och personlig baserat på dina parametrar.
4. Dynamiska betalningslänkar
Skapad via API-anrop eller vår SDK med kunduppgifter. Här är ett exempel: Det finns två API:er för att skapa dynamiska betalningslänkar:- Engångsbetalningslänk API API-referens
- Prenumerationsbetalningslänk API API-referens
Se till att du skickar
payment_link = true för att få betalningslänk - Node.js SDK
- Python SDK
- Go SDK
- API-referens
Efter att ha skapat betalningslänken, omdirigera dina kunder för att slutföra sin betalning.