Skip to main content
Go SDK tillhandahåller ett rent och idiomatiskt Go-gränssnitt för att integrera Dodo Payments i dina applikationer. Det erbjuder kontextstöd, starkt typade svar, middleware-funktioner och är säkert för samtidig användning.

Installation

Installera SDK:n med Go-moduler:
Eller för att fästa vid en specifik version:
SDK:n kräver Go 1.22 eller senare versioner och utnyttjar moderna Go-funktioner för optimal prestanda.

Snabbstart

Initiera klienten och skapa din första checkout-session:
Spara alltid dina API-nycklar säkert med hjälp av miljövariabler. Låt dem aldrig vara hårdkodade i källkoden.

Kärnfunktioner

Context Support

Fullt stöd för context.Context för avbokning och timeouts

Strong Typing

Starkt typade förfrågningar och svar för kompileringstidssäkerhet

Middleware

Utbyggbart middleware-stöd för loggning, mätvärden och egen logik

Goroutine Safe

Trådsäker klient utformad för samtidiga operationer

Konfiguration

Kontext och tidsgränser

Utnyttja Gos kontext för tidsgränser och avbrytande:

Återförsökskonfiguration

Konfigurera automatisk återförsöksbeteende:

Vanliga operationer

Skapa en checkout-session

Generera en checkout-session:

Hantera kunder

Skapa och hämta kundinformation:

Hantera prenumerationer

Skapa och hantera återkommande prenumerationer:
POST /subscriptions (the SDK:s subscriptions.create-metod) är föråldrad. Den fungerar fortfarande för befintliga integrationer, men nya integrationer bör skapa prenumerationer via en Checkout Session.
Billing kräver minst den tvåbokstavs ISO Country-koden. Customer är en CustomerRequestUnionParam — skicka AttachExistingCustomerParam{CustomerID: ...} för en befintlig kund eller NewCustomerParam{Email: ..., Name: ...} för en ny kund. ProductPrice anges i den lägsta valutaenheten.

Användningsbaserad fakturering

Registrera användningshändelser

Spåra anpassade händelser:

Lista användningshändelser

Felhantering

När API:et returnerar en statuskod som inte anger framgång returnerar SDK:t ett fel av typen *dodopayments.Error. Det exponerar StatusCode, det underliggande *http.Request och *http.Response samt JSON-innehållet i felmeddelandet. Använd mönstret errors.As för att inspektera det och använd StatusCode för att hantera specifika fall:

Middleware

Lägg till anpassad middleware för loggning eller mätvärden:

Samtidighet

Klienten är säker att använda samtidigt:

Resurser

GitHub Repository

Visa källkoden och bidra

API Reference

Komplett API-dokumentation

Discord Community

Få hjälp och anslut till utvecklare

Report Issues

Rapportera fel eller föreslå funktioner

Support

Behöver du hjälp med Go SDK?

Bidra

Vi välkomnar bidrag! Läs riktlinjerna för bidrag för att komma igång.
Senast ändrad 17 augusti 2026