Skip to main content
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 para 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:
POST /subscriptions (the SDK’s subscriptions.create method) is deprecated. It still works for existing integrations, but new integrations should create subscriptions through a Checkout Session.
Billing requires at minimum the two-letter ISO Country code. Customer is a CustomerRequestUnionParam — pass AttachExistingCustomerParam{CustomerID: ...} for an existing customer or NewCustomerParam{Email: ..., Name: ...} for a new one. ProductPrice is in the lowest currency denomination.

Faturamento baseado no uso

Ingerir eventos de uso

Acompanhe eventos personalizados:

Listar eventos de uso

Tratamento de erros

Quando a API retorna um status code que não indica sucesso, o SDK retorna um erro do tipo *dodopayments.Error. Ele expõe o StatusCode, o *http.Request subjacente e *http.Response, além do JSON do corpo do erro. Use o padrão errors.As para inspecioná-lo e use StatusCode para tratar casos específicos:

Middleware

Adicione um middleware personalizado para logging ou métricas:

Concorrência

O cliente é seguro para uso concorrente:

Recursos

GitHub Repository

Visualize o código-fonte e contribua

API Reference

Documentação completa 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?

Contribuição

Aceitamos contribuições! Consulte as diretrizes de contribuição para começar.
Última modificação em 17 de agosto de 2026