Thierry
Seunevel |
Réalisations |
|
Accueil > Réalisations EAI > Interface CB
Interface AS/400-transactions cartes bancaires
|
Mots-clés |
. AS/400
. RPG
. X25
|
|
|
|
Objectif |
|
Permettre de réaliser les différentes transactions carte bancaire directement à partir des applications AS/400, et en particulier, demandes d'autorisation et paiement, annulations et avoirs. L'interface avec ces fonctions devait être simple à intégrer dans les programmes applicatifs, et donc être mise en œuvre au travers d'un CALL.
|
|
Contexte |
|
Go Voyages, un des principaux acteurs dans le domaine de la réservation aérienne de vols charters et réguliers, enregistre une partie des règlement carte bancaire par téléphone. Ces transactions devaient jusqu'alors être composées sur des terminaux de paiement traditionnels.
|
|
Contraintes |
|
Nécessité de respecter (scrupuleusement) le protocole défini par le prestataire (Atos), et d'utiliser les API de communication 'User Defined Communication'.
Besoin de journaliser toutes les transactions pour faire face à toute contestation.
|
|
Réalisation |
|
Réalisation de programmes RPGIII assurant les fonctionnalités demandées, avec en particulier :
Utilisation de l'API UDP :
L'API utilise une série de formats de données de contrôle. Les données à émettre et les réponses reçues sont placées dans des Userspace, et la synchronisation des communications est assurée au moyen de Dtaq.
Mise en œuvre du protocole Atos :
L'échange de données doit respecter une séquence précise, comportant l'émission de données de contrôle, puis des messages applicatifs. Les données doivent être écrites en ASCII, en parité paire, avec calcul d'un CRC (Code de redondance cyclique calculé à partir de l'ensemble des caractères composant le message).
|
|
Technologies mises en oeuvres |
|
Programmation RPG, avec utilisation des API de gestion des Userspace, Dtaq, API de communication UDP, traduction entre jeux de caractères (QDCXLATE), opérations sur les bits, lignes X25.
|
|
|
© Thierry Seunevel (2004) |
www.seusoft.com |
|
|
|
|