Pular para o conteúdo principal
O SDK C# fornece acesso conveniente à API REST do Dodo Payments a partir de aplicativos escritos em C#. Ele possui uma API baseada em Tarefas assíncronas com forte tipagem, tentativas automáticas e tratamento de erros abrangente.

Instalação

Instale o pacote do NuGet:
O SDK requer .NET 8.0 ou posterior. Funciona com ASP.NET Core, aplicativos de console e outros tipos de projetos .NET.

Início Rápido

Inicialize o cliente e crie uma sessão de checkout:
Sempre armazene suas chaves da API de forma segura usando variáveis de ambiente, segredos de usuário ou Azure Key Vault. Nunca os codifique diretamente no seu código-fonte ou os envie para o controle de versão.

Recursos Principais

Async/Await

API totalmente assíncrona baseada em Task para operações não bloqueantes

Strong Typing

Segurança abrangente de tipo com tipos de referência anuláveis

Smart Retries

Tentativas automáticas com recuo exponencial para erros transitórios

Error Handling

Hierarquia de exceções integrada para gerenciamento preciso de erros

Configuração

Variáveis de Ambiente

.env

Configuração Manual

Ambientes

Alterne entre modo ao vivo e teste:

Retentativas

O SDK tenta novamente automaticamente 2 vezes por padrão com recuo exponencial. Ele tenta novamente em erros de conexão e códigos de status 408, 409, 429 e 5xx.

Timeouts

As requisições expiram após 1 minuto por padrão.

Substituições por Solicitação

Modifique temporariamente a configuração para uma única solicitação usando WithOptions:

Operações Comuns

Criar uma Sessão de Checkout

Gerenciar Clientes

Manipular Assinaturas

Billing requer, no mínimo, o código Country ISO de duas letras. Use AttachExistingCustomer para associar um cliente existente, ou NewCustomer para criar um. ProductPrice está na menor denominação de moeda.

Tratamento de Erros

O SDK lança exceções específicas com base no código de status HTTP. Todos os erros 4xx herdam de DodoPayments4xxException. Outros tipos de exceções:
  • DodoPaymentsIOException: erros de rede I/O
  • DodoPaymentsInvalidDataException: Falha ao interpretar dados analisados
  • DodoPaymentsException: Classe base para todas as exceções

Paginação

Paginação Automática

Itere por todos os resultados em todas as páginas usando o método Paginate, que retorna um IAsyncEnumerable:

Paginação Manual

Integração com ASP.NET Core

Registre o cliente no seu contêiner de DI:
Program.cs
appsettings.json
Para desenvolvimento, use segredos de usuário em vez de armazenar chaves no appsettings.json:

Recursos

NuGet Package

Veja o pacote na NuGet Gallery

GitHub Repository

Veja o código fonte e contribua

API Reference

Documentação completa da API

Discord Community

Obtenha ajuda e conecte-se com desenvolvedores

Suporte

Precisa de ajuda com o SDK C#?
Última modificação em 28 de maio de 2026