Documentation API
Bienvenue sur la documentation de l'API Paayit. Notre API vous permet d'intégrer facilement les paiements Mobile Money (MTN, Orange) dans vos applications. Accédez à des encaissements instantanés, des paiements automatisés et un suivi des transactions en temps réel grâce à notre API REST conviviale pour les développeurs.
Authentification
Authentifiez vos requêtes API en incluant votre Clé Publique (Public Key) dans l'en-tête X-API-Key de chaque requête. L'absence d'une clé valide entraînera une erreur 401 Unauthorized.
Exemple d'en-tête
X-API-Key: pk_live_12345678...Erreurs
Paayit utilise les codes de réponse HTTP standard pour indiquer le succès ou l'échec de vos requêtes API.
Requête réussie
Paramètres invalides ou champs manquants
Clé API invalide ou manquante
Adresse IP non autorisée
La ressource n'existe pas
Un problème est survenu de notre côté
Collecter de l'argent
Initier une demande de collecte Mobile Money (USSD push) vers un client.
/api/v1/depositsInitier une collecte
Envoyer une demande de paiement vers le portefeuille Mobile Money d'un client.
Parameters
amountnumberrequiredMontant en XAF (Min: 100, Max: 500,000)
Example: 5000phone_numberstringrequiredNuméro de téléphone du client (format international)
Example: +237670000000servicestringrequiredOpérateur Mobile Money (MTN ou ORANGE)
Example: MTNreferencestringVotre référence unique pour cette transaction
Example: COMMANDE-123Request Body
Le montant numérique, le numéro de téléphone et l'opérateur sont requis.
{
"amount": 5000,
"phone_number": "+237670000000",
"service": "MTN",
"reference": "COMMANDE-123"
}Response Example
{
"id": "txn_123456789",
"type": "deposit",
"mode": "live",
"status": "pending",
"amount": 5000,
"fees": 100,
"net_amount": 4900,
"phone_number": "+237670000000",
"service": "MTN",
"reference": "COMMANDE-123",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}Example Request
curl -X POST https://api.mydv.us/api/v1/deposits \
-H "Content-Type: application/json" \
-H "X-API-Key: VOTRE_CLE_PUBLIQUE" \
-d '{
"amount": 5000,
"phone_number": "+237670000000",
"service": "MTN",
"reference": "COMMANDE-123"
}'Retirer des fonds
Envoyer de l'argent depuis votre solde Paayit vers un portefeuille Mobile Money.
/api/v1/withdrawalsInitier un retrait
Transférer des fonds vers un bénéficiaire via Mobile Money.
Parameters
amountnumberrequiredMontant en XAF à décaisser
Example: 5000phone_numberstringrequiredNuméro de téléphone du bénéficiaire
Example: +237670000000servicestringrequiredOpérateur Mobile Money (MTN ou ORANGE)
Example: MTNreferencestringVotre référence unique
Example: PAIEMENT-001Request Body
Requis: montant, téléphone du bénéficiaire, opérateur.
{
"amount": 5000,
"phone_number": "+237670000000",
"service": "MTN",
"reference": "PAIEMENT-001"
}Response Example
{
"id": "txn_987654321",
"type": "withdrawal",
"mode": "live",
"status": "pending",
"amount": 5000,
"fees": 100,
"net_amount": 4900,
"phone_number": "+237670000000",
"service": "MTN",
"reference": "PAIEMENT-001",
"created_at": "2024-01-15T12:00:00Z"
}Example Request
curl -X POST https://api.mydv.us/api/v1/withdrawals \
-H "Content-Type: application/json" \
-H "X-API-Key: VOTRE_CLE_PUBLIQUE" \
-d '{
"amount": 5000,
"phone_number": "+237670000000",
"service": "MTN",
"reference": "PAIEMENT-001"
}'Transactions
Récupérer et surveiller l'historique de vos transactions.
/api/v1/transactionsLister les transactions
Obtenir une liste paginée de vos transactions.
Parameters
limitnumberNombre de résultats (Défaut: 20)
Example: 20offsetnumberDécalage pour la pagination
Example: 0statusstringFiltrer par statut (success, pending, failed)
Example: successResponse Example
{
"transactions": [
{
"id": "txn_123456789",
"type": "deposit",
"status": "success",
"amount": 5000,
"service": "MTN",
"created_at": "2024-01-15T10:30:00Z"
}
],
"total": 150,
"limit": 20,
"offset": 0
}Example Request
curl -X GET "https://api.mydv.us/api/v1/transactions?limit=20" \
-H "X-API-Key: VOTRE_CLE_PUBLIQUE"/api/v1/transactions/:idObtenir les détails d'une transaction
Récupérer les détails complets d'une seule transaction par ID.
Parameters
idstringrequiredL'ID de la transaction (ex: txn_...)
Example: txn_123456789Response Example
{
"id": "txn_123456789",
"type": "deposit",
"status": "success",
"amount": 5000,
"fees": 100,
"net_amount": 4900,
"phone_number": "+237670000000",
"service": "MTN",
"reference": "COMMANDE-123",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:05Z"
}Example Request
curl -X GET https://api.mydv.us/api/v1/transactions/txn_123456789 \
-H "X-API-Key: VOTRE_CLE_PUBLIQUE"Webhooks
Recevez des notifications en temps réel pour les événements de transaction (succès, échec).
Vérification des signatures
Paayit signe chaque requête webhook pour vous permettre de vérifier son authenticité. La signature est envoyée dans l'en-tête X-Paayit-Signature.
Structure de l'événement
{
"event": "transaction.updated",
"transaction_id": "txn_123456789",
"type": "deposit",
"status": "success",
"amount": 5000,
"net_amount": 4900,
"phone_number": "+237670000000",
"service": "MTN",
"timestamp": "2024-03-20T10:00:00Z"
}