Installation
Ajoutez le SDK à votre projet avec Cargo :Cargo.toml :
Le SDK nécessite Rust 1.75 ou plus récent, exploitant les fonctionnalités modernes async pour des performances optimales.
Démarrage rapide
Le client lit par défaut votre clé API à partir de la variable d’environnementDODO_PAYMENTS_API_KEY. Initialisez le client et créez votre première session de paiement :
Fonctionnalités principales
Async First
Basé sur Tokio et reqwest avec support
async/await tout au longStrong Typing
Requêtes et réponses fortement typées pour une sécurité à la compilation
Auto-Pagination
Diffusez chaque élément à travers les pages ou avancez une page à la fois
Configurable
Configurez des environnements, délais et URLs de base par client
Configuration
Variables d’environnement
Par défaut,Client::from_env() lit votre clé API à partir de la variable d’environnement DODO_PAYMENTS_API_KEY et utilise l’URL de base par défaut sauf si vous la définissez avec DODO_PAYMENTS_BASE_URL :
Client::new retourne un Result, alors déverrouillez-le avec ? dans une fonction qui retourne dodopayments::Result :
Environnements
L’URL de base par défaut est
https://live.dodopayments.com. Sélectionnez un autre environnement avec l’énumération Environment au lieu de coder les URLs en dur :
DODO_PAYMENTS_API_KEY via from_env() tout en visant un environnement non par défaut, remplacez-le dans la configuration :
Délais
Le délai par défaut des requêtes est de 30 secondes. Remplacez-le par client :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 des clients :Gérer les abonnements
Créez et gérez des abonnements récurrents :billing nécessite au minimum le code ISO country à deux lettres. customer est une énumération CustomerRequest — transmettez AttachExisting pour un client existant ou New pour un nouveau client. Les champs de montant tels que product_price sont exprimés dans la plus petite unité monétaire (par exemple, 2500 = 25,00 $ USD).Facturation à l’utilisation
Ingérer des événements d’utilisation
Suivez les événements personnalisés :Lister les événements d’utilisation
Pagination
Les endpoints de liste renvoient une page typée dont le champitems contient la page actuelle de résultats. Parcourez tous les éléments de toutes les pages avec into_stream :
get_next_page :
Gestion des erreurs
Chaque méthode renvoie undodopayments::Result<T>. Les échecs sont représentés par l’énumération dodopayments::Error. Faites une correspondance sur cette énumération pour gérer les erreurs d’API distinctement des erreurs de transport :
Endpoints non documentés
Pour appeler un endpoint qui n’est pas encore exposé en tant que méthode typée, utilisez le builder bas niveaurequest, qui applique l’authentification et l’URL de base :
Ressources
GitHub Repository
Afficher le code source et contribuer
Crates.io
Afficher le crate publié et les versions
API Reference
Documentation complète de l’API
Discord Community
Obtenir de l’aide et échanger avec les développeurs
Assistance
Besoin d’aide avec le SDK Rust ?- Discord : Rejoignez notre serveur communautaire pour bénéficier d’une assistance en temps réel
- E-mail : Contactez-nous à l’adresse support@dodopayments.com
- GitHub : Ouvrez une issue sur le dépôt