Introduction
FlashPay est une plateforme qui permet aux marchands de recevoir des paiements via leurs applications mobiles ou leurs sites web. FlashPay offre des API pour interagir avec tous les types de client (PHP, Java, Javascript, etc.)
Afin de recevoir des paiements sur votre site web ou votre application mobile, vous devez être enregistré sur la plateforme FlashApp en tant que marchand.
Voici les étapes à suivre :
1. Téléchargez l'application FlashApp et s'enregistrez
2. Contactez-nous par mail à l’adresse marchands@flash.one pour permettre de changer le statut de votre compte à celui de marchand. Vous devrez remplir le formulaire en ligne afin de fournir les informations de votre entreprise auprès de notre service de conformité.
FlashPay propose actuellement les devise suivantes : le Franc Congolais (abrégé en CDF) et le Dollar américain (abrégé USD). Également FlashPay dispose d’un compte de fidélisation dénommé compte FCN (Flash Coin).
Modes de paiement supportés
FlashPay fonctionne comme un portail web qui regroupe les modes de paiement suivants :
FlashPay est principalement conçu pour permettre une intégration simple et rapide dans toute sorte d'application. Avec FlashPay, vous pouvez recevoir des paiements des utilisateurs FlashApp. FlashPay permet au marchand de recevoir également des paiements d'utilisateurs n'ayant pas de compte FlashApp utilisant des cartes de crédit, PayPal, Mobile Money, paiement cash et autres.
Etape 1 : Initialisation de la transaction
L’opération consiste à créer la transaction dans le registre du Gateway FlashPay. Le gateway va générer une adresse valide pendant une période définie par les administrateurs du système. Cette adresse est utilisable qu’une seule fois. La transaction a alors le statut : INITIE
Pour initier une transaction, le marchand doit envoyer une requête http de la forme suivante :
End-point :
http://flashint.cfc-rdc.com:3000/flashpay/init
Method: POST Headers :
Request Body
{
"montant": decimal,
"deviseiso": string (USD | CDF),
"commentaire": string,
"urlSuccess": string (urlencoded),
"urlDecline": string (urlencoded),
"motif": stirng,
"fpid": string,
"transactionId": string,
"nomMarchand": string,
"pin": string,
"typePaiement": string
}
Tableau explicatif de différents champs des données
Paramètre
Obligatoire
Description
montant
deviseiso
commentaire
urlSuccess
urlDecline
motif
fpid
transactionId
nomMarchand
typePaiement
oui
oui
oui
oui
oui
oui
oui
oui
oui
non
Montant de la transaction
Devise de la transaction
Le texte informatif à afficher pour le client. Ce texte de la transaction
Le lien de callback à appeler quand le paiement s'est déroulé avec succès
Le lien de callback à appeler quand le paiement a échoué.
Motif de la transaction
Le FlashApp ID du marchand
L'identifiant unique de l'opération depuis le système du marchand.
De préférence un code UUID
Le nom du marchand. Ce nom sera affiché dans le gateway
Ce champ donne la possibilité au marchand de contraindre le client à utiliser un seul mode de paiement.
Les valeurs possibles sont :
• FLASH : le paiement de la transaction ne va se faire que par FlashApp
• MOBILE MONEY : le paiement ne va se faire que par mobile money
• VISA : le paiement ne va se faire que par carte VISA
• FLASH PAY : le paiement va se faire par coupon Flash Transfer depuis une agence Flash
• CRYPTO : le paiement ne va se faire que par crypto
Etape 2 : Redirection du client vers FlashPay
Une fois la requête effectuée, vous aurez un objet JSON dans le corps de la réponse qui contiendra toutes les informations relatives à la transaction initiée où vous allez trouver un attribut "urlTransaction" qui contient le lien unique. de paiement FlashPay. Ce lien sera utilisé pour rediriger le client vers FlashPay afin d’effectuer le paiement.
Exemple :
"http://flashint.cfc-rdc.com:3000/flashpay/auth/D6D99B0C0763458B028CB06EDAF58477",
Etape 3 : Exécution de paiement
Une fois que la transaction initiée, On utilise l’adresse contenue dans l’attribut urlTransaction pour accéder au gateway de paiement pour confirmer la transaction. Une fois le paiement exécuté, le client sera redirigé vers l’adresse renseigné dans la urlSuccess ou urlFailed selon que le paiement est un succès ou un échec.
Autres APIs
NB : Pour tous les APIs qui vont suivre, il est obligatoire de renseigner dans le header de la request les attributs suivants :
token : le token du marchand
login : le FlashApp ID du marchand / l’adresse mail du marchand / le numéro de téléphone du marchand
pwd : le mot de passe FlashApp du marchand
Explication de Réponse JSON des APIS
o OK : Tout s’est bien déroulé. Vous recevrez une réponse dans « response »
o KO : Une erreur s’est produite. Vous avez la description de l’erreur dans « error.errorDescription »
Explication de Réponse JSON des APIS • OK : Tout s’est déroulé correctement. Vous une réponse dans « response » • KO : Une erreur s’est produite. Vous avez la description de l’erreur dans « error.errorDescription »
1. Récupérer une transaction par l’identifiant de la transaction du client (transactionId)
End-point :
http://flashint.cfc-rdc.com:3000/flashpay/get-transaction
Method : GET
2. Récupérer la liste des transactions pour une période données
End-point :
http://flashint.cfc-rdc.com:3000/flashpay/get-transaction-for-periode
Method: GET
3. Récupérer le Token du marchand
End-point :
http://flashint.cfc-rdc.com:3000/flashpay/get-token
Method : POST
Body :
{
"login": string,
"pwd": string,
"pin": string
}
Un portefeuille électronique multiproduit qui permet d’accéder à des produits et services à partir d’un Smartphone et d'un seul compte.
Copyright © 2017 All Rights Reserved by Flash International
Tableau explicatif de différents champs des données
Paramètre
Obligatoire
Description
montant
deviseiso
commentaire
urlSuccess
urlDecline
motif
fpid
transactionId
nomMarchand
typePaiement
oui
oui
oui
oui
oui
oui
oui
oui
oui
non
Montant de la transaction
Devise de la transaction
Le texte informatif à afficher pour le client. Ce texte de la transaction
Le lien de callback à appeler quand le paiement s'est déroulé avec succès
Le lien de callback à appeler quand le paiement a échoué.
Motif de la transaction
Le FlashApp ID du marchand
L'identifiant unique de l'opération depuis le système du marchand.
De préférence un code UUID
Le nom du marchand. Ce nom sera affiché dans le gateway
Ce champ donne la possibilité au marchand de contraindre le client à utiliser un seul mode de paiement.
Les valeurs possibles sont :
• FLASH : le paiement de la transaction ne va se faire que par FlashApp
• MOBILE MONEY : le paiement ne va se faire que par mobile money
• VISA : le paiement ne va se faire que par carte VISA
• FLASH PAY : le paiement va se faire par coupon Flash Transfer depuis une agence Flash
• CRYPTO : le paiement ne va se faire que par crypto