Pular para o conteúdo principal
O SDK PHP fornece uma maneira robusta e flexível de integrar os pagamentos Dodo em suas aplicações PHP. Construído seguindo os padrões modernos de PHP com autoloading PSR-4, oferece ampla cobertura de testes e documentação detalhada.

Instalação

Instale o SDK usando o Composer:
O SDK requer PHP 8.1.0 ou superior e o Composer para gerenciamento de dependências.

Início Rápido

Inicialize o cliente e crie uma sessão de checkout:
Armazene suas chaves de API com segurança usando variáveis de ambiente. Nunca as exponha no seu código-fonte ou as comite no controle de versão.

Recursos Principais

PSR-4 Compliant

Segue as Recomendações de Padrões PHP para desenvolvimento PHP moderno

Modern PHP

Criado para PHP 8.1+ com declarações de tipo e tipos estritos

Extensive Testing

Cobertura abrangente de testes para confiabilidade e estabilidade

Exception Handling

Tipos claros de exceções para diferentes cenários de erro

Objetos de Valor

O SDK usa parâmetros nomeados para especificar argumentos opcionais. Você pode inicializar objetos de valor usando o construtor estático with:
Construtores também estão disponíveis como um padrão alternativo:

Configuração

Configuração de Retentativas

Certos erros são automaticamente retentados 2 vezes por padrão com um pequeno atraso exponencial. Os seguintes erros acionam retentativas automáticas:
  • Erros de conexão (problemas de conectividade de rede)
  • 408 Timeout da Requisição
  • 409 Conflito
  • 429 Limite de Taxa
  • 500+ Erros internos
  • Timeouts
Configure o comportamento de retentativa globalmente ou por solicitação:

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 country de dois dígitos ISO. Passe AttachExistingCustomer::with(customerID: '...') para anexar um cliente existente, ou NewCustomer::with(email: '...', name: '...') para criar um. productPrice está na menor denominação de moeda.

Paginação

Trabalhe com respostas de lista paginadas:

Tratamento de Erros

Quando a biblioteca não consegue se conectar à API ou recebe um código de status de não-sucesso (4xx ou 5xx), uma subclasse de APIException é lançada:

Tipos de Erro

Sempre envolva chamadas de API em blocos try-catch para tratar erros potenciais de forma elegante e fornecer feedback significativo aos usuários.

Uso Avançado

Endpoints Não Documentados

Faça solicitações para endpoints não documentados:

Parâmetros Não Documentados

Envie parâmetros não documentados para qualquer endpoint ou leia propriedades de resposta não documentadas:
Os parâmetros extra* com o mesmo nome substituem os parâmetros documentados.

Integração de Framework

Laravel

Crie um serviço para aplicações Laravel:
Adicione a configuração em config/services.php:

Symfony

Crie um serviço no Symfony:
Registre em config/services.yaml:

Recursos

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

Report Issues

Relate bugs ou solicite funcionalidades

Suporte

Precisa de ajuda com o PHP SDK?

Contribuindo

Aceitamos contribuições! Confira as diretrizes de contribuição para começar.
Última modificação em 28 de maio de 2026