Hoppa till huvudinnehåll

Översikt

Inline checkout låter dig skapa fullt integrerade checkout-upplevelser som smälter samman med din webbplats eller applikation. Till skillnad från overlay checkout, som öppnas som en modal ovanpå din sida, integrerar inline checkout betalningsformuläret direkt i din sidlayout. Med inline checkout kan du:
  • Skapa checkout-upplevelser som är helt integrerade med din app eller webbplats
  • Låta Dodo Payments säkert fånga kund- och betalningsinformation i en optimerad checkout-ram
  • Visa artiklar, totalsummor och annan information från Dodo Payments på din sida
  • Använda SDK-metoder och händelser för att bygga avancerade checkout-upplevelser
Inline Checkout Cover Image

Hur Det Fungerar

Inline checkout fungerar genom att integrera en säker Dodo Payments-ram i din webbplats eller app. Checkout-ramen hanterar insamling av kundinformation och fångar betalningsdetaljer. Din sida visar artikellistan, totalsummor och alternativ för att ändra vad som finns i checkout. SDK:n låter din sida och checkout-ramen interagera med varandra. Dodo Payments skapar automatiskt en prenumeration när en checkout är klar, redo för dig att tillhandahålla.
Inline checkout-ramen hanterar säkert all känslig betalningsinformation och säkerställer PCI-efterlevnad utan ytterligare certifiering från din sida.

Vad Gör En Bra Inline Checkout?

Det är viktigt att kunderna vet vem de köper från, vad de köper och hur mycket de betalar. För att bygga en inline checkout som är efterlevande och optimerad för konvertering måste din implementation inkludera:
Inline checkout example with required elements labeled
  1. Återkommande information: Om det är återkommande, hur ofta det återkommer och den totala summan att betala vid förnyelse. Om det är en provperiod, hur länge provperioden varar.
  2. Artikelbeskrivningar: En beskrivning av vad som köps.
  3. Transaktionstotalsummor: Transaktionstotalsummor, inklusive delsumma, total skatt och grand total. Se till att inkludera valutan också.
  4. Dodo Payments-fotnot: Den fullständiga inline checkout-ramen, inklusive checkout-fotnoten som har information om Dodo Payments, våra försäljningsvillkor och vår integritetspolicy.
  5. Återbetalningspolicy: En länk till din återbetalningspolicy, om den skiljer sig från Dodo Payments standardåterbetalningspolicy.
Visa alltid den kompletta inline checkout-ramen, inklusive sidfoten. Att ta bort eller dölja juridisk information bryter mot efterlevnadskrav.

Kundresa

Checkout-flödet bestäms av din checkout-sessionkonfiguration. Beroende på hur du konfigurerar checkout-sessionen kommer kunderna att uppleva en checkout som kan presentera all information på en enda sida eller över flera steg.
1

Customer opens checkout

Du kan öppna inline utcheckning genom att skicka artiklar eller en befintlig transaktion. Använd SDK för att visa och uppdatera information på sidan, och SDK-metoder för att uppdatera artiklar baserat på kundinteraktion.Inledande utcheckningssida med artikelista och betalningsformulär
2

Customer enters their details

Inline checkout ber först kunderna att ange sin e-postadress, välja sitt land och (där det krävs) ange sitt postnummer. Detta steg samlar all nödvändig information för att bestämma skatter och tillgängliga betalningsalternativ.Du kan förfylla kunduppgifter och presentera sparade adresser för att effektivisera upplevelsen.
3

Customer selects payment method

Efter att ha angett sina uppgifter presenteras kunderna med tillgängliga betalningsmetoder och betalningsformuläret. Alternativ kan inkludera kredit- eller betalkort, PayPal, Apple Pay, Google Pay och andra lokala betalningsmetoder baserat på deras plats.Visa sparade betalningsmetoder om de finns tillgängliga för att snabba upp checkout.Tillgängliga betalningsmetoder och kortinformationsformulär
4

Checkout completed

Dodo Payments dirigerar varje betalning till den bästa förvärvaren för den försäljningen för att få bästa möjliga chans till framgång. Kunderna går in i ett framgångsflöde som du kan bygga.Framgångsskärm med bekräftelsebock
5

Dodo Payments creates subscription

Dodo Payments skapar automatiskt en prenumeration för kunden, redo för dig att tillhandahålla. Betalningsmetoden som kunden använde hålls på fil för förnyelser eller ändringar av prenumerationen.Prenumeration skapad med webhook-meddelande

Snabbstart

Kom igång med Dodo Payments Inline Checkout på bara några rader kod:
Se till att du har ett container-element med motsvarande id på din sida: <div id="dodo-inline-checkout"></div>.

Steg-för-steg Integrationsguide

1

Install the SDK

Installera Dodo Payments Checkout SDK:
2

Initialize the SDK for Inline Display

Initiera SDK:n och ange displayType: 'inline'. Du bör också lyssna på checkout.breakdown-händelsen för att uppdatera ditt användargränssnitt med realtidsberäkningar av skatt och totalsumma.
3

Create a Container Element

Lägg till ett element i din HTML där checkout-ramen kommer att injiceras:
4

Open the Checkout

Anropa DodoPayments.Checkout.open() med checkoutUrl och elementId från din container:
5

Test Your Integration

  1. Starta din utvecklingsserver:
  1. Testa checkout-flödet:
    • Ange din e-post och adressuppgifter i inline-ramen.
    • Verifiera att din anpassade ordersammanfattning uppdateras i realtid.
    • Testa betalningsflödet med testuppgifter.
    • Bekräfta att omdirigeringar fungerar korrekt.
Du bör se checkout.breakdown-händelser loggas i din webbläsarkonsol om du lade till en console.log i onEvent-callbacken.
6

Go Live

När du är redo för produktion:
  1. Ändra läget till 'live':
  1. Uppdatera dina checkout-URL:er för att använda live checkout-sessioner från din backend.
  2. Testa hela flödet i produktion.

Komplett React Exempel

Detta exempel visar hur du implementerar en anpassad orderöversikt bredvid inline checkout och håller dem synkade med hjälp av checkout.breakdown-händelsen.

API Referens

Konfiguration

Initieringsalternativ

Checkoutalternativ

Metoder

Öppna Checkout

Öppnar checkout-ramen i den angivna behållaren.
Du kan också skicka ytterligare alternativ för att anpassa kassabeteendet:

Stäng Utcheckning

Avlägsnar programmatiskt utcheckningsramen och rensar upp händelselyssnare.

Kontrollera Status

Returnerar om utcheckningsramen för närvarande är injicerad.

Händelser

SDK:n tillhandahåller realtidshändelser genom onEvent-återkallningsfunktionen. För inline checkout är checkout.breakdown särskilt användbar för att synkronisera din UI.

Utcheckningens Detaljer Data

checkout.breakdown-händelsen tillhandahåller följande data:

Förstå Händelsen Detaljer

checkout.breakdown-händelsen är det primära sättet att hålla din applikations UI synkroniserad med Dodo Payments utcheckningsstatus. När den skickas:
  • Vid initialisering: Omedelbart efter att utcheckningsramen har laddats och är redo.
  • Vid adressändring: När kunden väljer ett land eller anger ett postnummer som leder till en skatteomräkning.
Fältdetaljer: Viktiga Integreringstips:
  1. Valutaformatering: Priser returneras alltid som heltal i den minsta valutaenheten (t.ex. cent för USD, yen för JPY). För att visa dem, dela med 100 (eller lämplig tiopotens) eller använd ett formateringsbibliotek som Intl.NumberFormat.
  2. Hantering av initiala tillstånd: När utcheckningen först laddas kan tax och discount vara 0 eller null tills användaren anger sina faktureringsuppgifter eller tillämpar en kod. Din UI ska hantera dessa tillstånd på ett smidigt sätt (t.ex. visa ett streck eller dölja raden).
  3. Den “slutliga summan” vs “totalsumman”: Medan total ger dig den standardiserade priskalkylen, är finalTotal källan till sanningen för transaktionen. Om finalTotal är närvarande återspeglar det exakt vad som debiteras kundens kort, inklusive eventuella dynamiska justeringar.
  4. Realtidsfeedback: Använd tax-fältet för att visa användare att skatter beräknas i realtid. Detta ger en “live” känsla till din utcheckningssida och minskar friktionen under adressinmatningssteget.

Implementeringsalternativ

Paketinstallation via Paket Manager

Installera via npm, yarn eller pnpm som det visas i Steg-för-steg-integreringsguiden.

CDN-implementering

För snabb integration utan ett bygga-steg kan du använda vår CDN:

Uppdatera Betalningsmetod

Inline utcheckning stödjer betalningsmetodsuppdateringar för prenumerationer. När en kund behöver uppdatera sin betalningsmetod - vare sig för en aktiv prenumeration eller för att återaktivera en pausad prenumeration - kan du representera uppdateringsflödet direkt inom din sidlayout.

Hur det fungerar

  1. Anropa Uppdatera Betalningsmetod API för att få en payment_link:
  1. Passera den returnerade payment_link som checkoutUrl för att öppna inline utcheckning:
Inline-ramen renderar endast formuläret för insamling av betalningsmetod. Kunder kan ange nya kortuppgifter eller välja en sparad betalningsmetod utan att lämna din sida.

För Pausade Prenumerationer

När du uppdaterar betalningsmetoden för en prenumeration i on_hold status, skapar Dodo Payments automatiskt en debitering för eventuella återstående belopp. Övervaka payment.succeeded och subscription.active-webhooks för att bekräfta återaktivering.
Du kan också använda en redan sparad betalningsmetod istället för att samla in nya uppgifter genom att skicka type: 'existing' med en payment_method_id till Uppdatera Betalningsmetod API.

Felhantering

SDK:n tillhandahåller detaljerad felinformation genom händelsesystemet. Implementera alltid korrekt felhantering i din onEvent-återkallning:
Hantera alltid checkout.error-händelsen för att ge en bra användarupplevelse när problem uppstår.

Bästa Praxis

  1. Responsiv Design: Se till att ditt konteiner-element har tillräcklig bredd och höjd. Iframe kommer vanligtvis expandera för att fylla sin konteiner.
  2. Synkronisering: Använd checkout.breakdown-händelsen för att hålla din anpassade orderöversikt eller prissättningstabeller synkroniserade med vad användaren ser i utcheckningsramen.
  3. Skelettillstånd: Visa en laddningsindikator i din konteiner tills checkout.opened-händelsen skickas.
  4. Rensning: Anropa DodoPayments.Checkout.close() när din komponent avmonteras för att rensa iframe och händelselyssnare.
För mörkertilståndimplementeringar rekommenderas det att använda #0d0d0d som bakgrundsfärg för optimal visuell integration med inline utcheckningsram.

Validering av Betalningsstatus

Lita inte enbart på inline utcheckningshändelser för att avgöra betalningsframgång eller fel. Implementera alltid server-sidig validering med användning av webhooks och/eller polling.

Varför Server-Sidig Validering Är Viktig

Även om inline utcheckningshändelser ger realtidsfeedback, bör de inte vara din enda sanningskälla för betalningsstatus. Nätverksproblem, webbläsarkrascher, eller användare som stänger sidan kan orsaka missade händelser. För att säkerställa tillförlitlig betalningsvalidering:
  1. Din server bör lyssna på webhook-händelser - Dodo Payments skickar webhooks för betalningsstatusändringar
  2. Implementera en polllösning - Din frontend bör hålla koll på din server för statusuppdateringar
  3. Kombinera båda tillvägagångssätten - Använd webhooks som den primära källan och polling som en reservlösning

Rekommenderad Arkitektur

Implementeringssteg

1. Lyssna efter utcheckningshändelser - När användaren klickar på betala, börja förbereda för att verifiera statusen:
2. Poll din server - Skapa en slutpunkt som kontrollerar din databas för betalningsstatus (uppdaterad av webhooks):
3. Hantera server-side webhooks - Uppdatera din databas när Dodo skickar payment.succeeded eller payment.failed webhooks. Se vår Webhook-dokumentation för detaljer.

Felsökning

  • Verifiera att elementId matchar id av en div som faktiskt finns i DOM.
  • Se till att displayType: 'inline' överlämnades till Initialize.
  • Kontrollera att checkoutUrl är giltig.
  • Se till att du lyssnar på checkout.breakdown-händelsen.
  • Skatter beräknas först efter att användaren angett ett giltigt land och postnummer i utcheckningsramen.

Aktivera Digitala Plånböcker

För detaljerad information om inställning av Apple Pay, Google Pay och andra digitala plånböcker, se sidan Digitala Plånböcker.

Snabbinställning för Apple Pay

Domänverifiering krävs endast för inline (inbäddad) checkout. Overlay checkout, värd checkout och betalningslänkar behöver det inte.
Apple Pay verifieras per domän från instrumentpanelen.
1

Open Wallet domains

Gå till Inställningar → Betalningsmetoder och klicka på Hantera domäner på raden Apple Pay.
Manage domains button on the Apple Pay row in Payment Methods settings
2

Download the domain association file

Från panelen Wallet-domäner, ladda ner associationsfilen.
Wallet domains panel with the Download file button
3

Register your domain

Klicka på Registrera domän och ange den domän där du bäddar in inline checkout (t.ex. shop.example.com), sedan Fortsätt.
Register a domain form with a domain entered
4

Host the file on your domain

Värd den på:
Den måste betjänas över HTTPS, nås utan omdirigeringar och betjänas med Content-Type: application/octet-stream eller text/plain.
5

Verify the domain

Klicka på Verifiera domän. Dodo Payments bekräftar att filen är aktiv och skickar din domän till Apple.
Verify your domain screen with the association file host path and Verify domain button
6

Confirm it's active

När statusen visar Aktiv är Apple Pay aktiverat för den domänen. Använd Aktiverad-vippknappen för att slå på eller av per domän.
Wallet domains list showing domains with an Active Apple Pay status and Enabled toggles
7

Test the integration

  1. Öppna checkout på en Apple-enhet
  2. Kontrollera att Apple Pay-knappen visas
  3. Slutför en testtransaktion

Webbläsarstöd

Dodo Payments Checkout SDK stöder följande webbläsare:
  • Chrome (senaste)
  • Firefox (senaste)
  • Safari (senaste)
  • Edge (senaste)
  • IE11+

Inline vs Overlay Checkout

Välj rätt checkout-typ för ditt användningsområde:
Använd inline checkout när du vill ha maximalt kontroll över checkout-upplevelsen och sömlös branding. Använd overlay checkout för snabbare integration med minimala ändringar på dina befintliga sidor.

Relaterade resurser

Overlay Checkout

Använd overlay checkout för snabb integration baserad på modal-fönster.

Checkout Sessions API

Skapa checkout-sessioner för att driva dina checkout-upplevelser.

Webhooks

Hantera betalningshändelser server-side med webhooks.

Integration Guide

Fullständig guide för integrering av Dodo Payments.
För mer hjälp, besök vårt Discord community eller kontakta vårt supportteam för utvecklare.
Senast ändrad 9 juli 2026