Introduction
WIFI-MONEY PAY fournit une API permettant aux applications
autorisées de créer et suivre des transactions de paiement.
API REST
Des endpoints HTTP simples pour intégrer vos applications.
Réponses JSON
Les requêtes et réponses utilisent un format JSON standard.
Environnements TEST & LIVE
Utilisez l'environnement TEST pendant le développement.
L'environnement LIVE sera utilisé pour les transactions réelles.
N'utilisez jamais une clé API LIVE dans du JavaScript public,
une page HTML ou une application cliente non sécurisée.
Authentification
Les appels API nécessitent une clé API fournie à l'application
autorisée. Conservez toujours cette clé côté serveur.
Authorization: Bearer wm_test_VOTRE_CLE_API
Les clés TEST commencent par wm_test_ et les clés
LIVE par wm_live_. La clé détermine automatiquement
l'environnement utilisé par l'API.
GET /v1/me
Créer un paiement
Créez une transaction en indiquant la box, le forfait
et les informations nécessaires au paiement.
POST /v1/payments
{
"box_code": "BOX-0001",
"plan_id": "VOTRE_PLAN_ID",
"customer_phone": "XXXXXXXX"
}
Le montant n'est pas envoyé par l'application cliente.
WIFI-MONEY PAY récupère automatiquement le prix du forfait
correspondant au plan_id. La devise est définie
côté serveur en XOF.
Réponse :
{
"status": "ok",
"payment": {
"payment_reference": "WMP_...",
"amount": 100,
"currency": "XOF",
"status": "PENDING"
}
}
Utilisez une clé d'idempotence pour éviter la création accidentelle
de plusieurs transactions identiques. En cas de répétition reconnue,
l'API peut retourner idempotent_replay: true.
Consulter le statut
Utilisez la référence WIFI-MONEY PAY retournée lors de
la création de la transaction.
GET /v1/payments/{payment_reference}
Réponse :
{
"status": "ok",
"payment": {
"payment_reference": "WMP_...",
"amount": 100,
"currency": "XOF",
"status": "PENDING"
}
}
Une application ne peut consulter que les paiements qui lui
appartiennent. Une référence inconnue retourne
404 PAYMENT_NOT_FOUND.
Simuler un paiement en TEST
L'environnement TEST permet de simuler la confirmation d'un paiement
sans effectuer de transaction financière réelle.
POST /v1/test/payments/{payment_reference}/confirm
Réponse :
{
"status": "ok",
"environment": "TEST",
"payment_reference": "WMP_...",
"already_paid": false,
"result": {
"..."
}
}
Cet endpoint fonctionne uniquement avec une clé
wm_test_.... Une tentative depuis l'environnement
LIVE retourne 403 TEST_ENVIRONMENT_REQUIRED.
Webhooks
Les webhooks permettront à votre serveur de recevoir
automatiquement les changements de statut d'une transaction.
POST https://votre-serveur.example/webhook
{
"event": "payment.updated",
"payment_reference": "WMP_...",
"status": "PAID"
}
Sécurité
Une transaction ne doit jamais être considérée comme payée
uniquement à partir d'une redirection du navigateur.
Vérifiez toujours son état auprès du serveur WIFI-MONEY PAY.
Clés privées
Ne publiez jamais vos clés API dans votre code frontend.
Vérification serveur
Autorisez un service uniquement après confirmation
serveur du paiement.