Skip to main content

Checkout Handler

Integrera Dodo Payments kassa i din Fastify-app.

Customer Portal

Låt kunder hantera abonnemang och uppgifter.

Webhooks

Ta emot och bearbeta webhookhändelser från Dodo Payments.

Installation

1

Install the package

Kör följande kommando i projektroten:
2

Set up environment variables

Skapa en .env-fil i projektroten:
Checka aldrig in din .env-fil eller hemligheter i versionshanteringen.

Exempel på Routhanterare

Alla exempel förutsätter att du använder Fastify App Router.
Använd denna hanterare för att integrera Dodo Payments kassa i din Fastify-app. Stöder statiska (GET), dynamiska (POST) och sessionsbaserade (POST) betalflöden.

Kassa Routhanterare

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

Frågeparametrar

string
obligatorisk
Produktidentifierare (t.ex. ?productId=pdt_nZuwz45WAs64n3l07zpQR).
integer
Antal av produkten.
string
Kundens fullständiga namn.
string
Kundens förnamn.
string
Kundens efternamn.
string
Kundens e-postadress.
string
Kundens land.
string
Kundens adressrad.
string
Kundens stad.
string
Kundens delstat/provins.
string
Kundens postnummer.
boolean
Inaktivera fältet för fullständigt namn.
boolean
Inaktivera fältet för förnamn.
boolean
Inaktivera fältet för efternamn.
boolean
Inaktivera e-postfältet.
boolean
Inaktivera landfältet.
boolean
Inaktivera adressradsfältet.
boolean
Inaktivera stadfältet.
boolean
Inaktivera fältet för delstat.
boolean
Inaktivera fältet för postnummer.
string
Ange betalningsvalutan (t.ex. USD).
boolean
Visa valutaväljaren.
integer
Ange betalningsbeloppet (t.ex. 1000 för $10.00).
boolean
Visa rabattfält.
string
Alla frågeparametrar som börjar med metadata_ kommer att skickas som metadata.
Om productId saknas returnerar hanteraren ett 400-svar. Ogiltiga frågeparametrar ger också ett 400-svar.

Svarsformat

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

Svarsformat

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.

Svarsformat

Kassa sessioner returnerar ett JSON-svar med kassa-URL:en:

Kundportal Routhanterare

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

Frågeparametrar

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

Webhook Routhanterare

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

Stödda webhookhändelsehanterare


Prompt för LLM

Senast ändrad 22 maj 2026