SkanPay est une passerelle de paiement. Cette documentation décrit l’implémentation et l’utilisation de notre API SkanPay.
Opérateurs
SkanPay est connecté à plusieurs opérateurs qui implementent chacun le paiement d’une façon
spécifique. Il existe principalement deux implementations:
– Paiement avec reponse directe : la reponse à la requete de paiement se trouve dans la reponse à la requete HTTP
– Paiement avec reponse différée : la reponse à la requete de paiement se fait par l’appel d’une url de callback du service qui utilise l’API.
Chaque opérateur dispose d’un code qui est utilisé dans la requete de paiement. Les operateurs suivants sont
integrés à SkanPay:
- Orange Money CI (Paiement avec reponse directe) : OM_SKAN,
- MTN Mobile Money CI (Paiement avec reponse différée) : MOMO_SKAN,
- Moov Money CI (Paiement avec reponse différée) : MOOV_SKAN
Compte Utilisateur
Tout integrateur de SkanPay doit disposer préalablement d’un compte. Les parametres du compte (Login, Password) sont fournis par SkanPay à l’integrateur.
Service marchand
Un service marchand est un service pour lequel l’integrateur aimerait utiliser SkanPayment comme moyen de
paiement. Chaque service est configuré sur SkanPay et est identifié par un ID unique. Cet ID, fournit par
SkanPayment, est utlisé dans la requete de paiement. Aussi, pour chaque service, l’integrateur fournit à
SkanPay une URL de notification. Cette URL est appelée par SkanPay par une requete HTTP POST
pour notifier du succès ou de l’echec de la requête de paiement.
Paiement
Paiement avec reponse directe
Dans le cas d’un paiement avec reponse directe, le paiement s’est effectué avec succès si le « code » de la
reponse est égal à 0. Toute valeur du « code » différente de 0 signifie un echec du paiement. La cause de l’échec
est spécifiée dans le « message » de la reponse.
— Method [POST]
— Url [/payer] Requete (application/json)
— Requete (application/json)
— Host : https://paiement.skanci.com/mobilepayment/
{
"serviceId": "XXXXXX",
"utilisateur": "test",
"password": "test",
"codeOperateur" : "OM_SKAN,
"reference": "YYYYYYYYY",
"numero": "XXXXXXXX",
"montant": "100",
"typeOperateur": "NON_REDIRIGE",
"nom": "XXX",
"email": "xxx@gmail.com",
"numeroClient": "XXXXXXXX",
"token": "XXXX"
}
{
"code": 0,
"message": "Paiement effectué avec succès"
}
Paiement avec réponse différée
Dans le cas d’un paiement avec reponse différée, après la requete de paiement, SkanPayment attend la
validation du paiement par le client et le « code » est a la valeur 10. Toute valeur du « code » différente de 10
signifie un echec du paiement. La cause de l’échec est spécifiée dans le « message » de la reponse.
— Method [POST]
— Url [/payer]
— Requete (application/json)
{
"serviceId": "XXXXXX",
"utilisateur": "test",
"password": "test",
"codeOperateur" : "MOMO_SKAN",
"reference": "YYYYYYYYY",
"numero": "XXXXXXXX",
"montant": "100",
"typeOperateur": "NON_REDIRIGE",
"nom": "XXX",
"email": "xxx@gmail.com",
"numeroClient": "XXXXXXXX",
"token": "XXXX"
}
— Response (application/json)
{
"code": 10,
"message": "Paiement en attente de validation"
}
Après la validation du paiement par le client, l’URL de notification du service est appélée par SkanPayment par
une requete HTTP POST.
— Method [POST]
— Url [urlNotificationService]
— Requete (application/json)
{
"reference": "YYYYYYYYY",
"code": 0,
"message": "Paiement effectué avec succès"
}