Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
|
tecdoc:api [2023/07/14 09:25] mactar.ba |
tecdoc:api [2023/07/26 08:39] (Version actuelle) mactar.ba |
||
|---|---|---|---|
| Ligne 4: | Ligne 4: | ||
| ===== Vue d'ensemble ===== | ===== Vue d'ensemble ===== | ||
| - | <color #ff7f27><schéma de présentation des différents composantes et de leurs interactions via API></color> **todo** | + | |
| + | {{ :tecdoc:cynodthirdpartypaymentgateway-overview-wiki-version.jpg?nolink |}} | ||
| ===== Sécurité ===== | ===== Sécurité ===== | ||
| Ligne 30: | Ligne 31: | ||
| __**En cas de succès**__ | __**En cas de succès**__ | ||
| + | * <code java>http status : 200 - OK</code> | ||
| + | * payload json de réponse <code>{ | ||
| + | "success": "true", | ||
| + | "code": "success code", | ||
| + | "message":"success message to the application user", | ||
| + | "data": "response data if necessary" | ||
| + | }</code> | ||
| __**En cas d'erreur fonctionnelle liée à la requête du client**__ | __**En cas d'erreur fonctionnelle liée à la requête du client**__ | ||
| + | |||
| + | * <code java>http status : 400 - Bad Request (Client Error)</code> | ||
| + | * payload json avec le détail de l’erreur <code>{ | ||
| + | "success": "false", | ||
| + | "code": "error code message to the app user", | ||
| + | "debugMessage": "verbose message for debug purpose", | ||
| + | "moreInfo": "null" | ||
| + | }</code> | ||
| __**En cas d'erreur d'authentification**__ | __**En cas d'erreur d'authentification**__ | ||
| + | |||
| + | * <code java>http status : 401 - Unauthorized </code> | ||
| __**En cas d'erreur système lié à un problème serveur**__ | __**En cas d'erreur système lié à un problème serveur**__ | ||
| + | |||
| + | * <code java>http status : 500 - Internal Server Error </code> | ||
| + | * payload json avec le détail de l’erreur <code>{ | ||
| + | "success": "false" | ||
| + | "code": "9999", | ||
| + | "message": "message to the app user", | ||
| + | "debugMessage": "verbose message for debug purpose" | ||
| + | }</code> | ||
| + | |||
| + | //:!: La description des données échangées est au format ''swagger''. Voir en annexe les différents codes d’erreur.// | ||
| /* | /* | ||
| Ligne 46: | Ligne 74: | ||
| ===== 3rd Party API ===== | ===== 3rd Party API ===== | ||
| Cette section référence les API CYNOD qui sont mises à la disposition des partenaires pour construire des services digitaux au service de tous. | Cette section référence les API CYNOD qui sont mises à la disposition des partenaires pour construire des services digitaux au service de tous. | ||
| - | ===== Principe général des échanges ===== | + | ==== API de consultation de solde carte ==== |
| + | ^ Type | <color #22b14c>**GET**</color> | | ||
| + | ^ URI | /get-solde-carte | | ||
| + | ^ Description | envoi d’une requête pour la consultation du solde d’une carte | | ||
| + | |||
| + | __**Paramètres :**__ | ||
| + | ^ Nom ^ Description ^ | ||
| + | | numeroCarte | Numéro de la carte du client | | ||
| + | | walletId | Numéro de téléphone du client | | ||
| + | | clientId | Identifiant du client | | ||
| + | |||
| + | __**Header :**__ | ||
| + | ^ Content-type | application/json | | ||
| + | ^ Authorization |Bearer %%{{ACCESS_TOKEN}}%% | | ||
| + | |||
| + | __**Request body :**__ | ||
| + | |||
| + | <wrap hi>Aucun</wrap> | ||
| + | |||
| + | __**Réponses :**__ | ||
| + | ^ Code http | 200 | | ||
| + | ^ Description | Success | | ||
| + | __//Exemple modèle payload json//__ | ||
| + | <code> | ||
| + | { | ||
| + | "success": true, | ||
| + | "code": 200, | ||
| + | "message": "Sauf omission* de notre part votre nouveau solde est de 142000 FCFA ", | ||
| + | "data": [ | ||
| + | { | ||
| + | "numeroCarte": "7019800100009569", | ||
| + | "soldeOnline": 142000.0, | ||
| + | "dateSolde": "23-08-2021 10:11:42" | ||
| + | } | ||
| + | ] | ||
| + | } | ||
| + | </code> | ||
| + | |||
| + | ^ Code http | 400 | | ||
| + | ^ Description | Bad request | | ||
| + | __//Exemple modèle payload json//__ | ||
| + | <code> | ||
| + | { | ||
| + | "success": false, | ||
| + | "code": "412", | ||
| + | "message": "Utilisateur inexistant ou invalide", | ||
| + | "debugMessage": "Utilisateur inexistant ou invalide", | ||
| + | "moreInfo": null | ||
| + | } | ||
| + | </code> | ||
| + | |||
| + | ==== API de vérification de validité d’une carte ==== | ||
| + | ^ Type | <color #22b14c>**GET**</color> | | ||
| + | ^ URI | /check-card-validity | | ||
| + | ^ Description | envoi d’une requête pour la validité d’une carte | | ||
| + | |||
| + | __**Paramètres :**__ | ||
| + | ^ Nom ^ Description ^ | ||
| + | | numeroCarte | Numéro de la carte du client | | ||
| + | | walletId | Numéro de téléphone du client | | ||
| + | | clientId | Identifiant du client | | ||
| + | |||
| + | __**Header :**__ | ||
| + | ^ Content-type | application/json | | ||
| + | ^ Authorization |Bearer %%{{ACCESS_TOKEN}}%% | | ||
| + | |||
| + | __**Request body :**__ | ||
| + | |||
| + | <wrap hi>Aucun</wrap> | ||
| + | |||
| + | __**Réponses :**__ | ||
| + | ^ Code http | 200 | | ||
| + | ^ Description | Success | | ||
| + | __//Exemple modèle payload json//__ | ||
| + | <code> | ||
| + | { | ||
| + | "success": true, | ||
| + | "code": 200, | ||
| + | "message": "Votre carte est valide et valable jusqu'au 18/07/2029", | ||
| + | "data": [ | ||
| + | { | ||
| + | "numeroCarte": "7019800100009569", | ||
| + | "finValidite": "18/07/2029", | ||
| + | "nom": "xxx", | ||
| + | "prenom": "xxx", | ||
| + | "email": "", | ||
| + | "telephone": "", | ||
| + | "numeroPiece": "", | ||
| + | "dateNaissance": "" | ||
| + | } | ||
| + | ] | ||
| + | } | ||
| + | </code> | ||
| + | |||
| + | ^ Code http | 400 | | ||
| + | ^ Description | Bad request | | ||
| + | __//Exemple modèle payload json//__ | ||
| + | <code> | ||
| + | { | ||
| + | "success": false, | ||
| + | "code": "405", | ||
| + | "message": "Paramètere numeroCarte manquant ou invalide", | ||
| + | "debugMessage": null, | ||
| + | "moreInfo": null | ||
| + | } | ||
| + | </code> | ||
| + | ==== API de vérification de validité d’une carte en fonction d’un membre ==== | ||
| + | ==== API de récupération de la liste de carte d’un membre ou client ==== | ||
| + | ==== API crédit carte (recharge) ==== | ||
| + | ==== API dédit carte (paiement) ==== | ||
| + | ==== API access token ==== | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||