Pular para o conteúdo principal
O SDK Go fornece uma interface limpa e idiomática em Go para integrar os pagamentos Dodo em suas aplicações. Ele oferece suporte a contexto, respostas fortemente tipadas, capacidades de middleware e é seguro para uso concorrente.

Instalação

Instale o SDK usando módulos Go:
Ou para fixar em uma versão específica:
O SDK requer Go 1.22 ou versões posteriores, aproveitando os recursos modernos do Go para desempenho ideal.

Início Rápido

Inicialize o cliente e crie sua primeira sessão de checkout:
Sempre armazene suas chaves de API de forma segura usando variáveis de ambiente. Nunca as codifique diretamente no seu código-fonte.

Recursos Principais

Context Support

Suporte completo a context.Context para cancelamento e timeouts

Strong Typing

Solicitações e respostas fortemente tipadas para segurança em tempo de compilação

Middleware

Suporte extensível a middleware para registros, métricas e lógica personalizada

Goroutine Safe

Cliente com segurança de thread projetado para operações concorrentes

Configuração

Contexto e Timeouts

Aproveite o contexto do Go para timeouts e cancelamento:

Configuração de Retentativas

Configure o comportamento de retentativa automática:

Operações Comuns

Criar uma Sessão de Checkout

Gere uma sessão de checkout:

Gerenciar Clientes

Crie e recupere informações de clientes:

Gerenciar Assinaturas

Crie e gerencie assinaturas recorrentes:
Billing requer no mínimo o código ISO Country de duas letras. Customer é um CustomerRequestUnionParam — passe AttachExistingCustomerParam{CustomerID: ...} para um cliente existente ou NewCustomerParam{Email: ..., Name: ...} para um novo. ProductPrice está na menor denominação de moeda.

Faturamento Baseado em Uso

Ingestão de Eventos de Uso

Acompanhe eventos personalizados:

Listar Eventos de Uso

Tratamento de Erros

Quando a API retorna um código de status não bem-sucedido, o SDK retorna um erro do tipo *dodopayments.Error. Ele expõe o StatusCode, o subjacente *http.Request e *http.Response, e o JSON do corpo de erro. Use o padrão errors.As para inspecioná-lo e ramificar em StatusCode para lidar com casos específicos:

Middleware

Adicione middleware personalizado para logging ou métricas:

Concorrência

O cliente é seguro para uso concorrente:

Recursos

GitHub Repository

Veja o código fonte e contribua

API Reference

Completa documentação da API

Discord Community

Obtenha ajuda e conecte-se com desenvolvedores

Report Issues

Relate bugs ou solicite recursos

Suporte

Precisa de ajuda com o Go SDK?

Contribuindo

Agradecemos contribuições! Confira as diretrizes de contribuição para começar.
Última modificação em 18 de junho de 2026