Bienvenue dans lâAPI dâenvoi dâargent. Cette API permet aux dĂ©veloppeurs dâintĂ©grer facilement des fonctionnalitĂ©s de transfert de fonds dans leurs applications web ou mobiles. Elle prend en charge lâenvoi dâargent entre utilisateurs, les paiements vers des comptes bancaires ou des portefeuilles mobiles, et fournit un suivi en temps rĂ©el des transactions.
LâAPI est sĂ©curisĂ©e, rapide et conçue pour rĂ©pondre aux besoins des plateformes fintech, des services de paiement et des applications de commerce en ligne. Elle sâintĂšgre facilement Ă votre infrastructure existante grĂące Ă une architecture RESTful, une authentification basĂ©e sur les tokens, et une documentation claire.
Cette fonctionnalitĂ© permet de limiter l'accĂšs Ă lâAPI uniquement Ă certaines adresses IP autorisĂ©es, renforçant ainsi la sĂ©curitĂ©
{
"data": {
"ip": "127.0.0.1"
},
"message": "Access denied. Unauthorized IP address."
}
LâAPI prend en charge lâenvoi automatique de notifications par webhook Ă chaque mise Ă jour critique du statut dâune transaction. Cela permet aux systĂšmes partenaires dâĂȘtre notifiĂ©s en temps rĂ©el, sans avoir Ă interroger en boucle lâAPI (polling).
Un webhook est dĂ©clenchĂ© Ă chaque changement de statut dâune transaction, notamment :
pending â processing
processing â success
processing â failed
success â refunded (le cas Ă©chĂ©ant)
En-tĂȘtes :
Content-Type: application/json
X-Signature: {HMAC-SHA256 du payload signé avec la clé secrÚte}
Payload JSON envoyé :
{
"transaction_id": "TXN-123456",
"status": "success",
"amount": 250.00,
"currency": "USD",
"timestamp": "2025-01-09T01:42:54+00:00"
}
Chaque webhook est signĂ© avec un HMAC SHA256 dans le header X-Signature, gĂ©nĂ©rĂ© Ă lâaide dâune clĂ© secrĂšte partagĂ©e. Le destinataire doit vĂ©rifier cette signature pour garantir lâintĂ©gritĂ© de la notification.
$expectedSignature = hash_hmac('sha256', $payload, $secret);
Pour interagir avec notre API en mode test (sandbox), chaque dĂ©veloppeur doit disposer dâune clĂ© API dĂ©diĂ©e, gĂ©nĂ©rĂ©e via son compte dĂ©veloppeur. Cette clĂ© permet dâeffectuer des appels simulĂ©s sans dĂ©clencher de transactions rĂ©elles.
Dans le menu "Accounts , copier vos identifiants"
La clé vous sera affichée une seule fois : copiez-la et stockez-la en lieu sûr
L'API utilise un token JWT dans l'en-tĂȘte Authorization.
Authorization: Bearer <votre_access_token>
Ce endpoint permet Ă un utilisateur de se connecter en envoyant son email et son mot de passe. En cas de succĂšs, un token dâaccĂšs est renvoyĂ© pour les appels API futurs..
{
"private_key":"wtc_private_sandbox25042557g2tpjdwdkt8swj596r7r987jro",
"secret_key":"wtc_secret_sandbox250425571rp0e31y0eqklo2q0uwkfw5plu"
}
POST /api/login
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJ3dGNfYXBpIiwic3ViIjoxLCJpYXQiOjE3NDYxODg2NTIsImV4cCI6MTc0NjE5MjI1Mn0.SIrzfmIwcuI4JDQkjzUoWBJ0-WMOaUQKwVVA5ydaVLLk8ZWF42F90ROSSpDf0w5uT7qQLuk6phpcu7XQSFRDz9_3Jpr-qM9ErW9tiuO7l3evpzjxSmlLt8E4s3HRAS9GrGmVIqkEGDQEyLtAFZqX-3AZQJCkl05lYBkD-YjbF0hX1HC84Enx6iF5E2Bzzjq9Em4xcs1638FJt5R5p9IKnsZr2Ww7MY4iTqdDjn99lfOZpo86uvgOnZvSrPpAoPSnDceJ3ZQkwRU4ohqSALkUW4PZsPS9k-0BqJE1BJiqGXj3XVnNnemHGCmUso72jBEX03AaD2CoZS13g-qXQGPk5w",
"token_type": "bearer",
"expires_in": 3600
}
permet de rĂ©cupĂ©rer la liste des pays disponibles pour lâenvoi ou la rĂ©ception dâargent via la plateforme.
Il est utile pour alimenter des menus déroulants ou valider les destinations autorisées dans votre application
GET /api/countries
{
"message": "senders get successful",
"status": "success",
"data": [
{
"name": "Cameroun",
"code_iso": "CM",
"currency": "XAF"
},
{
"name": "Congo",
"code_iso": "CG",
"currency": "XAF"
},
{
"name": "Congo RDC",
"code_iso": "CD",
"currency": "XAF"
},
{
"name": "Senegal",
"code_iso": "SN",
"currency": "XOF"
},
... }
permet dâobtenir la liste des villes disponibles pour un pays donnĂ©, identifiĂ© par son code ISO Ă deux lettres.
Il est gĂ©nĂ©ralement utilisĂ© pour filtrer les zones de destination lors de lâenvoi dâargent.
GET /api/cities?codeiso=CM
{
"message": "cities get successful",
"status": "success",
"data": [
{
"name": "Douala",
"country": "Cameroun"
},
{
"name": "Yaoundé",
"country": "Cameroun"
},
{
"name": "Bamenda",
"country": "Cameroun"
},
{
"name": "Bafoussam",
"country": "Cameroun"
},
... }
permet dâobtenir la liste des origines des fonds disponibles pour un type de transfert donnĂ©, identifiĂ© par le type de sender et de beneficiare Ă deux lettres.
GET /api/origin_fonds?type_transaction=B2P
{
"message": "Request successful",
"status": "success",
"data": ["Brother",
"Mother",
"Sister",
"Self",
"Father",
"Spouse",
]
}
permet dâobtenir la liste des motifs disponibles pour un type de transfert donnĂ©, identifiĂ© par le type de sender et de beneficiare Ă deux lettres.
GET /api/motifs?type_transaction=B2P
{
"message": "Request successful",
"status": "success",
"data": ["Brother",
"Mother",
"Sister",
"Self",
"Father",
"Spouse",
]
}
permet dâobtenir la liste des relations entre expediteurs et beneficiares disponibles pour un type de transfert donnĂ©, identifiĂ© par le type de sender et de beneficiare Ă deux lettres.
GET /api/relations?type_transaction=B2P
{
"message": "Request successful",
"status": "success",
"data": ["Brother",
"Mother",
"Sister",
"Self",
"Father",
"Spouse",
]
}
Ce endpoint permet dâobtenir la liste des banques disponibles dans un pays donnĂ©, identifiĂ© par son code ISO.
Il est essentiel pour que lâutilisateur sĂ©lectionne la banque du bĂ©nĂ©ficiaire lors dâun transfert dâargent vers un compte bancaire.
GET /api/banks?codeiso=CM
{
"message": "cities get successful",
"status": "success",
"data": [
{
"name": "BICEC",
"country": "Cameroun"
},
{
"name": "Société Générale Cameroun",
"country": "Cameroun"
},
{
"name": "UBA Cameroun",
"country": "Cameroun"
},
... }
Ce endpoint permet dâobtenir la liste des operateurs MOMO disponibles dans un pays donnĂ©, identifiĂ© par son code ISO.
Il est essentiel pour que lâutilisateur sĂ©lectionne l'operateur du bĂ©nĂ©ficiaire lors dâun transfert dâargent vers un compte MOMO.
GET /api/networks?codeiso=CM
{
"message": "networks get successful",
"status": "success",
"data": [
{
"name": "ORANGE MONEY",
"country": "Cameroun"
},
{
"name": "MTN MOBILE MONEY",
"country": "Cameroun"
}
]
}
Ce endpoint permet de récupérer la liste des expéditeurs enregistrés sur la plateforme.
Il est utilisĂ© pour afficher les informations des clients initiant des transferts dâargent, ou pour effectuer des opĂ©rations liĂ©es Ă la gestion de leurs transactions..
GET /api/senders
{
"message": "senders get successful",
"status": "success",
"data": [
{
"first_name": "kouamo",
"last_name": "Dieudonne",
"email": "info@agensic.com",
"phone": "237675066919",
"code": "25042521022068963666512",
"occupation": "mecanicien",
"civility": "Maried",
"gender": "M",
"document_type": "PP",
"document_expired": "2025-05-10",
"document_number": "5879454555"
},
{
"first_name": "reine edith",
"last_name": "jeanne d arc",
"email": "contact@agensic.com",
"phone": "687958",
"code": "25042816714400768238381",
"occupation": "mecanicien",
"civility": "Single",
"gender": "F",
"document_type": "CNI",
"document_expired": "2025-05-11",
"document_number": "5879454555"
},
{
"first_name": "John most",
"last_name": "Yves",
"email": "johm@gmail.com",
"phone": "675066919",
"code": "25050209346105716102273",
"occupation": "Mecanicien",
"civility": "Single",
"gender": "M",
"document_type": "PP",
"document_expired": "2025-02-18",
"document_number": "8957452144"
},]}
Ce endpoint permet dâenregistrer un nouvel expĂ©diteur sur la plateforme.
Les informations fournies sont utilisées pour authentifier l'utilisateur, l'associer à des transactions, et garantir la conformité réglementaire (KYC).
{
"account_type": "B",
"business_name": "TechCorp SAS",
"business_type": "SARL",
"business_register_date": "2015-06-01",
"email": "contact@techcorp.com",
"date_birth": "1985-07-22",
"num_document": "B987654321",
"type_document": "id_card",
"occupation": "CEO",
"civility": "M",
"gender": "M",
"expired_document": "2031-05-30",
"address": "45 avenue des Champs-ĂlysĂ©es",
"country_code": "FR",
"city": "Paris",
"phone": "+33698765432"
}
{
"message": "Sender created successfully",
"status": "success",
"data": {
"account_type": "B",
"business_name": "TechCorp SAS",
"business_register_date": null,
"business_type": "SARL",
"first_name": null,
"last_name": null,
"email": "contact@techcorp.com",
"phone": "+33698765432",
"code": "25070908591851673500887",
"occupation": "CEO",
"civility": "M",
"gender": "M",
"document_type": "id_card",
"document_expired": "2031-05-30",
"document_number": "B987654321"
}
}
Ce endpoint permet de récupérer la liste des bénéficiaires enregistrés pour un expéditeur spécifique.
Il est couramment utilisĂ© pour prĂ©remplir les informations lors dâun envoi dâargent ou gĂ©rer les contacts favoris dâun utilisateur.
GET /api/beneficiaries
{
"message": "senders get successful",
"status": "success",
"data": [
{
"first_name": "emanuel kamao",
"last_name": "fumba",
"email": "contact@guens-education.com",
"phone": "23796854415",
"code": "25042553551393640666986",
"occupation": "",
"civility": "Maried",
"gender": "M",
"document_type": "PP",
"document_expired": "2025-05-11",
"document_number": "5879454555"
},..
]
}
Ce endpoint permet dâenregistrer un nouveau bĂ©nĂ©ficiaire vers lequel un expĂ©diteur pourra envoyer de lâargent.
Le bĂ©nĂ©ficiaire peut ĂȘtre liĂ© Ă un compte bancaire, un portefeuille mobile ou un point de retrait..
{
"account_type": "P",
"first_name": "Alice",
"last_name": "Kouassi",
"email": "alice.kouassiu@example.com",
"date_birth": "1992-08-25",
"num_document": "CI123456789",
"type_document": "passport",
"occupation": "Comptable",
"civility": "Single",
"gender": "F",
"expired_document": "2032-08-25",
"address": "Boulevard ValĂ©ry Giscard dâEstaing",
"country_code": "CI",
"city": "Abidjan",
"phone": "+2250700123456"
}
{
"message": "Beneficiary created successfully",
"status": "success",
"data": {
"account_type": "P",
"business_name": null,
"business_type": null,
"first_name": "Alice",
"last_name": "Kouassi",
"email": "alice.kouassiu@example.com",
"phone": "+2250700123456",
"code": "25070932393437450612644",
"occupation": "Comptable",
"civility": "F",
"gender": "F",
"document_type": "passport",
"document_expired": "2032-08-25",
"document_number": "CI123456789"
}
}
Ce endpoint permet de récupérer la liste des transactions effectuées par un expéditeur.
Il prend en charge des filtres pour rechercher par statut, type, date ou bĂ©nĂ©ficiaire, facilitant ainsi le suivi des envois dâargent.
| ParamĂštre | Type | Description |
| ---------------- | ------ | ------------------------------------------------------------------------------ |
| `sender_id` | string | (obligatoire) Identifiant de lâexpĂ©diteur |
| `status` | string | (optionnel) Filtrer par statut (`pending`, `completed`, `failed`, `cancelled`) |
| `type` | string | (optionnel) Type de transaction (`bank`, `mobile_money`, `cash_pickup`) |
| `start_date` | string | (optionnel) Date de début au format `YYYY-MM-DD` |
| `end_date` | string | (optionnel) Date de fin au format `YYYY-MM-DD` |
| `beneficiary_id` | string | (optionnel) Filtrer les transactions envoyées à un bénéficiaire spécifique |
GET /api/transactions
{
"message": "senders get successful",
"status": "success",
"data": [
{
"first_name": "emanuel kamao",
"last_name": "fumba",
"email": "contact@guens-education.com",
"phone": "23796854415",
"code": "25042553551393640666986",
"occupation": "",
"civility": "Maried",
"gender": "M",
"document_type": "PP",
"document_expired": "2025-05-11",
"document_number": "5879454555"
},..
]
}
Ce endpoint permet de crĂ©er une transaction bancaire en transfĂ©rant des fonds dâun expĂ©diteur vers un bĂ©nĂ©ficiaire disposant dâun compte bancaire.
Il vérifie les informations du client, le solde, applique les frais, et génÚre une référence de transaction.
{
"country_code": "CI",
"gateway": "BankGatewayCI",
"bank": "ECOBANK",
"sender_code": "25070908591851673500887",
"beneficiary_code": "25070943938506074307835",
"city": "Abidjan",
"amount": 100000,
"raison_transaction": "Advanced Goods Payments",
"origin_fond": "Salary",
"relation": "Mother",
"accountNumber": "CI11001234567890123456",
"swift_code": "CEPAFRPP",
"comment": "BANKS DEPOSIT",
"callback_url": "https://votre-api.com/retour/transaction"
}
Remplacer swift_code par :
{
"message": "Transaction created successfully",
"status": "success",
"data": {
"transaction_status": "Pending",
"transaction_id": "25070934967500637436125",
"fees": 12000,
"amount": 141.8
}
}
Ce endpoint permet de crĂ©er une transaction Mobile en transfĂ©rant des fonds dâun expĂ©diteur vers un bĂ©nĂ©ficiaire disposant dâun compte mobil money.
Il vérifie les informations du client, le solde, applique les frais, et génÚre une référence de transaction.
{"country_code":"CM",
"gateway":"OM",
"sender_code":"25042521022068963666512",
"beneficiary_code":"25042553551393640666986",
"city":"Paris",
"amount":"80000",
"raison_transaction":"Business Profits to Parents",
"origin_fond":"Donation",
"relation":"Brother",
"accountNumber":"237675066919",
"comment": "MOMO DEPOSIT",
"callback_url":"https://xxxx/webhook"
}
{
"message": "transaction created successful",
"status": "success",
"data": {
"transaction_id": "25050816264901015287708",
"fees": 3600,
"amount": 1000
}
}
Ce endpoint permet de rĂ©cupĂ©rer le statut actuel dâune transaction donnĂ©e Ă lâaide de son identifiant unique.
Il est utile pour les utilisateurs finaux ou les agents afin de suivre lâĂ©volution dâun envoi (bancaire, mobile ou en espĂšces).
*transaction_id (obligatoire) : Lâidentifiant unique de la transaction Ă suivre.
GET /api/transactions/status/25050816264901015287708
{
"message": "transaction successful",
"status": "success",
"data": {
"transaction_id": "25050816264901015287708",
"status": "success",
"relation": "Brother",
"origin_fond": "Donation",
"motif_send": "Business Profits to Parents",
"amount_send": 1000,
"country": "FRANCE",
"currency": "EUR",
"amount_debit": 83600,
"bank": "BANQUE POPULAIRE VAL DE FRANCE",
"accountNumber": "011623852957",
"sender": {
"first_name": "kouamo",
"last_name": "Dieudonne",
"email": "info@agensic.com",
"phone": "237675066919",
"code": "25042521022068963666512",
"occupation": "mecanicien",
"civility": "Maried",
"gender": "M",
"document_type": "PP",
"document_expired": "2025-05-10",
"document_number": "5879454555"
},
"beneficiary": {
"first_name": "emanuel kamao",
"last_name": "fumba",
"email": "contact@guens-education.com",
"phone": "23796854415",
"code": "25042553551393640666986",
"occupation": "",
"civility": "Maried",
"gender": "M",
"document_type": "PP",
"document_expired": "2025-05-11",
"document_number": "5879454555"
}
}
}