Hoppa till huvudinnehåll

Checkout Handler

Integrera Dodo Payments-kassan i din Tanstack-app.

Customer Portal

Låt kunder hantera prenumerationer och uppgifter.

Webhooks

Ta emot och bearbeta Dodo Payments webhook-händelser.

Installation

1

Install the package

Kör följande kommando i projektets rotmapp:
2

Set up environment variables

Skapa en .env-fil i projektets rotmapp:
Commit aldrig din .env-fil eller hemligheter till versionshantering.

Exempel på rutt-hanterare

Alla exempel förutsätter att du använder Tanstack App Router.
Använd denna handlare för att integrera Dodo Payments-kassan i din Tanstack-app. Stöder statiska (GET), dynamiska (POST) och sessionbaserade (POST) betalningsflöden.

Kassa-rutt-hanterare

Dodo Payments stöder tre typer av betalningsflöden för att integrera betalningar på din webbplats. Denna adapter stöder alla typer av betalningsflö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.
  • Kassa-sessioner: Skapa säkra, anpassningsbara kassaupplevelser med förkonfigurerade produktvagnar och kunddetaljer.

Stödda frågeparametrar

productId
string
obligatorisk
Produktidentifierare (t.ex. ?productId=pdt_nZuwz45WAs64n3l07zpQR).
quantity
integer
Antal av produkten.
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 fältet för land.
disableAddressLine
boolean
Inaktivera fältet för adressrad.
disableCity
boolean
Inaktivera fältet för stad.
disableState
boolean
Inaktivera fältet för delstat.
disableZipCode
boolean
Inaktivera fältet för postnummer.
paymentCurrency
string
Ange betalningsvalutan (t.ex. USD).
showCurrencySelector
boolean
Visa valutaväljaren.
paymentAmount
integer
Ange betalningsbeloppet (t.ex. 1000 för $10.00).
showDiscounts
boolean
Visa fälten för rabatt.
metadata_*
string
Alla frågeparametrar som börjar med metadata_ kommer att skickas som metadata.
Om productId saknas returnerar handlare ett 400-svar. Ogiltiga frågeparametrar 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 kassaupplevelse som hanterar hela betalningsflödet för både engångsköp och prenumerationer med full kontroll över anpassningen.Se Kassa-sessioner Integrationsguide för mer information och en komplett lista över stödda fält.

Svarformat

Kassa-sessioner 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 Tanstack-applikation.

Frågeparametrar

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

Webhook-rutt-hanterare

  • Metod: Endast POST-förfrågningar 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ändelsehanterare


Prompt för LLM

Senast ändrad 22 maj 2026