Académique Documents
Professionnel Documents
Culture Documents
Rapport Pfe Chichi Amine GL 2022
Rapport Pfe Chichi Amine GL 2022
Encadré par :
Réalisé par : Pr. BERRADA Bouchra (ENSIAS)
CHICHI Amine M. ZOUITENE Adnane (EFFYIS)
Filière :
Génie logiciel Membres du jury :
Dédicace
À toute ma famille
CHICHI Amine
2021/2022 PFE
REMERCIEMENTS
Nous tenons, avant de présenter notre travail, à exprimer notre grande reconnaissance à toutes
celles et ceux qui, de près ou de loin, nous ont accordé leur soutien. Que ces personnes puissent
trouver ici, collectivement et individuellement, l’expression de toute notre gratitude.
Les plus sincères remerciements de notre part sont adressés à M. Omar BENYAHIA et M. Younes
ARAQI HOUSSAINI, directeurs associés d’EFFYIS GROUP,et ce pour la confiance qu’ils nous ont
faite en nous confiant un projet de telle importance. Nous désirons également exprimer nos remer-
ciements à M. Mohamed Ali ESSADAK, Directeur d’EFFYIS GROUP, pour son accompagnement
précieux, ses remarques pertinentes et ses conseils.
Nous adressons nos plus vifs remerciements et toute notre reconnaissance à M. Hamza CHICHI,
M. Mounir LAHRAICHI et M. Mohamed Amine ZAHHAOUI pour l’expérience enrichissante qu’il
nous ont permis de vivre tout au long de notre stage ainsi que pour tous les conseils et tous les
renseignements qu’il nous ont fournis.
Nous voulons également remercier notre encadrant, Mme BERRADA Bouchra, pour sa disponi-
bilité à assurer la supervision et le suivi de ce travail, pour les conseils qu’elle nous a prodigués lors
de nos réunions qui ont été organisées au cours des différentes étapes de la rédaction de ce rapport.
Les échanges que nous avons entretenus nous ont permis de faire évoluer ce présent travail avec un
esprit sûr et pertinent. Nous tenons à la remercier pour les efforts qu’elle a fournis, pour sa disponi-
bilité et plus particulièrement pour ses précieux conseils qui ont largement contribué à enrichir la
qualité de ce travail.
Nous souhaitons de même remercier l’ensemble du corps professoral de l’École Nationale Supérieure
d’Informatique et d’Analyse des Systèmes (ENSIAS) pour leur intérêt accordé à la formation des fu-
turs ingénieurs.
Puissent les membres du jury trouver dans ces lignes l’expression de notre profonde reconnaissance
pour le privilège qu’ils nous accordent par leur acceptation de juger ce travail.
2
GL ENSIAS
RÉSUMÉ
Le rapport suivant porte sur notre projet de fin d’études que nous avons mené au sein du groupe
Effyis. Le projet répond à un besoin initial exprimé par les directeurs du cabinet concernant le dé-
veloppement d’un nouveau moyen de paiement en ligne basé sur l’Open Banking et la norme ISO
20022 ainsi qu’une plateforme administrative dédiée aux différents marchands souhaitant intégrer
ce nouveau système de paiement.
Ce besoin a vu le jour compte tenu de la situation sanitaire durant le COVID 19, ce qui a im-
pliqué une hausse envers l’utilisation des plateformes E-commerce de 3% entre 2019 et 2020. D’où
la nécessité d’innover et concevoir de nouvelles méthodes de paiements plus fiable, plus sécurisé,
mais surtout plus simple afin d’offrir une expérience client réussie. C’est dans ce contexte que le
paiement instantané s’inscrit pleinement dans les tendances actuelles comme étant un moyen de
paiement dématérialisé et sûr, et il présente un intérêt pour tous les participants, notamment les
banques, les prestataires de services de paiement, les commerçants et les clients.
Ainsi, les trois projets dont nous avons assuré la conception et le développement sont tout
d’abord un micro service Ecom qui gère en interaction avec d’autres services déjà mis en place tout
le processus de paiement. Ensuite une plateforme administrative dédié au marchant dont le but
est de fournir toutes sortes d’informations sur les performances de son site e-commerce en combi-
nant ses données e-commerce avec ses données financières. Ainsi qu’une vue globale de ses perfor-
mances commerciales : commandes, chiffre d’affaires, bénéfice, frais de commission, taille moyenne
des commandes. Et un portail adresser aux développeurs sous forme d’une documentation pour
faciliter aux développeurs le process d’intégration du nouveau système de paiement au sein des sites
e-commerce ainsi qu’une description détaille des APIs.
L’application est implémentée en utilisant le framework Spring Boot côté serveur ainsi que
Spring Cloud pour une architecture micro-services, React JS et ApexChart côté client pour la visua-
lisation des différents graphiques, un Serveur IBM local pour le déploiement et une base de données
Postgres. À noter que la méthodologie suivie pendant la réalisation de ce projet était une approche
Agile dans le cadre de Scrum.
Mots-clés : Passerelle de paiement, Open Banking, ISO 20022, AISP, PISP, Spring Boot, Spring Cloud,
React JS, ApexChart, Agile, Scrum.
2021/2022 PFE
GL ENSIAS
ABSTRACT
The following report is about our end of studies project that we conducted within the Effyis
group. The project responds to an initial need expressed by the directors of the firm concerning the
development of a new means of online payment based on Open Banking and the ISO 20022 standard
as well as an administrative platform dedicated to the various merchants wishing to integrate this
new payment system.
This need has emerged given the health situation during COVID 19 which implied an increase
towards the use of E-commerce platforms of 3% between 2019 and 2020.hence the need to innovate
and design new payment methods more reliable more secure but above all simpler in order to offer
a successful customer experience. It is in this context that instant payment is fully in line with
current trends as a dematerialized and secure payment method, and it is of interest to all participants,
including banks, payment service providers, merchants and customers.
Thus, the three projects that we have designed and developed are first of all an Ecom micro
service that manages the entire payment process in interaction with other services already in place.
Then an administrative platform dedicated to the merchant whose goal is to provide all kinds of
information on the performance of its e-commerce site by combining its e-commerce data with its
financial data. As well as a global view of his commercial performance : orders, turnover, profit,
commission fees, average order size. And a developer portal in the form of a documentation to
facilitate the process of integrating the new payment system into e-commerce sites as well as a
detailed description of the APIs.
The application is implemented using the Spring Boot framework on the server side as well as
Spring Cloud for a microservices architecture, React JS and ApexChart on the client side for the
visualization of the different graphs, a local IBM Server for the deployment and a Postgres database.
Note that the methodology followed during the realization of this project was an Agile approach in
the framework of Scrum.
Keywords : Payment Gateway, Open Banking, ISO 20022, AISP, PISP, Spring Boot, Spring Cloud,
React JS, ApexChart, Agile, Scrum.
2021/2022 PFE
GL ENSIAS
2021/2022 PFE
GL ENSIAS
2021/2022 PFE
4.1 Diagramme de Séquence d’authentification . . . . . . . . . . . . . . . . . . . . . . . 51
4.4 Diagramme de Séquence de la génération d’un piechart représentant les status des
commandes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
7
5.20 Interface Ajouter un compte bancaire . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5.24 Interface Consulter le chiffre d’affaire, le panier moyen mensuel et les balances . . . 73
5.25 Interface consulter le chiffre d’affaire de l’année et la semaine sous forme d’un BarChart 74
5.26 Interface consulter les statuts des commandes et canaux de paiement utilisé sous
forme de PieChart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.27 Interface consulter la liste des commandes détaillée sous forme d’un tableau paginé 75
5.28 Interface consulter la liste des commandes détaillée sous forme d’un tableau paginé
et filtré par statut et date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.29 Interface consulter l’historique détaillé des commissions facturées sous forme d’un
tableau paginé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
8
GL ENSIAS
Introduction générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.8 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.2.9 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.3.3 Organisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2021/2022 PFE
2.1.1 Besoins fonctionnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3 Architecture de l’application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5 Mise en oeuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.1.2 React JS : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.1.3 Material UI : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.1.4 ApexCharts : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
10
5.1.5 PostreSQL : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5.1.9 Postman : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.1.10 Gitlab : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.1.11 Grafana : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.1.12 Prometheus : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Bibliographie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
11
GL ENSIAS
INTRODUCTION GÉNÉRALE
Au fil des âges, les gens ont pratiqué le commerce pour échanger des biens et des services contre
une rémunération. Ces transactions financières n’ont pas toujours impliqué des paiements moné-
taires. Il fut un temps où l’argent standard n’existait même pas et où les gens utilisaient d’autres
formes de paiement pour effectuer des transactions. Avec l’évolution de la technologie, l’argent et
les paiements ont radicalement changé. La technologie actuelle de traitement des virements et les
solutions commerciales avancées rendent les transactions financières possibles à tout moment et en
tout lieu.
L’arrivée d’Internet dans les foyers a permis le développement à grande vitesse du e-commerce,
soit la possibilité d’acheter et payer en ligne pour tout type de produit. Tandis que certains ont
lancé leurs activités de vente uniquement en ligne, d’autres marchands ont dû s’adapter et ont lancé
eux aussi leur site web et leur catalogue en ligne. Les acteurs du paiement se sont donc adaptés en
conséquence, notamment Authorize.Net qui en 1996 permette pour la première fois aux commer-
çants d’accepter les paiements par carte de crédit et par chèque électronique par le biais de leur site
web et d’une connexion IP, le paiement électronique est désormais possible.
Nous avons tous constaté que les modes de paiement traditionnels ont été remplacés par diffé-
rents types de paiement électronique qui sont rapides et efficaces. Dans le processus du paiement
électronique, l’acheteur et le vendeur utilisent des modes numériques pour envoyer ou recevoir de
l’argent. C’est un processus automatique qui permet au vendeur et à l’acheteur d’éviter de se rendre
à leur banque. Il élimine l’argent physique qui est parfois risqué à manipuler à certains moments. Au-
jourd’hui, les consommateurs peuvent effectuer des paiements par voie électronique en utilisant des
cartes ou bien directement leurs comptes bancaires à travers l’Open Banking et d’autres plateformes
qui sont mises à disposition par tous les types d’appareils intelligents.
2021/2022 PFE
ment bénéficierons d’une documentation détaillé des étapes à suivre ainsi qu’une documentation des
différentes API’s.
Le présent rapport présente en détail notre projet de fin d’études et comporte quatre chapitres :
• Le deuxième chapitre aborde la phase d’analyse et de spécifications des besoins, il a pour but
d’analyser l’existant et de citer les besoins de notre application.
• Pour le troisième chapitre, son objectif est de traiter l’étude technique qui a pour objectif de
proposer une architecture logicielle permettant une meilleure structuration des microservices.
• Pour enfin aboutir au dernier chapitre qui expose la mise en œuvre du portage réalisé. Il
définit en premier lieu les outils utilisés dans chacun des microseriveces du projet, avant de présenter
quelques interfaces illustrant la solution réalisée.
13
Chapitre 1 Contexte général du projet
CHAPITRE 1
Introduction
Au cours de ce chapitre, nous allons nous intéresser tout d’abord à la présentation du cadre
de notre projet. Il s’agit en effet d’une présentation du cabinet pour lequel ce travail a été réalisé.
Nous exposerons le sujet du travail qui nous a été confié ainsi que l’environnement qui a servi à son
achèvement.
Après l’exposition de la problématique, nous citerons les objectifs déterminés et nous présen-
terons ensuite la solution proposée. Enfin, nous clôturerons ce chapitre par une présentation de la
méthodologie de gestion du projet adaptée.
Effyis Group est un cabinet de conseil en management et en technologie indépendant qui ac-
compagne les entreprises et les institutions dans leurs réflexions et projets de transformation. Le
cabinet propose des services de prestation à forte valeur ajoutée couvrant les trois grandes phases
de la transformation : réflexion stratégique, mise en œuvre et pérennisation du changement. Ces
prestations ont toutes été packagées dans le cadre de solutions pertinentes permettant de garantir la
satisfaction des clients grâce aux expertises pointues développées par leur large réseau international.
Effyis Group est une Digital Factory présente dans deux pays : France et Maroc proposant
des offres personnalisées, avec un ensemble de plus de cinquante de consultants qui interviennent
exclusivement sur les problématiques des projets de transformation digitale en banque et assurance.
La constitution des équipes ne suit pas une règle de configuration immuable, les équipes sont consti-
tuées en fonction de la nature de la mission, sa durée et son niveau de complexité.
Chaque échelon supervise les tâches du niveau inférieur et reporte au niveau supérieur. Par défaut,
la mission est réalisée sous la supervision du manager, qui reporte à l’associé, qui lui-même en est
responsable devant le client.
Afin d’éclaircir l’architecture des moyens humaines au sein du cabinet, nous présentons l’organi-
grame suivant :
• Banque : L’expertise du cabinet couvre le secteur des banques de détail (expérience client,
multicanal. . .), du corporate banking (cash management, financement. . .), de la banque privée (pri-
vate equity. . .), des banques d’investissement et des banques participatives. De plus, l’approche adop-
tée par le cabinet est transverse à tous les métiers bancaires et englobe autant les activités commer-
ciales (front office) qu’opérationnelles et administratives (back et middle office).
• Industrie : Le secteur industriel est soumis à des contraintes sensibles, de la gestion des ins-
tallations à l’analyse et l’optimisation des coûts, en passant par l’augmentation de la productivité, il
doit donc constamment se réinventer et évoluer afin que ses entreprises soient et restent compéti-
tives.
C’est dans cette optique qu’Effyis se propose d’accompagner les entreprises du tissu économique in-
dustriel, et notamment celles du secteur pharmaceutique, de l’automobile, des télécoms et du trans-
port, afin de maximiser leur rentabilité et croissance, en parfaite adéquation avec les technologies
de demain.
• Assurance : Le secteur de l’assurance doit faire face, à l’instar de tant d’autres, à de profonds
changements, avec comme principal facteur la révolution digitale, qui fait désormais partie inté-
grante de son écosystème.
Effyis, se propose donc d’aider les compagnies à s’adapter à cette mutation du paysage de l’assu-
rance à travers 4 leviers principaux, à savoir la stratégie, l’organisation, la transformation digitale
et l’innovation, afin de pouvoir face à toutes ces mutations et d’appréhender le futur d’une manière
sereine.
Une passerelle de paiement est décrite comme une solution intermédiaire pour les clients entre
un e-commerce (commerce en ligne) et un fournisseur de paiement. Ainsi, une passerelle de paiement
en ligne est utilisée lorsqu’un client visite un site de commerce électronique et saisit ses informations
bancaires sur le dispositif de paiement du site. La fonction principale de la passerelle de paiement
est de transmettre de manière sécurisée les données bancaires au processeur de paiement.
Il existe deux types de passerelles de paiement : les passerelles auto-hébergées et les passerelles
hébergées :
Les étapes ci-dessous expliquent comment les paiements en ligne fonctionnent avec une passe-
relle de paiement traditionnelle :
— Première étape : Pour accepter des paiements en ligne, il faut commencez par configurer son
site web et le connecter à une passerelle de paiement.
— Deuxième étape : le = client effectue un achat sur le site web en cliquant sur le lien de
paiement et en saisissant les données de sa carte de crédit ou de débit.
— Troisième étape : La commande et les détails de la carte sont envoyés à la passerelle de paie-
ment. Les informations relatives à la carte sont transmises de manière sécurisée à la passerelle
de paiement, de sorte que seuls le client et sa banque pourront accéder aux détails de sa carte.
— Quatrième étape : Ensuite, la passerelle de paiement vérifie les données de la carte du client
et vérifie s’il dispose de fonds suffisants pour effectuer le paiement. Si c’est le cas, la passerelle
de paiement procède à la transaction. En outre, la passerelle de paiement empêche les activités
frauduleuses à l’aide d’outils anti-fraude.
— Cinquième étape : La passerelle de paiement prend ensuite le relais et envoie une demande
à la banque émettrice du client pour lancer la transaction. La banque émettrice envoie ensuite
les fonds à la banque du commerçant qui les dépose sur le compte du commerçant.
Les quatres grands acteurs d’un flux de paiement en ligne à travers une passerelle de
paiement :
— Le client : également appelé titulaire de la carte, qui souhaite accéder aux produits ou services
vendus par le commerçant et qui initie la transaction.
— La banque émettrice : est la banque du client qui émet la carte de crédit ou de débit du
titulaire de la carte pour le compte des systèmes de cartes (Visa, Mastercard).
Ce système vise à permettre aux banques d’échanger des données avec d’autres acteurs du sec-
teur financier, y compris les "fintechs". Il peut s’agir d’informations telles que l’emplacement géo-
graphique des agences bancaires et des distributeurs automatiques de billets, les services financiers
proposés dans tel ou tel établissement, ainsi que des informations sur les clients. Le règlement gé-
néral sur la protection des données (RGPD), quant à lui, oblige les banques à faire preuve d’une ou-
verture totale sur les transactions commerciales impliquant les données financières de leurs clients,
comme les dépôts, les transferts et autres activités de routine. La législation stipule que ces don-
nées ne peuvent être utilisées qu’avec l’accord préalable des clients, et qu’elles doivent être libres,
particulières, et le résultat d’une activité (signature, validation de documents, etc.).
Les responsabilités en matière de sécurité des données personnelles stipulées dans le cadre de
la loi française sur la protection des données s’appliquent aux banques ainsi qu’aux tiers tels que
les agrégateurs de services bancaires. L’Open Banking fait également référence à l’utilisation des
API (interfaces de programmation d’applications), qui permettent aux développeurs, par exemple,
de créer de nouvelles applications et de nouveaux services pour les institutions financières. C’est
une petite révolution dans l’environnement financier, où auparavant toutes les informations étaient
compartimentées et gardées.
Les paiements sont en train d’être refondus en faveur des commerçants et de leurs consomma-
teurs grâce à l’open banking. La loi PSD2 a été mise en œuvre par l’UE en 2018, dans le but d’accroître
la concurrence dans les services financiers et de moderniser les infrastructures de paiement. Cela
nécessite la création d’un nouveau type d’entreprise de paiement capable de fournir des transactions
A2A (de compte à compte) dans toute l’Europe.
Les fournisseurs de services d’information sur les paiements (PISP) accèdent aux comptes ban-
caires des particuliers et des entreprises directement via les API des banques. Ils peuvent ainsi dé-
placer l’argent directement entre les comptes, sans autre intermédiaire.
Comparez cela aux paiements par carte. Les transactions par carte passent par une chaîne de
plusieurs entreprises. Il s’agit généralement d’une passerelle de paiement, d’un acquéreur et d’un
processeur, ainsi que d’un système de cartes et de la banque du client. Le règlement des transactions
par carte prend plusieurs jours et entraîne des frais pour chaque intermédiaire, ce qui réduit les
marges du commerçant.
Les paiements A2A via l’open banking peuvent avoir des coûts par transaction nettement in-
férieurs à ceux des paiements par carte. Ceci est dû au fait que les paiements A2A contournent
complètement l’infrastructure des cartes et les coûts qui y sont associés.
La norme ISO 20022, est une norme internationale pour l’échange de messages électroniques
entre institutions financières. Introduite pour la première fois en 2004, l’ISO 20022 a été créée pour
donner au secteur financier une plate-forme commune pour développer des messages en utilisant
une méthodologie de modélisation, un dictionnaire central et un ensemble de messages XML.
L’ISO 20022 est bien plus qu’un changement de format de message. Les paiements en temps
réel ISO 20022 permettent aux banques et à leurs clients de profiter des avantages de l’open banking
pour les paiements dans l’ensemble du paysage informatique. ISO 20022 contient davantage de don-
nées qui peuvent être intégrées pour fournir une meilleure vue à 360° des parcours des clients, par
exemple de banque à banque. Si ces données précieuses sont traitées comme telles en intégrant ces
informations à d’autres systèmes, ces données de paiement peuvent réduire les risques et fournir
de nouvelles sources de revenus aux banques. L’intégration des paiements aux outils KYC peut ré-
duire le risque d’exploitation des services bancaires et de fraude, tout en favorisant des règlements
et des prévisions de trésorerie plus rapides, voire instantanés. Les systèmes et les services peuvent
être intégrés pour fournir des informations précieuses sur les activités des clients, qui peuvent être
produites et commercialisées.
— AISP (Account Information Service Provider) : Être un AISP autorisé signifie qu’une
entreprise peut accéder aux données du compte bancaire d’une personne auprès de son ins-
titution financière avec son consentement explicite. Cependant, les AISP n’ont qu’un accès
en "lecture seule". En gros, ils peuvent consulter les informations relatives aux comptes ban-
caires, mais ne peuvent pas y toucher, ce qui signifie qu’ils ne peuvent pas déplacer l’argent
d’un client.
— PISP (Payment Initiation Service Providers) : Les entreprises qui sont des PISP autorisés
peuvent non seulement consulter les données financières des consommateurs sur un compte
bancaire, mais elles sont également autorisées à effectuer des paiements au nom du client.
Cela a conduit certains commentateurs du secteur à dire que les PISP ont un accès en "lecture-
écriture".
1.2.8 Problématique
Les cartes de débit et de crédit sont depuis longtemps l’option de paiement par défaut - et souvent
la seule - dont disposent les consommateurs de commerce électronique au Royaume-Uni et dans la
plupart des pays européens. Les paiements par carte de débit ont éclipsé les espèces en tant que
méthode de paiement la plus populaire dans toutes les transactions au Royaume-Uni en 2017, avec
15,8 milliards de paiements par carte de débit au Royaume-Uni seulement en 2020.
Cependant, Amazon a déclaré en novembre 2021 qu’il n’accepterait plus les achats par carte
de crédit Visa. Alors qu’Amazon continuera à accepter les paiements par carte de débit Visa - ainsi
que les paiements par carte d’autres fournisseurs - c’est la première fois qu’un magasin de la taille
d’Amazon prend une telle mesure.Pourquoi Amazon a-t-il fait ce choix maintenant, surtout quand
les cartes de crédit sont si largement acceptées ? La question est que la technologie vieillissante
des cartes, qui a été conçue pour le monde réel, pose de nombreux problèmes aux entreprises de
commerce électronique.
Amazon a identifié les coûts exorbitants comme le principal facteur, mais d’autres problèmes
tels que la fraude par carte non présentée, l’abandon d’achat et les difficultés de rétrofacturation
sont également une source de préoccupation.
Bien que les paiements par carte soient soumis à d’importantes restrictions, ils restent l’option
de paiement la plus populaire. Pourquoi devrions-nous croire que d’autres mécanismes de paiement
sont prêts à menacer la domination des cartes ?
Lors des achats en ligne, l’open banking offre un avantage. Les paiements effectués à l’aide de
l’open banking sont plus rapides, plus simples et plus sûrs que les paiements par carte. Vous n’avez
pas à saisir physiquement les informations relatives à votre carte de crédit ou à compter sur un site
web pour les conserver pour vous. Il vous suffit de choisir votre banque parmi une sélection et de
confirmer la transaction avec votre identification (le détaillant ne peut pas enregistrer vos informa-
tions de paiement). Cela réduit efficacement la fraude.
— Sont moins coûteux car il n’y a pas de frais de traitement des cartes service aux clients
— Ils se convertissent jusqu’à 40 % mieux que les cartes car ils sont conçus pour une utilisation
numérique et mobile, la procédure est moins laborieuse et les taux de réussite des paiements
sont plus élevés.
C’est dans ce cadre où s’inscrit notre projet de création d’un d’une nouvelle méthode de paie-
ment en ligne basée sur l’Open Banking et la norme ISO 20022 permettant aux marchands d’inté-
grer cette solution comme méthode de paiement au sein de leurs sites E-commerce et piloter leurs
activités depuis leurs tableau de bord marchant ainsi qu’une Sandbox de documentation pour les
développeurs.
1.2.9 Objectifs
Les objectifs de ce projet se traduisent dans la création d’un d’une passerelle de paiement pour
les E-commerçants plus performante et sécurisé mais surtout moins coûteuse et une plate-forme de
monitoring dédiées à ces derniers pour gérer leurs activités d’une manière stratégique et simple afin
d’évoluer leurs business.
Les objectifs majeurs, dont nous avons été mené de réaliser, se résument dans :
— La création d’un tableau de bord conçu pour la visualisons des KPIs métier liées aux activités
du marchant.
— La création d’un portail développeur conçu pour documenter nos APIs et accompagner les
futurs utilisateur à intégrer notre passerelle de paiement dans leurs site web.
— Implémenter des outils de pilotage et monitoring afin de surveiller les machines hébergeant
nos différentes applications.
La nature et la taille du projet sont des critères capitaux afin de déterminer le choix de la mé-
thodologie à suivre.
Par exemple, pour les petits projets maîtrisés, un seul cycle de vie en cascade suffit. Alors que
lorsqu’il s’agit d’un projet où les données ne sont pas collectées dès le départ, où le besoin est in-
complet et peu clair, il faut se tourner vers une approche itérative.
Parmi les méthodes itératives, nous pouvons distinguer les méthodes AGILE largement utilisées
de nos jours à travers le monde.
Une approche AGILE est mise en œuvre dans un esprit collaboratif qui s’adapte aux approches
incrémentales, assurant ainsi une bonne communication avec le client tout en tenant compte de leurs
besoins changeants avec une meilleure visibilité du produit livrable. Elle permet également d’avoir
une gestion permanente de la qualité pour détecter les problèmes dès qu’ils surviennent, permettant
ainsi de prendre des actions correctives sans pénalité de coût et de délais.
Parmi les nombreuses méthodes Agile, l’important n’est pas de choisir la meilleure existante
mais plutôt de sélectionner la plus adaptée à notre projet, à savoir la nature évolutive de notre
projet, nous a orientées vers une méthode de type AGILE et plus particulièrement SCRUM.
Comme représenté dans la figure ci-dessus, pour mettre en place la méthode SCRUM, nous
devons d’abord définir les différentes fonctionnalités de notre application qui forment le backlog du
produit.
Par la suite, nous procédons au sprint planning afin de définir le plan détaillé d’une itération.
Durant un sprint, des réunions quotidiennes entre les différents collaborateurs du projet sont pla-
nifiées dans le but de présenter l’état d’avancement des différentes tâches en cours d’exécution, les
obstacles rencontrés ainsi que les tâches restantes à effectuer. Ces sprints durent généralement deux
à quatre semaines.
1.3.3 Organisation
— Product Owner : C’est le responsable de l’équipe projet client ayant comme mission de définir
le besoin et prioriser les fonctionnalités du backlog en déterminant le sprint goal sur la base
des valeurs qui lui sont communiquées par l’équipe.
— Scrum Master : Il représente le vrai facilitateur du projet, il veille à la bonne application des
principes de la méthodologies Scrum en accompagnant chaque membre de l’équipe afin de
maximiser la valeur créée en éliminant les obstacles et en les protégeant des perturbations
extérieures. Il veille également à l’animation et le bon déroulement de toutes les cérémonies
Agiles.
— L’équipe de Développement : Elle se compose de développeurs qui fournissent un incrément
potentiellement publiable à la fin de chaque Sprint. Cette équipe s’organise elle-même et reste
inchangée pendant toute la durée d’un sprint.
— Intervenants : Ils observent et donnent des conseils à l’équipe.
La planification d’un projet est une étape inévitable, elle représente également le premier chal-
lenge d’un manager ou chef de projet visant à atteindre les résultats souhaités et à répondre aux
attentes des équipes et des individus impliqués dans le projet.
Nous présenterons ci-dessous l’ensemble des outils utilisés durant la planification de notre pro-
jet.
Trello [7] est lancé en 2011 comme un outil open source de gestion de projet en ligne inspiré
par la méthode Kanban de Toyota. Il est basé sur l’aspect des tableaux. D’où la représentation
de chaque projet sou forme d’un tableau qui contient des cartes qui sont les tickets c’est-à-
dire les tâches à faire. Ces cartes sont assignées aux utilisateurs concernés, et elles ont des
champs pour la date de début et de fin et un indicateur coloré pour, déterminer l’avancement
des tickets.
Pour récapituler « Trello » est un outil qui permet de simplifier la gestion de projet et ses
tickets, et permet aussi de mieux visualiser l’avancement et partager l’information entre les
membres de l’équipe.
— Slack :
— OnlineGantt :
OnlineGantt est un logiciel de gestion de projet basé sur un diagramme de Gantt qui
vous permet, à vous et à votre équipe, de créer et de modifier des plans de projet
entièrement intégré à Google.
A l’aide de cet outil nous avons pu créer le diagramme de GANTT, qui nous a permis
de planifier les diverses tâches à accomplir.
Diagramme de GANTT ou diagramme à barres est l’un des outils le plus utilisé de pla-
nification des diverses tâches à accomplir dans le temps constituant un projet.
La construction du GANTT prend en abscisse le temps nécessaire à l’exécution des opé-
rations et en ordonnée les tâches soit les ressources affectées aux différentes opérations.
Nous présentons ci-dessous le diagramme de GANTT illustrant l’ordonnancement des
tâches dans le temps pour notre projet :
— Tableau de Gantt :
Conclusion
Tout au long de ce chapitre, nous avons abordé le contexte général du projet. En commen-
çant en premier lieu par une présentation d’Effyis Group suivi par la compréhension
du problème en deuxième lieu ainsi que la détermination des objectifs du projet.
Finalement, nous avons étalé la démarche de planification de notre projet en citant les
différentes normes assurant un suivi efficace du projet.
Le prochain chapitre est consacré à la présentation des besoins fonctionnels et non fonc-
tionnels et par une analyse de ces besoins en se basant sur les diagrammes de cas d’uti-
lisation d’UML.
CHAPITRE 2
Introduction
Dans ce chapitre, nous allons traiter la partie spécification et analyse des besoins, à tra-
vers l’élaboration d’une étude fonctionnelle des besoins fonctionnels et non fonctionnels
de notre projet.
Ensuite, nous allons présenter la conception de notre application en exposant les diffé-
rents diagrammes de classe et de séquences.
Le but d’un projet est de répondre à un besoin.Les besoins fonctionnels sont alors l’ex-
pression de ce que le service délivré par le projet devrait être ou faire. C’est dans ce
contexte qu’on présente ci-dessous la liste de l’ensemble de ces besoins :
• Mise en place de l’authentification aux différents services coté BackEnd et FrontEnd
• Assurer le processus de paiement de bout en bout depuis le site E-commerce jusqu’à
la banque du marchand.
• Affichage des KPIs et statistiques au niveau du tableau de bord marchand
• Affichage des graphes représentants les statuts des commandes et les canaux de paie-
ments utilisés par les clients
• Affichage de l’historique détaillé des commandes
• Affichage de l’historique détaillé des commissions facturées à la valeur de la tran-
saction
• Décrire en détails les différentes étapes afin d’intégrer les plugins sur des sites E-
commerce (Wordpress, OpenCart, Magento, Prestashop)
• Décrire en détails les différentes étapes afin d’intégrer la solution sur des sites E-
commerce natifs.
• Documenter les différentes APIs au profit des développeurs
En plus des besoins fonctionnels mentionnés ci-dessus, afin de répondre aux besoins des
utilisateurs, le système doit être en mesure de répondre aux besoins non fonctionnels
suivants :
• L’ergonomie et la convivialité : Les applications doivent fournir une interface
simple et conviviale sans aucune exigence préalable, de sorte que tous les types d’uti-
lisateurs puissent l’utiliser.
• La sécurité : Les informations ne sont accessibles qu’après vérification des privi-
lèges des droits d’accès.
Par conséquent, tout utilisateur passera par la phase d’authentification pour se ré-
férer aux services fournis par l’application.
• L’extensibilité : Notre application est fermée à la modification mais ouverte à l’ex-
tension, son architecture permettra le développement et la maintenance de ses dif-
férents modules de manière dynamique.
• Performance : L’optimisation du temps de réponse de notre application ainsi que
le chargement et délai de rafraîchissement.
Pour procéder à l’analyse d’une application, il faut dans un premier temps identifier ses
différents acteurs. En analysant l’interaction du système avec son environnement exté-
rieur, nous avons pu déterminer trois acteurs principaux :
• Client d’un site E-commerce : Déclenche le début du processus de paiement en
procédant au paiement de sa facture
• Marchand : S’authentifie au niveau de son tableau de bord marchant et pilote ses
activités
Le diagramme de cas d’utilisation sert à définir l’interopérabilité qui existe entre le sys-
tème et les acteurs, soit toutes les fonctionnalités devant être fournies par le système.
Ci-dessous, nous présentons les principaux cas d’utilisation de notre système :
Pour mieux comprendre ces fonctionnalités, nous présentons ci-dessous les descriptions
de certains cas d’utilisation :
Pour mieux comprendre ces fonctionnalités, nous présentons ci-dessous les descriptions
de certains cas d’utilisation :
Table 2.4 – Fiche descriptive de "Permet de consulter les taux affectés à chaque canal de paiement
utilisé par les clients"
Table 2.5 – Fiche descriptive de "Permet de consulter les taux affectés à chaque canal de paiement
utilisé par les clients"
Conclusion
Ce chapitre nous a fait établir une étude préliminaire dans le but de déterminer les be-
soins fonctionnels et non fonctionnels de notre projet ainsi que de bien illustrer notre
diagramme de cas d’utilisation.
Ceci servira dans les prochaines étapes de la conception détaillée et de la mise en oeuvre
de l’application.
CHAPITRE 3
ARCHITECTURE DE L’APPLICATION
Introduction
La mise en place d’une architecture logicielle permet de décrire de manière symbolique
les interactions des différents composants d’une application et réponds aux spécifications
fonctionnelles pour la conception du système d’information.
Il existe plusieures architectures coté serveur qui sont très populaire notament l’archi-
tecutre MVC ( Model View Controller), or pour notre cas, cette dernière ne répond pas
au besoin non fonctionnel lié à la performance, scalabilité et la maintenabilité de l’appli-
cation surtout que la non disponibilité et le crash de l’application constitue un blocage
total du sytème. Afin de fournir une solution qui prend en charge ces besoins techniques,
nous avons choisi d’adopter une architecture basée sur les microservices.
Définition :
L’architecture microservice consiste à décomposer l’application en plusieurs services
indépendants, chacun avec sa propre base de données et qui communiquent les uns avec
les autres de manière synchrone basée sur les API REST, ou bien de manière asyn-
chrone qui consiste à l’envoie de message dans une file d’attente RabbitMQ ou bien en
utilisant des Brokers comme celui de Kafka.
En effet, NETFLIX est considéré comme l’un des pionniers de l’architecture microservice
vue que son équipe de développement a mis en place Netflix OSS (Open Source Soft-
ware Center) qui contient plusieurs projet parmi eux on cite Spring Cloud Netflix qui
fournit des intégrations pour les applications Spring Boot [10].
Caractéristiques :
L’architecture microservices permet de développer une application modulaire non mo-
nolithique et qui doit avoir les caractéristiques suivants :
• Service exposé par une API : Chaque service doit avoir une API qui va lui per-
mettre de communiquer et de recevoir les données des autres services, cette api doit être
documentée et stable.
Architecture de l’application :
Ainsi l’architecture adopté pour notre projet, qui contient les microservices suivant :
• Gateway : C’est l’entrée principale du back end qui contient tous les microser-
vices déployés, elle joue le rôle d’intermédiaire entre le client (front end ) et le back end
(ensemble des microservices ) . Elle permet de faire le routage entre la requête reçue du
front end et le microservice destinataire. Ainsi elle peut être considérée comme un outil
de gestion de trafic et surveillance de l’application.
• Platform : C’est un service qui a pour objectif de préparer le message ISO SEPA
d’initiation du paiement Pain.001 sous format JSON.
• Switch : C’est le service qui englobe la partie AISP et PISP, il gère le processus de
paiement et la communication avec les banques partenaires.
Nous allons voir en détail ces différents outils technologiques dans le cinquième et der-
nier chapitre : Mise en oeuvre.
Le déploiement de notre application vers une machine distante s’est fait grâce à un ser-
veur physique IBM au sein du cabinet , il fallait créer un VPS (Virtual Private Server).
Sa mise en place a été faite par une stagiaire sécurité et infrastructure.
Le back-end est composé de plusieurs entités qui sont dépendantes les unes des autres
dockerisées et qui permettent la fluidité de transport des données jusqu’au client, ainsi,
tout client accédant au site via le lien sécurisé avec le nom de domaine fournie par un
DNS, communique avec le serveur Web via des requêtes HTTPS qui à son tour répond
au client avec du contenu statique (des pages HTML, des fichiers, des images ...).
Le serveur d’applications prend en charge la logique métier et permet donc de gérer les
parties interactives du site qui peuvent apparaître différemment selon le contexte de la
demande.
Le serveur est lancé dans une machine virtuelle Cent OS 7, pour notre cas, on a choisi
d’installer java 8, la norme de production privilégiée.
Pour accéder à la machine distante, on se connecte en utilisant un client SSH en utilisant
la clé fournie par l’équipe infrastructure, l’adresse IP publique et nom d’utilisateur.
Pour la base de données PostgreSQL, on a choisi d’utiliser Docker avec des volume afin
d’assurer la persistance des données.
Conclusion
En conclusion, le présent chapitre nous a donc permis de bien connaître la structure de
notre application avec ses différents composants.
Cela dans le but de pouvoir établir le plan technique que nous allons suivre par la suite
pour satisfaire les besoins techniques et fonctionnels de l’application.
CHAPITRE 4
CONCEPTION
Introduction
Au cours de ce chapitre, nous mettrons en évidence le coté conceptuel de notre applica-
tion qui constitue une étape indispensable précédant la partie de l’implémentation.
En effet, elle nous permettra de détailler les différents diagrammes de classe et scénarios
à mettre en oeuvre dans la phase suivante.
— Microservice «Switch» C’est un micro-service qui gère tous ce qui est paiement
et interfaçage avec la banque, à savoir les processus AISP et PISP pour ainsi offrir
des services liés à l’agrégation des comptes ou bien établir des paiements en ligne.
Figure 4.4 – Diagramme de Séquence de la génération d’un piechart représentant les status des
commandes.
Le diagramme de classe ci-dessous illustre les différentes classes qui s’interagissent entre
elles afin de définir la logique du service Ecom.
Le diagramme de classe ci-dessous illustre les différentes classes qui s’interagissent entre
elles afin de définir la logique du service Switch.
4.2 Conclusion
Ce chapitre nous a ainsi permis de bien comprendre et modéliser les différents compo-
sants de notre application. Cela va nous aider à répondre aux besoins fonctionnels et
techniques de l’application.
CHAPITRE 5
MISE EN OEUVRE
Introduction
Ce chapitre est consacré à la réalisation du projet. La première partie est consacrée aux
outils et technologies utilisés pour la mise en œuvre de la solution. La partie suivante est
consacrée à la présentation des interfaces graphiques réalisées.
Spring Cloud fournit des outils pour créer rapidement certains des modèles pour les sys-
tèmes distribués (Gestion de configuration, Service Discovery, Routage ,Load Balancing,
Gateway et proxy, clusturisation ...). Ainsi avec une architecture distribué, le système
fonctionne bien dans n’importe quel environnement sois localement, dans le cloud en
implémentant les patterns spécifiques aux architectures microservice .
5.1.2 React JS :
React (également connu sous le nom de React.js ou ReactJS) est une boîte à outils JavaS-
cript frontale gratuite et open-source permettant de créer des interfaces utilisateur basées
sur des composants. Elle est gérée par Meta (anciennement Facebook) et une commu-
nauté de développeurs individuels et de sociétés. Avec des frameworks comme Next.js,
React peut être utilisé comme base pour développer des applications monopages, mo-
biles ou avec rendu serveur. Cependant, comme React ne s’occupe que de la gestion de
l’état et de la présentation de ces informations au DOM, le développement d’applications
React nécessite souvent l’utilisation de bibliothèques supplémentaires pour le routage et
certaines fonctions côté client.
5.1.3 Material UI :
Material-UI, en quelques mots, est un projet open-source qui comprend des composants
React appliquant le Material Design de Google. Il a débuté en 2014, juste après la sortie
de React au public, et sa popularité n’a cessé de croître depuis. Material-UI est l’un des
frameworks d’interface utilisateur React les plus populaires, avec plus de 35 000 étoiles
sur GitHub. Son triomphe, cependant, ne s’est pas fait sans difficultés. Material-UI v0.x,
qui a été conçu avec LESS, était sujet à des erreurs CSS de base, telles que la portée
globale, ce qui a conduit le projet sur la voie du CSS-in-JS. En 2016, c’est ainsi qu’est né
next.
5.1.4 ApexCharts :
ApexCharts est une bibliothèque de graphiques gratuite et open source qui permet de
créer des graphiques sur un application Web. Cette bibliothèque fournit fonctionnalités
puissantes pour répondre aux besoins de visualisation de données parmis eux on peut
citer : L’aspect reactive pour tous les écrans soit ordinateurs de bureau, aux tablettes ou
mobiles, des graphes qui sont interactive est dynamique, la performance pour l’affichage
en masse des données ...
5.1.5 PostreSQL :
JUnit 5 est la prochaine génération de JUnit. L’objectif est de créer une base à jour pour
les tests côté développeur sur la JVM. Cela inclut de se concentrer sur Java 8 et versions
ultérieures, ainsi que de permettre de nombreux styles de test différents.
Mockito est un framework Java qui permet de générer automatiquement des objets mo-
ckés. Ainsi avec JUnit, il permet de tester le comportement des objets réels qui sont as-
sociés à des objets mockés ce qui facilite l’écriture des tests unitaires.
Visual Studio Code est un éditeur de code extensible développé par Microsoft pour
Windows, Linux et macOS2. Les fonctionnalités incluent la prise en charge du débogage,
la mise en évidence de la syntaxe, la complétion intelligente du code, les snippets, la
refactorisation du code et Git intégré. Les utilisateurs peuvent modifier le thème, les rac-
courcis clavier, les préférences et installer des extensions qui ajoutent des fonctionnalités
supplémentaires.
5.1.9 Postman :
Postman est un environnement de développement d’API qui aide les utilisateurs à créer,
documenter, surveiller et publier la documentation de leurs APIs. Il est devenu très popu-
laire pour tester les Microservices, notamment grâce à sa simplicité et ses fonctionnalités
très spécialisées.
Les tests des API sont utilisés pour déterminer si les API retournent la réponse correcte
(dans le format attendu) pour une large gamme de requêtes réalisables, réagissent cor-
rectement aux cas de bords tels que les échecs et les entrées inattendues/extrêmes, four-
nissent des réponses dans un délai acceptable et répondre en toute sécurité aux attaques
de sécurité potentiels.
5.1.10 Gitlab :
GitLab Inc. est une organisation à but non lucratif qui fournit GitLab, un progiciel De-
vOps qui intègre la capacité de construire, protéger et exécuter des logiciels dans une
seule application. Le développeur ukrainien Dmitriy Zaporozhets et le développeur néer-
landais Sytse Sijbrandij ont fondé ce projet de logiciel open source. Le logiciel GitLab a
été initialement créé en Ruby, certains composants ayant ensuite été réécrits dans le lan-
gage de programmation Go. Il a commencé comme un système de gestion du code source
pour la collaboration d’équipe sur le développement de logiciels, puis s’est développé en
une solution intégrée couvrant le cycle de vie du développement de logiciels, et enfin
l’ensemble du cycle de vie DevOps. Go, Ruby on Rails et Vue.js sont des exemples de
technologies logicielles modernes.
5.1.11 Grafana :
Grafana Grafana est une solution open source permettant d’effectuer des analyses de
données, d’extraire des métriques qui donnent un sens à l’énorme quantité de données
et de surveiller nos applications à l’aide de tableaux de bord personnalisables. Grafana
se connecte à toutes les sources de données possibles, communément appelées bases de
données, telles que Graphite, Prometheus, Influx DB, ElasticSearch, MySQL, PostgreSQL,
etc. Grafana étant une solution open source, il nous permet également d’écrire des plu-
gins à partir de zéro pour l’intégration avec plusieurs sources de données différentes.
L’outil nous aide à étudier, analyser et surveiller les données sur une période de temps,
ce qui est techniquement appelé analyse de séries chronologiques. Il nous aide à suivre le
comportement de l’utilisateur, le comportement de l’application, la fréquence des erreurs
qui apparaissent dans un environnement de production ou de pré-prod, le type d’erreurs
qui apparaissent et les scénarios contextuels en fournissant des données relatives.
5.1.12 Prometheus :
— Interface d’accueil : C’est la première interface qui représente une vue générale
du contenu du siteWeb et ses différentes sections.
— Interface Intégration des CMS : C’est l’interface qui englobe les documentations
de notre Sandbox à savoir la documentation des APIs et des plugins.
Figure 5.24 – Interface Consulter le chiffre d’affaire, le panier moyen mensuel et les balances
Figure 5.25 – Interface consulter le chiffre d’affaire de l’année et la semaine sous forme d’un Bar-
Chart
Figure 5.26 – Interface consulter les statuts des commandes et canaux de paiement utilisé sous forme
de PieChart
— Interface consulter la liste des commandes détaillée sous forme d’un tableau
paginé : C’est l’interface qui nous permet de visualiser les détailles de chaque com-
mande avec la possibilité de filtrer le résultat par date, canal et statut de commande.
Figure 5.27 – Interface consulter la liste des commandes détaillée sous forme d’un tableau paginé
Figure 5.28 – Interface consulter la liste des commandes détaillée sous forme d’un tableau paginé
et filtré par statut et date
Figure 5.29 – Interface consulter l’historique détaillé des commissions facturées sous forme d’un
tableau paginé
Chacun des services développés est muni d’une interface pour la documentation
permettant de bien exploiter les fonctionnalités fournies par chaque service.
Pour ce faire, nous nous servons de l’outil pour la documentation Swagger et ci-
dessous nous exposons comme exemple la documentation relative au service Ecom
et Platform.
Figure 5.36 – Interface récapitulatif de la transaction avant la redirection vers le site de la banque
Figure 5.40 – Interface redirection vers la page "paiement effectué avec succès"
5.3 Conclusion
Ce chapitre a permis de montrer le produit de notre travail, nous y avons vu les différents
outils de réalisation ainsi que des captures d’écran de nos applications.
CONCLUSION GÉNÉRALE
Ce projet de fin d’études chez Effyis Group a constitué pour nous une importante étape
de notre cursus universitaire, nous permettant de franchir le pas vers le monde profes-
sionnel, tout en participant à la réalisation d’un projet de monétique innovant.
La mission qui nous a été confiée était de concevoir un prototype d’une nouvelle pas-
serelle de paiement Next-Gen plus souple, sécurisé, et rapide basée sur l’open banking
et la norme ISO 20022 ainsi qu’un tableau de bord marchant ou ce dernier peut piloter
son activité et consulter les différentes métriques et graphes générées afin de prendre des
décisions stratégiques.
Cette expérience nous a notamment permis de découvrir une large panoplie d’outils et
de documents, avec pour objectif leur conversion en des produits rentables sur le long
terme. Par ailleurs, nous avons pu apprendre à adapter notre savoir-faire aux exigences
d’un éventuel client, mais aussi à élaborer des livrables qui soient consommables et faciles
à déployer.
Ce stage a été une chance unique pour nous de pouvoir travailler sur un véritable projet
d’une grande ampleur, mais aussi de développer nos compétences dans le cadre d’un tel
projet. Le présent projet fait partie d’une nouvelle tendance dans le domaine des moyens
de paiement, qui engendre un fort besoin d’outils de paiement électronique efficaces, et
permettant au commerce électronique de pouvoir en bénéficier.
Durant la période de stage j’ai pu couvrir 80% des objectifs eu préalable. En ce qui
concerne les futures perspectives, nous prévoyons d’établir une série de tests de charge
et de performance en se basant sur l’outil Jmeter et de de mettre en place une infra-
structure monitoré à travers un APM tel que Instana d’IBM et automatiser le build et le
déploiement à travers un pipeline CI/CD pour ainsi voir notre projet intégrer par la suite
non seulement les banques européenne mais des banques africaines et américaines aussi.
Nous souhaitons également améliorer notre projet grâce à des outils mettant en œuvre
l’intelligence artificielle et la vision par ordinateur.
2021/2022 PFE
GL ENSIAS
BIBLIOGRAPHIE
[9] Material UI
https://mui.com/material-ui/getting-started/overview/
2021/2022 PFE