ID TECH
Contact
Tous les articles techniques

Article technique

Outils pour l'intégration de terminaux de paiement : UDemo

Les développeurs d'applications de paiement qui souhaitent accélérer l'intégration des lecteurs de cartes ID TECH dans leurs systèmes de point de vente (ou autres) peuvent progresser rapidement en tirant parti du SDK universel d'ID TECH. Le SDK fournit des bibliothèques (ainsi qu'une API commune) permettant de piloter l'ensemble des lecteurs de cartes ID TECH en production actuelle, y compris les lecteurs à puce (EMV), à piste magnétique (MSR) et sans contact, dans plusieurs langages (tels que C# pour Windows, Java pour Android, Swift pour iOS et C pour Linux).

Il n'est toutefois pas nécessaire d'installer le SDK pour exécuter le programme de démonstration associé, une application autonome que nous appelons la démo universelle, ou UDemo (en abrégé). Vous pouvez obtenir l'UDemo (version autonome pour Windows) en vous rendant ici.

Nous recommandons à tous nos clients développeurs de se familiariser avec l'application UDemo, car elle illustre en détail la structure des requêtes et réponses brutes échangées avec le terminal, permet de configurer un appareil avec des paramètres spécifiques, et offre un environnement d'expérimentation où les développeurs peuvent facilement tester différentes commandes avec diverses valeurs d'arguments, en temps réel. UDemo est également un excellent moyen d'approfondir ses connaissances sur EMV.

Après avoir exécuté le programme d'installation de l'UDemo, lancez l'application. Une fenêtre similaire à celle-ci s'affichera :

Gardez à l'esprit que vous pouvez brancher n'importe quel lecteur de cartes ID TECH compatible sur le port USB de votre ordinateur à tout moment : il sera automatiquement détecté par l'UDemo. Une fois le terminal reconnu, l'arborescence des commandes (voir « COMMANDS » ci-dessus) se peuplera des commandes propres à l'appareil concerné (affichant, par exemple, un groupe « CTLS » si le terminal prend en charge les interactions sans contact, « EMV » s'il prend en charge les transactions par carte à puce EMV en contact, etc.).

La procédure d'utilisation de base est la suivante :

  1. Branchez un terminal.
  2. Parcourez l'arborescence des commandes jusqu'à trouver la commande qui vous intéresse.
  3. Double-cliquez sur la commande dans l'arborescence, OU cliquez une fois sur le bouton vert Execute Command en bas de la fenêtre.
  4. Consultez le volet Journal pour visualiser les requêtes et les réponses. (Les valeurs envoyées à l'appareil sont indiquées par « OUT », tandis que les valeurs reçues de l'appareil sont indiquées par « IN ».)
  5. Consultez le volet Résultats (à droite) pour obtenir une explication en langage clair de ce qui s'est produit.

Dans la capture d'écran ci-dessus, la commande Start EMV Transaction a été exécutée (sur un lecteur de carte ID TECH VP3300) avec le montant de transaction par défaut de 1,00 $. La commande effectivement exécutée est affichée en haut du Journal. Quatre réponses « IN » ont été reçues de l'appareil. La première réponse était un accusé de réception (ACK), et les deux réponses « IN » suivantes contiennent des informations d'état représentant des messages LCD (comme « Traitement en cours… ») qui peuvent devoir être affichés sur un terminal de point de vente pendant le déroulement de la transaction. Le quatrième et dernier « IN » contient un bloc de données TLV (tag-length-value) renvoyé par le lecteur. Certaines des analyses TLV sont affichées dans le volet Résultats.

Conseils pour UDemo

UDemo est un outil hautement interactif qui s'apprend avant tout par la pratique. Pour gravir la courbe d'apprentissage un peu plus rapidement, il peut être utile de prendre connaissance des points suivants :

  1. De nombreuses commandes acceptent des valeurs d'argument ou peuvent être configurées d'une certaine façon avant d'être exécutées. Il suffit de cliquer une fois sur une commande dans la liste des commandes. Si la commande concernée peut accepter des valeurs supplémentaires, des champs de formulaire appropriés apparaîtront automatiquement juste au-dessus du volet Journal. Renseignez les valeurs éventuellement requises, puis double-cliquez sur la commande pour l'exécuter avec ces valeurs.
  2. Le pavé numérique virtuel situé en haut à droite devient actif lorsque la carte insérée dans le lecteur requiert la saisie d'un code PIN comme l'une de ses méthodes de vérification du titulaire de carte.
  3. Juste au-dessus de la liste des commandes se trouve un bouton intitulé Decryption. Cliquez sur ce bouton pour ouvrir une boîte de dialogue permettant de déchiffrer les données de transaction.
  4. Sous le volet Journal, vous trouverez un bouton Start Capture to Disk (ainsi qu'un bouton Clear Logs et un bouton Email Logs to Support). Le bouton Start Capture est utile lorsque vous souhaitez enregistrer les données d'une session pour les analyser ultérieurement. Vous pouvez même nous envoyer vos résultats par e-mail (via le bouton Email Logs) si vous décidez d'ouvrir un dossier auprès du support technique.

Avant d'exécuter une transaction EMV

Bien entendu, UDemo n'est qu'un outil de test et n'est pas en mesure de débiter une transaction réelle sur une carte de crédit, mais il simulera les trois phases (Démarrage, Authentification et Finalisation) d'une session EMV par contact. Toutefois, avant de pouvoir exécuter des commandes de transaction, le lecteur de carte devra faire l'objet d'au moins quelques configurations. (Sans cela, la simulation échouera.)

Vous pouvez configurer un appareil rapidement (avec des valeurs par défaut raisonnables) en exécutant trois commandes :

  1. Tout d'abord, sous le nœud AID de l'arborescence des commandes, recherchez Load Default AID et exécutez-le. Il s'agit en réalité d'une opération par lot qui chargera une demi-douzaine d'AID courants dans l'appareil. Comptez environ dix secondes.
  2. Ensuite, sous le nœud CAPK de l'arborescence de commandes, repérez la commande Load Default CAPK et exécutez-la. Il s'agit également d'une commande par lot qui prendra quelques secondes. Elle charge les clés publiques de différentes marques de cartes, utilisées pour valider les artefacts cryptographiques produits par une carte à puce lors d'une transaction. (ATTENTION : ces clés sont destinées aux tests uniquement et ne doivent pas être utilisées en production. Obtenez les clés de production auprès de votre passerelle de paiement ou de votre processeur de paiement.)
  3. Enfin, sous le nœud Terminal Config de l'arborescence de commandes, repérez et exécutez Save Terminal Data. Cette opération chargera des TLV par défaut appropriés pour le lecteur, afin de prendre en charge les différentes fonctionnalités du terminal.

Une fois ces commandes exécutées, le lecteur de carte contiendra les données par défaut appropriées, et des commandes telles que Start Transaction devraient fonctionner sans erreur.

Pour en savoir plus

L'application UDemo offre bien entendu de nombreuses fonctionnalités, trop nombreuses pour être toutes décrites ici. Le meilleur moyen d'obtenir plus d'informations ? Regardez dans le coin inférieur gauche de l'écran UDemo (voir l'illustration ci-dessus) et repérez le bouton rose Documentation . En cliquant sur ce bouton, un PDF s'ouvrira dans Acrobat Reader (à condition que ce logiciel soit installé sur votre machine), affichant le Guide de démarrage rapide d'UDemo.

Pour comprendre la signification de tous les octets hexadécimaux affichés dans UDemo, vous souhaiterez probablement consulter le guide API de bas niveau (firmware) correspondant à votre lecteur. Vous pouvez généralement le télécharger directement depuis la section Downloads de notre base de connaissances publique (sans inscription requise). Certains documents sont toutefois disponibles sur demande uniquement ; dans ce cas, n'hésitez pas à contacter votre représentant ID TECH, qui vous fournira les documents concernés gratuitement.

Vous avez des questions sur l'Universal SDK ou sur l'un des produits ID TECH Products ? Contactez nos experts à l'adresse 1-800-984-1010!