Hoppa till huvudinnehåll

Checkout Handler

Integrera Dodo Payments-kassan i din Remix-app.

Customer Portal

Låt kunder hantera prenumerationer och uppgifter.

Webhooks

Ta emot och bearbeta Dodo Payments-webhookhändelser.

Installation

1

Install the package

Kör följande kommando i ditt projektrot:
2

Set up environment variables

Skapa en .env-fil i projektets rot:
Commita aldrig din .env-fil eller hemligheter till versionshantering.

Exempel på rutt-hanterare

Alla exempel antar att du använder Remix App Router.
Använd denna handler för att integrera Dodo Payments-kassan i din Remix-app. Stöder statiska (GET), dynamiska (POST) och sessionella (POST) betalflöden.

Kassa-rutt-hanterare

Dodo Payments stöder tre typer av betalflöden för att integrera betalningar på din webbplats, och denna adapter stöder alla typer av betalflöden.
  • Statiska betalningslänkar: Omedelbart delbara URL:er för snabb, kodfri insamling av betalningar.
  • Dynamiska betalningslänkar: Programmera generera betalningslänkar med anpassade detaljer med hjälp av API:er eller SDK:er.
  • Kassasessioner: Skapa säkra, anpassningsbara kassaupplevelser med förkonfigurerade produktvagnar och kunddetaljer.

Stödda sökparametrar

productId
string
obligatorisk
Produktidentifierare (t.ex. ?productId=pdt_nZuwz45WAs64n3l07zpQR).
quantity
integer
Produktens kvantitet.
fullName
string
Kundens fullständiga namn.
firstName
string
Kundens förnamn.
lastName
string
Kundens efternamn.
email
string
Kundens e-postadress.
country
string
Kundens land.
addressLine
string
Kundens adressrad.
city
string
Kundens stad.
state
string
Kundens delstat/provins.
zipCode
string
Kundens postnummer.
disableFullName
boolean
Inaktivera fältet för fullständigt namn.
disableFirstName
boolean
Inaktivera fältet för förnamn.
disableLastName
boolean
Inaktivera fältet för efternamn.
disableEmail
boolean
Inaktivera e-postfältet.
disableCountry
boolean
Inaktivera landfältet.
disableAddressLine
boolean
Inaktivera adressraden.
disableCity
boolean
Inaktivera stadsfältet.
disableState
boolean
Inaktivera delstatsfältet.
disableZipCode
boolean
Inaktivera postnummerfältet.
paymentCurrency
string
Specificera betalningsvalutan (t.ex. USD).
showCurrencySelector
boolean
Visa valutaväljaren.
paymentAmount
integer
Specificera betalningsbeloppet (t.ex. 1000 för $10.00).
showDiscounts
boolean
Visa rabattfält.
metadata_*
string
Alla sökparametrar som börjar med metadata_ skickas som metadata.
Om productId saknas returnerar handlern ett 400-svar. Ogiltiga sökparametrar resulterar också i ett 400-svar.

Svarformat

Statisk kassa returnerar ett JSON-svar med kassa-URL:en:

Svarformat

Dynamisk kassa returnerar ett JSON-svar med kassa-URL:en:
Checkout-sessioner erbjuder en säkrare, hostad kassa som hanterar hela betalflödet för både engångsköp och prenumerationer med full kontroll över anpassningen.Se Kassasessioners integrationsguide för mer information och en komplett lista över stödda fält.

Svarformat

Kassasessioner returnerar ett JSON-svar med kassa-URL:en:

Kundportal-rutt-hanterare

Kundportal-rutt-hanteraren gör det möjligt för dig att sömlöst integrera Dodo Payments kundportal i din Remix-applikation.

Sökparametrar

customer_id
string
obligatorisk
Kundens ID för portalsessionen (t.ex. ?customer_id=cus_123).
send_email
boolean
Om satt till true skickas ett e-postmeddelande till kunden med portalens länk.
Returnerar 400 om customer_id saknas.

Webhook-rutt-hanterare

  • Metod: Endast POST-begärningar stöds. Andra metoder returnerar 405.
  • Signaturverifiering: Verifierar webhook-signaturen med webhookKey. Returnerar 401 om verifieringen misslyckas.
  • Payload-validering: Valideras med Zod. Returnerar 400 för ogiltiga payloads.
  • Felhantering:
    • 401: Ogiltig signatur
    • 400: Ogiltig payload
    • 500: Internt fel under verifiering
  • Händelse-routing: Anropar den lämpliga händelsehanteraren baserat på payload-typen.

Stödda webhook-händelsehandlare


Prompt för LLM

Senast ändrad 22 maj 2026