Skip to main content
Le SDK PHP offre un moyen robuste et flexible d’intégrer Dodo Payments dans vos applications PHP. Construit selon les normes PHP modernes avec autoloading PSR-4, il offre une couverture de test étendue et une documentation détaillée.

Installation

Installez le SDK avec Composer :
Le SDK nécessite PHP 8.1.0 ou une version supérieure et Composer pour la gestion des dépendances.

Démarrage rapide

Initialisez le client et créez une session de paiement :
Stockez vos clés API de manière sécurisée en utilisant des variables d’environnement. Ne les exposez jamais dans votre base de code ni ne les validez dans le contrôle de version.

Fonctionnalités principales

PSR-4 Compliant

Suit les recommandations PHP Standards pour le développement PHP moderne

Modern PHP

Conçu pour PHP 8.1+ avec déclarations de type et types stricts

Extensive Testing

Couverture de tests complète pour garantir fiabilité et stabilité

Exception Handling

Types d’exception clairs pour les différents scénarios d’erreur

Objets valeur

Le SDK utilise des paramètres nommés pour spécifier les arguments optionnels. Vous pouvez initialiser les objets valeur en utilisant le constructeur statique with :
Des builders sont également disponibles comme motif alternatif :

Configuration

Configuration des nouvelles tentatives

Certaines erreurs sont automatiquement relancées 2 fois par défaut avec un court délai exponentiel. Les erreurs suivantes déclenchent des relances automatiques :
  • Erreurs de connexion (problèmes de connectivité réseau)
  • 408 Request Timeout
  • 409 Conflict
  • 429 Rate Limit
  • Erreurs internes 500+
  • Délais d’attente dépassés
Configurez le comportement de relance globalement ou par requête :

Opérations courantes

Créer une session de paiement

Générez une session de paiement :

Gérer les clients

Créez et récupérez les informations clients :

Gérer les abonnements

Créez et gérez des abonnements récurrents :
POST /subscriptions (la méthode subscriptions.create du SDK) est obsolète. Elle fonctionne toujours pour les intégrations existantes, mais les nouvelles intégrations doivent créer des abonnements via une Checkout Session.
billing nécessite au minimum le code ISO country à deux lettres. Transmettez AttachExistingCustomer::with(customerID: '...') pour associer un client existant, ou NewCustomer::with(email: '...', name: '...') pour en créer un. productPrice est exprimé dans la plus petite unité monétaire.

Pagination

Gérez les réponses de listes paginées :

Gestion des erreurs

Lorsque la bibliothèque ne peut pas se connecter à l’API ou reçoit un status code non valide (4xx ou 5xx), une sous-classe de APIException est levée :

Types d’erreurs

Encapsulez toujours les appels API dans des blocs try-catch afin de gérer les erreurs potentielles avec élégance et de fournir des informations utiles aux utilisateurs.

Utilisation avancée

Endpoints non documentés

Effectuez des requêtes vers des endpoints non documentés :

Paramètres non documentés

Envoyez des paramètres non documentés à n’importe quel endpoint ou lisez les propriétés de réponse non documentées :
Les paramètres extra* portant le même nom remplacent les paramètres documentés.

Intégration aux frameworks

Laravel

Créez un service pour les applications Laravel :
Ajoutez la configuration dans config/services.php :

Symfony

Créez un service dans Symfony :
Enregistrez-le dans config/services.yaml :

Ressources

GitHub Repository

Consultez le code source et contribuez

API Reference

Documentation complète de l’API

Discord Community

Obtenez de l’aide et échangez avec les développeurs

Report Issues

Signalez des bugs ou demandez des fonctionnalités

Assistance

Besoin d’aide avec le SDK PHP ?

Contribuer

Les contributions sont les bienvenues ! Consultez les directives de contribution pour commencer.
Dernière modification le 17 août 2026