Guide d'intégration

Ce qu'il faut savoir pour connecter votre application à DarePay : prérequis, authentification et cycle de vie d'un paiement.

Présentation de DarePay

DarePay est une API de paiement qui permet à une application cliente d'initier des paiements, de consulter leur statut et de recevoir automatiquement le résultat final d'une transaction.

L'intégration est conçue pour rester simple : votre application communique uniquement avec l'API DarePay. La gestion technique des opérateurs de paiement, des comptes de règlement et des règles de redistribution est prise en charge directement par DarePay.

Avant l'intégration

Réunissez ces quatre éléments avant d'écrire la première ligne de code.

L'URL de base de l'API https://darepay.devetu.org/api
Votre clé API DarePay Attribuée à votre application par DarePay.
Votre URL de callback A founir à l'admin DarePay et qui doit être accessible en HTTPS.
Une référence métier unique Un identifiant différent pour chaque paiement.

La clé API reste côté serveurElle ne doit jamais être intégrée directement dans une application frontend publique (site web, application mobile, JavaScript exécuté dans le navigateur).

Authentification

Les routes protégées de DarePay s'authentifient avec l'en-tête HTTP X-API-Key. Envoyez ces trois en-têtes avec chaque requête :

En-têtes HTTP
X-API-Key: VOTRE_CLE_API
Content-Type: application/json
Accept: application/json
En-têteObligatoireDescription
X-API-KeyOuiClé d'authentification attribuée à votre application.
Content-TypeOui pour les requêtes JSONUtiliser application/json.
AcceptRecommandéUtiliser application/json.

Une clé absente ou invalide renvoie HTTP 401. Vérifiez alors l'en-tête X-API-Key. Voir tous les codes d'erreur.

Cycle d'un paiement

Un paiement passe par sept étapes, de la création de votre référence à la réception du callback. Cliquez sur une étape pour la situer dans le schéma.

Votre application Serveur · clé API
POST /api/payments
réponse · statut initial
callback · SUCCESS / FAILED
API DarePay Validation et suivi
initialisation
 
résultat final
Opérateurs gérés par DarePay

Statuts de paiement

Un paiement démarre en PENDING et se termine dans l'un des deux états finaux. Un état final ne change plus : DarePay empêche le remplacement de SUCCESS par FAILED, et inversement.

PENDING

Le paiement est encore en cours de traitement.

SUCCESSfinal

Le paiement a été effectué avec succès.

FAILEDfinal

Le paiement a échoué. Le motif est indiqué dans failure_reason lorsqu'il est disponible.

PENDING n'est pas un paiement réussiNe livrez rien et ne validez aucune commande tant que vous n'avez pas reçu SUCCESS par callback ou via la route de statut.

Premier appel

Voici la requête d'initiation complète. Choisissez votre langage : le choix est mémorisé sur toutes les pages.

Réponse attendue

Réponse 200
{
  "success": true,
  "message": "Paiement initié avec succès.",
  "payment": {
    "id": 15,
    "reference": "CMD2026001",
    "transaction_id": "PAY1009261274771",
    "status": "PENDING",
    "amount": "10000.00",
    "currency": "XAF"
  }
}

Conservez le transaction_id retourné, puis attendez le callback. Pour modifier les paramètres et observer les réponses, utilisez le simulateur de la référence API.