Collection Postman
La collection Postman officielle Sangho regroupe tous les endpoints de l’API, préconfigurés avec des exemples de requêtes, des variables d’environnement et des tests automatisés. Elle est mise à jour à chaque nouvelle version de l’API.
1. Importer la collection
Deux méthodes sont disponibles — choisissez celle qui correspond à votre workflow.
Via le bouton Run in Postman
- Cliquez sur le bouton Run in Postman affiché dans cette page
- Postman s’ouvre et propose de fork la collection dans votre workspace
- Choisissez votre workspace et cliquez sur Fork Collection
- La collection et les deux environnements (Sandbox / Production) sont importés automatiquement
Via le fichier JSON
- Connectez-vous à votre Dashboard → Développeurs → API → Collection Postman
- Cliquez sur Télécharger la collection — un fichier
sangho-api-vX.X.jsonest généré - Dans Postman : File → Import → Upload Files → sélectionnez le fichier
- Importez également le fichier d’environnement
sangho-env-sandbox.jsonousangho-env-production.json
2. Configurer les variables d’environnement
La collection utilise des variables Postman pour éviter de saisir les clés et IDs manuellement. Renseignez-les une seule fois dans l’environnement actif.
| Variable | Valeur | Obligatoire |
|---|---|---|
SANGHO_SECRET_KEY | sk_test_xxxx (Sandbox) ou sk_live_xxxx (Production) | Oui |
BASE_URL | https://api.sangho.com/v1 | Oui |
CUSTOMER_ID | ID d'un Customer existant dans votre environnement | Non |
PAYMENT_INTENT_ID | ID d'un PaymentIntent créé lors de vos tests | Non |
PRODUCT_ID | ID d'un Product dans votre catalogue | Non |
WEBHOOK_SECRET | Secret de signature d'un Webhook configuré | Non |
IDEMPOTENCY_KEY | UUID v4 généré — ex. {{$guid}} (variable Postman dynamique) | Non |
Utilisez la variable dynamique {{$guid}} dans Postman pour générer automatiquement une nouvelle Idempotency-Key à chaque requête.
3. Sélectionner un environnement
- Sangho Sandbox — préconfiguré avec
sk_test_et la base URL sandbox. Aucune transaction réelle. - Sangho Production — à renseigner avec vos clés
sk_live_. Transactions réelles déclenchées.
Ne renseignez jamais une clé sk_live_ dans un environnement partagé ou exporté. Utilisez toujours sk_test_ pour vos tests.
4. Endpoints inclus
| Méthode | Endpoint | Description |
|---|---|---|
| GET | /apps/ | Lister les Apps du compte |
| POST | /payment-intents/ | Créer un PaymentIntent |
| GET | /payment-intents/{id}/ | Récupérer un PaymentIntent |
| POST | /payment-intents/{id}/confirm/ | Confirmer un PaymentIntent |
| POST | /payment-intents/{id}/cancel/ | Annuler un PaymentIntent |
| POST | /payment-intents/{id}/capture/ | Capturer un PaymentIntent (paiement en deux temps) |
| POST | /checkout-sessions/ | Créer une CheckoutSession |
| GET | /checkout-sessions/{id}/ | Récupérer une CheckoutSession |
| GET | /transactions/ | Lister les transactions |
| GET | /transactions/{id}/ | Récupérer une transaction |
| POST | /refunds/ | Créer un remboursement |
| GET | /refunds/{id}/ | Récupérer un remboursement |
| POST | /payment-links/ | Créer un lien de paiement |
| GET | /payment-links/ | Lister les liens de paiement |
| PATCH | /payment-links/{id}/ | Modifier un lien de paiement |
| DELETE | /payment-links/{id}/ | Désactiver un lien de paiement |
| POST | /customers/ | Créer un Customer |
| GET | /customers/ | Lister les Customers |
| GET | /customers/{id}/ | Récupérer un Customer |
| PATCH | /customers/{id}/ | Modifier un Customer |
| POST | /addresses/ | Créer une adresse |
| GET | /payment-methods/ | Lister les méthodes de paiement disponibles |
| POST | /products/ | Créer un produit |
| GET | /products/ | Lister les produits |
| PATCH | /products/{id}/ | Modifier un produit |
| POST | /invoices/ | Créer une facture |
| GET | /invoices/{id}/ | Récupérer une facture |
| POST | /invoices/{id}/send/ | Envoyer une facture par email |
| GET | /receipts/{id}/ | Récupérer un reçu |
| GET | /subscription-plans/ | Lister les plans d'abonnement |
| POST | /subscriptions/ | Créer un abonnement |
| POST | /subscriptions/{id}/cancel/ | Annuler un abonnement |
| POST | /webhooks/ | Créer un webhook |
| GET | /webhooks/ | Lister les webhooks |
| DELETE | /webhooks/{id}/ | Supprimer un webhook |
| POST | /security-profiles/ | Créer un SecurityProfile (whitelist IP, CORS) |
| GET | /api-calls/ | Lister les logs d'appels API |
| POST | /sandbox/reset/ | Réinitialiser les données sandbox |
| GET | /sandbox/cards/ | Récupérer les numéros de carte de test |
| GET | /sandbox/mobile-money/ | Récupérer les numéros Mobile Money de test |
Synchroniser les mises à jour
Si vous avez importé la collection via Run in Postman, les mises à jour sont disponibles directement depuis Postman. Pour une collection importée via JSON, re-téléchargez le fichier depuis le Dashboard à chaque nouvelle version de l’API.
Le numéro de version courant de la collection est affiché dans Dashboard → Développeurs → API → Collection Postman. La collection respecte le versioning de l’API — v1 est rétrocompatible.
Headers préconfigurés
Exemple — Créer un PaymentIntent
Exemple — Erreur clé invalide
Script de test Postman intégré
Chaque requête inclut un script Tests qui vérifie automatiquement le statut HTTP et stocke les IDs dans les variables d’environnement pour les chaîner.
Workflow de test recommandé
- Sélectionnez l’environnement Sangho Sandbox
- Exécutez POST /customers/ — l’ID est stocké automatiquement dans
CUSTOMER_ID - Exécutez POST /payment-intents/ — l’ID est stocké dans
PAYMENT_INTENT_ID - Exécutez POST /payment-intents/{{PAYMENT_INTENT_ID}} /confirm/ avec un numéro de test Sandbox
- Vérifiez le statut avec GET /payment-intents/{{PAYMENT_INTENT_ID}} /
Utilisez Collection Runner dans Postman pour exécuter l’ensemble du workflow de test en une seule fois et valider votre intégration end-to-end.