You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 14 Next »

Ce module permet de lier Logistics au terminal de paiement de Banksys. Cela veut dire que l'utilisateur ne doit plus indiquer manuellement le mode de paiement d'une vente. Si on choisit paiement par carte dans l'écran de paiement, Logistics envoie le montant de la transaction vers le terminal, et une fois la transaction terminée, Logistics reçoit le montant payé automatiquement dans la case du mode de paiement utilisé par le client. Ainsi, les erreurs d'inversions des modes de paiement deviennent quasi nulles.

Le module Gestion d'un terminal Banksys est une extension du module Y (Module Gestion des paiements). Dans le string des modules, il faut avoir : B6.

Sur cette page:

Prérequis

Protocole utilisé : VIC 1.07

Terminal de paiement Banksys compatible avec ce protocole : XENTA, YOMANI.

Le terminal Banksys doit être branché à l'aide d'un câble disponible chez banksys au numéro suivant : 02/727.88.99
Veuillez donc bien vérifier si ce câble existe chez votre client.
Voici les références disponibles de ces câbles :

Référence non blindé :
2m - 230 140 23 93
5m - 530 140 03 93

Référence Blindé :
5m - 530 140 54 37

Voici la configuration pour le port COM :

  • Asynchronous
  • Full duplex
  • 1 start bit, 8 data bits, 1 stop bit
  • Parity : None
  • Speed : 9600 bps
  • Physical encoding method : Non Return to Zero (NRZ)
  • Byte serialisation : Least Significant Bit (LSB) first

En cas de problème, les spécialistes de chez Banksys pour les terminaux sont disponibles au 02/727.66.33

Liaison vers le terminal de paiement Banksys

Fonctionnement

Il faut préalablement installer le SrvTerminal sur le PC qui sera physiquement connecté au terminal via le port série. SrvTerminal est une petite application de type service qui va tourner en tâche de fond sur cet ordinateur. Le SrvTerminal sera identifié par cette icône :

Celle-ci viendra s'ajouter aux services déjà actifs que l'on peut trouver à côté de l'horloge du système :

Ce service va pouvoir recevoir des fichiers de transactions à effectuer. Le PC qui fait une demande de transaction ne doit pas forcément être le poste sur lequel le service tourne, c'est-à-dire le poste où le terminal est connecté physiquement. Ainsi, plusieurs postes caisses peuvent travailler avec un terminal de paiement unique. Les transactions envoyées au service terminal seront traitées l'une après l'autre, nous avons donc ici la possibilité d'avoir une file d'attente pour les transactions à effectuer.

Liaison vers le terminal de paiement Banksys

Installation du SrvTerminal

Pour faire tourner SrvTerminal, il faut préalablement installer une DLL qui s'appelle bc_int.dll.
Cette DLL a été écrite en C sharp (C#), dès lors, pour que cette DLL tourne, il faut avant tout installer le Microsoft.NET FrameWork. Une fois ce FrameWork installé, il faut copier cette DLL dans le répertoire Windows/System32 (si système en 64 bit, copier dans le répertoire Windows/SysWOW64) et l'enregistrer.

Concrètement, voici les étapes à suivre pour installer SrvTerminal et sa DLL bc_int.dll

Installation du FrameWork Microsoft.NET

Téléchargez le Framework Microsoft .NET 4.0.

Une fois installé, vous devriez avoir un répertoire comme ceci :
C:\windows\Microsoft.NET\FrameWork\v4.x.xxxxx
Le numéro de version du framework v4.x.xxxxx peut varier.

Installation et enregistrement de la DLL

  1. Téléchargez le fichier ZIP qui contient cette DLL.

  2. Dézippez le contenu de ce fichier dans le répertoire c:\windows\system32
    (2 fichiers y seront copiés : Int_BC.dll et Int_BC.tlb)

  3. Pour enregistrer cette DLL dans la base de registre de Windows, 2 solutions sont possibles (manuelle ou automatisée) :

    • Solution manuelle

      En commande dos prompt, se placer dans le directory où se trouve le FrameWork C# (exemple : C:\windows\Microsoft.NET\FrameWork\v4.x.xxxxx)

      Lancer la commande DOS suivante :

      REGASM /codebase /tlb c:\windows\system32\int_bc.dll

      Pour un désenregistrement, la commande qu'il faudrait exécuter serait la même mais avec /u à la fin.

      Résultat :

    • Solution automatisée (via Logistics/Flex)

      Cliquez sur le bouton Enregistrement du composant

Installation de l'application SrvTerminal

  1. Si la version installée de Flex/Logistics est supérieure ou égale à 4.0.6, télécharger la version 1.8 du SrvTerminal.
    Si la version installée de Flex/Logistics est inférieur à 4.0.6, télécharger la version 1.6 du SrvTerminal.

  2. Sur le disque dur, créez un nouveau répertoire srvterminal : c:\srvterminal.

    Veuillez créer le répertoire srvTerminal au même niveau que le répertoire qui va recevoir les fichiers de transactions (voir plus loin le paramètre POS_TERMINAL_PAY_PATH)
    Exemple, si le répertoire des fichiers des transactions est c:\Banksys alors créez c:\srvTerminal.

  3. Dans ce répertoire, dézippez le contenu du fichier srvterminal.zip que vous venez de télécharger.

  4. Voilà, le service est quasi prêt à l'emploi ! Une chose reste à faire, introduire 2 paramètres dans le fichier srvterminal.ini. Ouvrez ce fichier avec le bloc note de windows :



    1. Veuillez créer le répertoire sur votre disque dur : C:\Banksys

    2. Il vous reste donc à indiquer sur quel port com le terminal est connecté, et où se trouve le répertoire où les fichiers de transactions vont être placés par Flex/Logistics (voir le paramètre POS_TERMINAL_PAY_PATH à créer du côté de Flex/Logistics pour modifier ce chemin). Indiquez C:\Banksys comme répertoire de transaction, POS_TERMINAL_PAY_PATH aura donc comme valeur C:\Banksys aussi. En Terminal serveur, on aurait donc : \\TSCLIENT\C\Banksys

  5. Si toutes les étapes ont été respectées, le service peut à partir de maintenant démarrer.
    En cas de problème, une fenêtre s'ouvre pendant 5 secondes avec l'explication du problème, et ensuite se referme.



    Les 2 messages d'erreurs possibles sont :
    • Terminal.CTerminal' (DLL) can't be initialised, please register it...
    • Directory error, check if exist : xxxxxxxxxxx

Liaison vers le terminal de paiement Banksys

Paramétrage du terminal de paiement Banksys

Une dernière chose importante, il faut activer au niveau du terminal Banksys l'option qui indique à ce dernier que c'est désormais une application externe connectée qui va envoyer les informations des transactions à réaliser. Voici ci-dessous la procédure à suivre (procédure qui nous a été communiquée par la société Banksys).

Instruction Banksys
  • (Only on a new terminal) Press <STOP> + <OK>
  • Press <MENU>
  • Choose 3. Terminal Setup
  • Choose 0. Technician only
  • Password : 1235789 + <OK>
  • Choose 4. Hardware Settings
  • Choose 2. ECR Protocol Ou Kassa Protocol
  • Choose 'CHANGE' with the keys below the screen
  • Choose 4. NVIC TICKET TERM + <OK>
  • Choose TERM-PRINTER
  • Press <STOP> 4 times.
Instruction Banksys YOMANI
  • (Only on a new terminal) Press <STOP> + <OK>
  • Press <MENU>
  • Choose 3. Terminal Setup
  • Choose 0. Technician only
  • Choose 9.
  • Password : 1235789 + <OK>
  • Choose 4. Hardware Settings
  • Choose 2. ECR Protocol Ou Kassa Protocol
  • Choose VIC (ou NVIC) Protocol + <OK>
  • Press <STOP> several times.

Réinitialisation

Pour revenir à la situation initiale, au lieu de 4 - NVIC TICKET TERM indiquer 0 - PAS DE CAISSE

MENU sur nouveau terminal

Avec un nouveau terminal Banksys (affichage couleurs), après l'avoir configuré en liaison caisse, il faut préalablement faire <STOP> + <OK> rapidement pour accéder au menu.

Paiement manuel

Une fois la liaison installée, un paiement peut encore être transmis totalement manuellement sur le terminal à condition qu'il dispose d'un côté terminal VENDEUR. Pour cela, il faut faire <STOP> + <OK> puis Type et choisir le type de carte de paiement. Un paiement par Bancontact peut donc être réalisé comme cela, ainsi que par carte de crédit pour autant que le terminal dispose d'une imprimante.

Mise à jour du terminal

  • (Only on a new terminal) Press <STOP> + <OK>
  • Press <MENU>
  • Choose 3
  • Choose 0
  • Choose 9
  • Password : 1235789 + <OK>
  • Choose 1
  • Choose 5
  • Choose 3

Liaison vers le terminal de paiement Banksys

Paramétrage de Flex/Logistics

Rappel, il faut avoir B6 dans le string des modules au niveau de la licence.

Dans le paramétrage général, onglet Options, paramètre Options Point de Vente, paramètre Utilisation de l'interface POS, une nouvelle case à cocher apparaîtra : Gestion d'un terminal de paiement. Il faut la cocher et re-démarrer l'application.

Paramétrage des modes de paiements

Paramétrez la Table Modes de paiement via le menu Fichier > Tables > Tiers > Modes de paiement.

Introduisez la liste des modes de paiements que le magasin accepte au niveau des paiements par carte.

Pour rappel, le mode de paiement cash doit avoir le numéro d'ordre 1. Voir Table Modes de paiement.

Pour les modes de paiements par carte, ils ont un numéro d'ordre supérieur à 1, et il FAUT indiquer un numéro dans l'Identifiant pour le terminal de paiement. Voici la liste à respecter, veuillez introduire les numéros suivants.

Si le message ci-dessous s'affiche lorsqu'un paiement est effectué avec le terminal, alors un mode de paiement doit être ajouté dans la table des modes de paiement en remplissant l'Identifiant pour le terminal de paiement avec le numéro indiqué dans ce message d'erreur.

Il est également conseillé de créer un mode de paiement Autre et de lui donner comme identifiant le chiffre 999. De cette manière, si le client passe une carte acceptée par le terminal mais que le mode de paiement correspondant n'existe pas dans la table des modes de paiements, Logistics introduira le montant dans cette case. On pourra ensuite adapter la table des modes de paiement après avoir identifié le mode de paiement qui ne serait pas introduit dans Logistics.

Mode de paiement

ID

 

Mode de paiement

ID

 

Mode de paiement

ID

Bancontact/MisterCash

128 Pass promo 2101 Carwash74
Maestro127 TINA100 E-voucher73
Proton (load)126 EIC99 Loyalty card72
Proton (purchase)125 Exxon98 Pay Fair71

Visa

124

 Cora Xenta97 Sodexo e-Pass70

Eurocard Mastercard

123

 Pass promo 396 Ticket Restaurant (Edenred)69

American Express

122

 Pass promo 495 Reserved68

Dinners Club

121

 Pass promo 594 Reserved67

JBC

120

 Pass promo 693 

Bancontact/MisterCash EMV (SEPA)

66

National Company

119

 Pass promo 792 Emergency fallback (TINA EMV)65
International Company118 

Pass promo 8

91 KADOZ64
FNAC117 Pass promo 990 AtosWorldline WL63
Smart Shopper116 Pass promo 1089 RES62
M-BANXAFE115 Pass promo 1188 Yourgift61
Visa Electron114 Pass promo 1287 Giftcard60
Cirrus113 Pass promo 1386 ORES59
Visa Cash112 Pass promo 1485 Cartes Bancaires58
Clip111 Pass promo 1584 Basic Card57
Aurora110 Pass promo 1683 CCV Card56

 

109

 Visa VPAY82 Equens WL55
 108 EZSwitch81 Chèque54
SIS BPA Application107 Chipknip80 Travelcard53
Eloyse Application I and II106 BANK79 Smart Pay52
Pass CREDIT (PLC)105 GIRO78 UnionPay51
Pass CASH (PLC)104 EPWS77 Multi User50
Pass103 Comfort card (CMFC)76 Closed User49
Pass promo 1102 Prime line (PRLI)75   

L'écran de paiement dans Logistics est désormais un peu différent :

Tous les modes de paiement autres que Cash sont grisés. Quand le client paie son achat avec une carte, l'utilisateur va lancer la transaction en appuyant sur Carte bancaire.

Logistics demandera confirmation du montant de la transaction (au cas où le paiement par carte serait partiel).

Fichiers de transaction

Logistics génère alors un fichier de transaction dans le répertoire : c:\Banksys

Répertoire des fichiers de transaction

  • Pour définir ce chemin, il existe un paramètre général à créer dans le dossier via le menu Fichier > Tables > Générales > Paramètres. Le paramètre à créer s'appelle POS_TERMINAL_PAY_PATH et dans le champ mémo, introduisez entre guillemets le chemin complet où Logistics doit enregistrer ce fichier de transaction.
  • Ce chemin peut aussi être défini dans le fichier Logistics.ini de la workstation via le même paramètre POS_TERMINAL_PAY_PATH. Le chemin défini dans le fichier INI est prioritaire sur le paramètre général introduit dans Logistics.
  • En Terminal Server (Module TS), il est possible de définir ce chemin dans le fichier LogisticsRemote.ini via le paramètre TERMINALPAYPATH. Le chemin défini dans ce fichier INI à distance est prioritaire sur le fichier INI local et sur le paramètre général introduit dans Logistics. Ce fichier INI est par défaut situé dans le répertoire \\TSCLIENT\C\WINBOOKS\LOGISTICS\. Ce répertoire peut être changé dans le paramètre général TS_PROGRAM_REMOTE_DIR_PATH via le menu Fichier > Tables > Générales > Paramètres. Tout le processus de lecture de ce fichier INI à distance peut parfois provoquer des ralentissements. Pour éviter ces ralentissements, ce processus de lecture peut ne plus être réalisé en mettant la valeur .F. pour le paramètre général LKUP_REMOTE_DIR_PATH.

Ce fichier sera traité immédiatement par le service srvterminal (pour autant qu'il n'y ait pas d'autres transactions dans la file d'attente).

Une fois la transaction traitée, le fichier sera déplacé soit dans le sous-répertoire Error en cas de problème, soit dans Processed si le paiement est bien passé.

Un fichier de transaction se présente comme ceci :

Le répertoire HistLog contient l'historique de toutes les informations qui ont été affichées dans l'écran de paiement dans la partie verte qui affiche l'état d'avancement de la transaction engagée.

Un fichier est créé par année et par mois.

Dans l'écran de paiement, un bouton Mode Manuel a été ajouté afin de pouvoir à tout moment repasser en mode manuel, c'est-à-dire que l'opérateur devra introduire manuellement le montant payé dans la bonne case ! Ce bouton n'est utile que dans le cas où il y aurait un problème de communication entre l'application Flex/Logistics et le SrvTerminal.

Codes d'erreur

CodeErreur
0000Result OK
 Result Unknown
5015Transaction status forwarded to external device without interpretation by the terminal(credit card)
 Request not taken into account terminal busy
4009Bad protocol state(terminal busy with the previous action)
 Result Not Ok
1501Technical Problem
1503Entered amount invalid
1504iep_host_id not valid
1505pur_id_ac_pub error
1506purse in red list
1508purse is locked for credit
1509purse is locked for debit
1512Purse expired
1513ICC state error
1516recovery error
1517purse key identifier error
1518purse balance is too large
1520pur_id_ext_ac_pub error
4001No purse in reader and time out expired
4002No validation by the customer and time out expired
4004Request aborted by the VMC
4005Insufficient purse balance
4006Bad value in a field
4008Invalid message length
4010Application not supported
4011Time-out on fallback card reading
5001Technical problem
5002Rejection by the host
5003Double operation (consecutive transactions with same amount and same card)
5004Technical problem at host level
5005Unrecoverable problem
5006Stop customer
5008Invalid currency
5009Rejection by the terminal
5010Communication problem (wrong phone nr,...)
5011Rejection of balance request (only C-ZAM/SMASH/PTI)
5012Floor limit exceeded (credit card)
5013Transaction refused by the terminal in EMV mode (credit card)
5014Transaction refused by the card (credit card)
5016The „Maximal Transaction Number per (Calendar) Month‟ is reached
5017The maximal number of uncollected journals in terminal reached
5018Service TINA (already) activated
5019Service TINA (already) deactivated
5020Acquirer does not support service activation
5021Maximum transaction records is reached
5022Maximum number of TINA activation reached
5023Amount higher than authorized amount
5024Problem linked to card
7000-7999Incident codes for Added Application

Liaison vers le terminal de paiement Banksys

  • No labels