Översikt
Dodo Payments Checkout SDK erbjuder ett sömlöst sätt att integrera vår betalningsoverlay i din webbapplikation. Byggd med TypeScript och moderna webbstandarder, erbjuder den en robust lösning för att hantera betalningar med realtids-händelsehantering och anpassningsbara teman.
Demo
Interactive Demo
Se överläggskassan i aktion med vår live-demo.
Snabbstart
Kom igång med Dodo Payments Checkout SDK på bara några rader kod:Steg-för-steg Integrationsguide
Initialize the SDK
Initiera SDK:n i din applikation, vanligtvis i din huvudkomponent eller appens ingångspunkt:
Test Your Integration
- Starta din utvecklingsserver:
- Testa checkout-flödet:
- Klicka på checkout-knappen
- Verifiera att overlayen visas
- Testa betalningsflödet med testuppgifter
- Bekräfta att omdirigeringar fungerar korrekt
Du bör se kassahändelser loggas i din webbläsares konsol.
API Referens
Konfiguration
Initieringsalternativ
| Alternativ | Typ | Obligatorisk | Beskrivning |
|---|---|---|---|
mode | "test" | "live" | Ja | Miljöläge: 'test' för utveckling, 'live' för produktion |
displayType | "overlay" | "inline" | Nej | Visningstyp: 'overlay' för modal kassa (standard), 'inline' för inbäddad kassa |
onEvent | function | Ja | Callback-funktion för att hantera kassahändelser |
Checkout-alternativ
| Alternativ | Typ | Obligatorisk | Beskrivning |
|---|---|---|---|
checkoutUrl | string | Ja | Checkout-sessionens URL från create checkout session API |
options.showTimer | boolean | Nej | Visa eller dölj kassatimerna. Som standard är true. När den är inaktiverad får du checkout.link_expired-händelsen när sessionen löper ut. |
options.showSecurityBadge | boolean | Nej | Visa eller dölj säkerhetsmärket. Som standard är true. |
options.manualRedirect | boolean | Nej | När det är aktiverat kommer kassan inte automatiskt att omdirigera efter slutförandet. Istället får du checkout.status- och checkout.redirect_requested-händelser för att hantera omdirigeringen själv. |
Metoder
Öppna Checkout
Öppnar checkout-overlayen med den angivna checkout-session-URL:en.manualRedirect, hantera kassans slutförande i din onEvent-callback:
Stäng Checkout
Stänger programatiskt checkout-overlay.Kontrollera Status
Returnerar om checkout-overlay för närvarande är öppen.Händelser
SDK:n tillhandahåller realtidshändelser som du kan lyssna på viaonEvent-callbacken:
Checkout Status Händelsedata
NärmanualRedirect är aktiverat får du checkout.status-händelsen med följande data:
Checkout Omdirigering Begärd Händelsedata
NärmanualRedirect är aktiverat får du checkout.redirect_requested-händelsen med följande data:
| Händelsetyp | Beskrivning |
|---|---|
checkout.opened | Checkout-överlägget har öppnats |
checkout.form_ready | Checkout-formuläret är redo att ta emot användarinmatning. Användbart för att dölja laddningslägen. |
checkout.payment_page_opened | Betalningssidan har visats |
checkout.customer_details_submitted | Kund- och faktureringsuppgifter har skickats in |
checkout.closed | Checkout-överlägget har stängts |
checkout.redirect | Kassa kommer att utföra en omdirigering |
checkout.error | Ett fel inträffade under kassan |
checkout.link_expired | Utlöses när checkout-sessionen löper ut. Tas endast emot när showTimer är satt till false. |
checkout.status | Utlöses när manualRedirect är aktiverat. Innehåller kassan status (succeeded, failed eller processing). |
checkout.redirect_requested | Utlöses när manualRedirect är aktiverat. Innehåller URL:en som kunden ska omdirigeras till. |
Implementeringsalternativ
Paketmanagerinstallation
Installera via npm, yarn eller pnpm som visas i Steg-för-steg integrationsguiden.CDN-implementering
För snabb integration utan byggsteg kan du använda vår CDN:Temaanpassning
Du kan anpassa kassans utseende genom att skicka ettthemeConfig-objekt i options-parametern när du öppnar kassan. Temakonfigurationen stödjer både ljusa och mörka lägen, vilket låter dig anpassa färger, kanter, text, knappar och hörnradie.
Detta avsnitt täcker klientside tema-konfiguration med Checkout SDK. Du kan också konfigurera teman serverside när du skapar en checkout-session via API:et med hjälp av parametern
theme_config. Se Checkout Theme Customization för API-nivåkonfiguration, eller använd Design page i kontrollpanelen för att konfigurera teman visuellt med liveförhandsvisning.Grundläggande temakonfiguration
Komplett temakonfiguration
Alla tillgängliga temaeigenskaper:Endast ljus läge
Om du bara vill anpassa det ljusa temat:Endast mörkt läge
Om du bara vill anpassa det mörka temat:Delvis temainställning
Du kan skriva över endast specifika egenskaper. Kassa använder standardvärden för egenskaper du inte anger:Temakonfiguration med andra alternativ
Du kan kombinera temakonfiguration med andra kassaalternativ:TypeScript-typer
För TypeScript-användare exporteras alla temakonfigurationstyper:Felhantering
SDK:n tillhandahåller detaljerad felinformation genom händelsesystemet. Implementera alltid korrekt felhantering i dinonEvent-callback:
Bästa praxis
- Initiera endast en gång: Initiera SDK:n en gång när din applikation laddas, inte vid varje försök att öppna kassan
- Felhantering: Implementera alltid korrekt felhantering i din event-callback
- Testläge: Använd
test-läget under utveckling och växla tillliveförst när du är redo för produktion - Händelsehantering: Hantera alla relevanta händelser för en komplett användarupplevelse
- Giltiga URL:er: Använd alltid giltiga checkout-URL:er från create checkout session API
- TypeScript: Använd TypeScript för bättre typkontroll och utvecklarupplevelse
- Laddningstillstånd: Visa laddningstillstånd medan kassan öppnas för att förbättra UX
- Manuella omdirigeringar: Använd
manualRedirectnär du behöver anpassad kontroll över navigeringen efter kassan - Timerhantering: Inaktivera timern (
showTimer: false) om du vill hantera sessionens utgång manuellt
Felsökning
Checkout not opening
Checkout not opening
Möjliga orsaker:
- SDK:n initierades inte innan
open()kallades - Ogiltig checkout-URL
- JavaScript-fel i konsolen
- Nätverksanslutningsproblem
- Verifiera att SDK-initiering sker innan kassan öppnas
- Kontrollera konsolfel
- Säkerställ att checkout-URL är giltig och kommer från create checkout session API
- Kontrollera nätverksanslutning
Events not firing
Events not firing
Möjliga orsaker:
- Händelsehanteraren är inte korrekt konfigurerad
- JavaScript-fel som hindrar händelsepropagering
- SDK:n initierades inte korrekt
- Bekräfta att händelsehanteraren är korrekt konfigurerad i
Initialize() - Kontrollera webbläsarens konsol efter JavaScript-fel
- Verifiera att SDK-initieringen slutfördes framgångsrikt
- Testa först med en enkel händelsehanterare
Styling issues
Styling issues
Möjliga orsaker:
- CSS-konflikter med din applikations stilar
- Temainställningarna tillämpas inte korrekt
- Responsiva designproblem
- Kontrollera CSS-konflikter i webbläsarens DevTools
- Verifiera att temainställningarna är korrekta
- Testa på olika skärmstorlekar
- Se till att det inte finns z-index-konflikter med överlägget
Aktivera digitala plånböcker
För detaljerad information om hur du ställer in Google Pay och andra digitala plånböcker, se sidan Digital Wallets.Apple Pay stöds ännu inte i överläggskassan. Stöd för Apple Pay kommer snart.
Webbläsarstöd
Dodo Payments Checkout SDK stöder följande webbläsare:- Chrome (senaste)
- Firefox (senaste)
- Safari (senaste)
- Edge (senaste)
- IE11+
Överläggskassa vs inline-kassa
Välj rätt kassamodell för ditt användningsfall:| Funktion | Överläggskassa | Inline-kassa |
|---|---|---|
| Integrationsdjup | Modal ovanpå sidan | Fullt inbäddad i sidan |
| Layouthantering | Begränsad | Full kontroll |
| Varumärkesprofil | Separat från sidan | Sömlös |
| Implementationsinsats | Lägre | Högre |
| Bäst för | Snabb integration, befintliga sidor | Anpassade kassasidor, högkonverterande flöden |
Relaterade resurser
Inline Checkout
Bädda in kassan direkt på din sida för helt integrerade upplevelser.
Checkout Sessions API
Skapa checkout-sessioner för att driva dina kassaupplevelser.
Webhooks
Hantera betalningshändelser på serversidan med webhooks.
Integration Guide
Fullständig guide till att integrera Dodo Payments.