Retour

VibeFox Moneris for PrestaShop — Aide

Prérequis

PrestaShop: 8.0 à 9.x.

PHP: 8.0 ou ultérieur avec l'extension SimpleXML. Le module refuse de s'installer sur les anciennes versions de PHP ou sans SimpleXML.

Devise de la boutique: CAD pour un compte canadien Moneris, USD pour un ancien compte Moneris USA. Le mode de paiement n'est affiché que lorsque la devise du panier correspond à la devise du compte.

HTTPS et PCI DSS: les numéros de carte sont saisis sur votre page de paiement et transitent par votre serveur. Les paiements réels exigent HTTPS et la conformité PCI DSS SAQ D. Si vous ne pouvez pas la respecter, utilisez plutôt une solution de page de paiement hébergée.

Compte Moneris: vous avez besoin du Store ID et de l'API Token de votre boutique Moneris Gateway, dans le Moneris Merchant Resource Center > Admin > Store Settings. Pour les tests, la boutique de test publique de Moneris est renseignée par défaut. Les identifiants de test et les cartes de test se trouvent sur le portail développeurs de Moneris.

Clé de licence VibeFox: achetée sur vibefox.net. Une clé fonctionne sur un seul domaine.

Installation

1. Dans le back office, allez dans Modules > Module Manager et cliquez sur Upload a module. Choisissez le fichier ZIP du module.

2. Une fois le téléversement terminé, cliquez sur Configure, ou retrouvez plus tard VibeFox Moneris Gateway dans la liste des modules et cliquez sur Configure.

3. Saisissez votre clé de licence VibeFox dans le champ License key du bloc de licence en haut de la page Configure et cliquez sur Activate (voir Clé de licence).

4. Choisissez le pays du compte et saisissez le Live Store ID et le Live API Token. Le mode test est activé par défaut et utilise la boutique de test publique (store5 / yesguy pour le Canada, monusqa002 / qatoken pour les États-Unis).

5. Choisissez Purchase ou Pre-Authorization et les logos de carte, activez ensuite Enable / Disable et cliquez sur Save.

6. Passez une commande de test avec une carte de test Moneris, puis désactivez Test mode.

À l'installation, le module crée deux statuts de commande : Moneris payment authorized et Moneris payment on hold. PrestaShop active le nouveau module de paiement pour toutes les devises, tous les pays et tous les groupes de clients. Vous pouvez restreindre ces réglages dans Payment > Preferences.

Configuration

Tous les réglages se trouvent sur la page du module : Modules > Module Manager > VibeFox Moneris Gateway > Configure. Chaque section a son propre bouton Save, qui enregistre toute la page. Au-dessus des champs, la page affiche Moneris gateway is in TEST MODE. No real charges will be made. tant que le mode test est activé. En mode réel, elle vous avertit si les champs réels contiennent des identifiants de test Moneris (le mode de paiement est alors masqué sur la page de paiement) et si SSL n'est pas activé pour la boutique. Elle vous avertit aussi si la devise par défaut de la boutique n'est pas celle du compte Moneris ; le mode de paiement est alors masqué sur la page de paiement pour les autres devises.

Moneris

Enable / Disable: Enable Moneris Gateway active ou désactive le mode de paiement. Par défaut: désactivé.

Title: le nom du mode de paiement affiché au client. C'est aussi le nom du mode de paiement enregistré dans la commande. Par défaut: Credit card (Moneris). En mode test, (Test Mode) est ajouté au titre. Obligatoire.

Description: le texte affiché au-dessus des champs de carte sur la page de paiement. Par défaut: Pay securely with your credit card.

Compte Moneris

Votre Store ID et votre API Token se trouvent dans le Moneris Merchant Resource Center, sous Admin > Store Settings. Les identifiants de test et les cartes de test se trouvent sur le portail développeurs de Moneris. La section contient des liens vers les deux.

Pays du compte Moneris: les comptes canadiens débitent en CAD, les comptes américains en USD. Le mode de paiement n'est affiché que si la devise du panier correspond. Par défaut: Canada (CAD).

Canada (CAD): un compte Moneris Canada.
United States (USD, legacy Moneris USA accounts): un compte Moneris USA.

Test mode: utilise la passerelle QA de Moneris et les identifiants de test ; aucun débit réel n'est effectué. Les captures, annulations et remboursements sont toujours envoyés à l'environnement dans lequel le paiement a été effectué. Les clients voient TEST MODE: use a Moneris test card, no real charges are made. au-dessus des champs de carte. Par défaut: activé.

Live Store ID: le Store ID de production, par exemple monca01234.

Live API Token: l'API Token de production.

Test Store ID: la boutique de test publique de Moneris : store5 (Canada) ou monusqa002 (États-Unis). Par défaut: store5.

Test API Token: le jeton de test public : yesguy (Canada) ou qatoken (États-Unis). Par défaut: yesguy.

Les API tokens enregistrés ne sont jamais réaffichés. Le champ reste vide et affiche Saved — leave empty to keep it. Saisissez une nouvelle valeur uniquement si vous voulez la modifier.

Clear saved tokens: cochez un token et cliquez sur Save pour le supprimer. Un champ vide conserve la valeur enregistrée.

Paiement

Transaction type: la façon dont la carte est débitée. Par défaut: Purchase.

Purchase (charge immediately): la carte est débitée à la passation de la commande. La commande reçoit le statut Payment accepted.
Pre-Authorization (capture later): les fonds sont seulement réservés et la commande reçoit le statut Moneris payment authorized. Capturez-les avec Capture payment dans le bloc Moneris de la commande, ou en passant la commande à un statut payé (Paiement accepté, Expédié, Livré). L'annulation de la commande libère les fonds.

Card logos: les marques de carte affichées avec le mode de paiement sur la page de paiement : Visa, Mastercard, Discover, American Express, JCB. Les marques acceptées dépendent de votre compte Moneris. Par défaut: Visa et Mastercard.

Avancé

Debug log: journalise les requêtes et réponses de l'API dans logs/wc_mng_debug.log.php du dossier du module. Le fichier ne peut pas être ouvert depuis le web. Le numéro de carte, le CVV, la date d'expiration et l'API token sont masqués. Les erreurs sont toujours journalisées, même lorsque l'option est désactivée. Par défaut: désactivé.

Log: affiche la taille et les dernières entrées du journal. Cliquez sur Clear log pour le vider.

Delete data on uninstall: si cette option est activée, la désinstallation du module supprime les réglages de la passerelle et le journal. Les données Moneris des commandes (nécessaires aux remboursements) et les statuts de commande sont toujours conservés. Par défaut: désactivé.

Page de paiement

À l'étape de paiement, le client choisit le mode de paiement (par défaut Credit card (Moneris)) et saisit Card number, Expiry (MM/YY) et Card code (CVC) dans le formulaire de carte situé sous l'option. Les trois champs sont obligatoires. Lorsque la commande est passée, votre serveur envoie la carte à Moneris pour le total du panier et obtient le résultat immédiatement. Il n'y a ni redirection ni webhook. Les données de carte ne servent qu'à cette requête ; elles ne sont jamais enregistrées, et le journal n'affiche que les quatre derniers chiffres.

La commande n'est créée qu'à partir d'une réponse approuvée de Moneris. Le client voit ensuite la page standard de confirmation de commande. Avec Pre-Authorization, la commande attend dans Moneris payment authorized jusqu'à ce que vous capturiez les fonds. Si Moneris a traité un montant différent du total du panier, ou si le panier a changé pendant le paiement, la commande est créée dans Moneris payment on hold avec une note.

Si la carte est refusée, le client reste sur la page de paiement avec Your card was declined et la raison donnée par Moneris, et peut vérifier les données de sa carte ou utiliser une autre carte. Aucune commande n'est créée. Si Moneris n'a pas pu traiter la requête (par exemple un Store ID ou un API Token incorrect), le client voit The payment could not be processed. Please try again or use another payment method. La raison est inscrite dans le journal. Les champs de carte incorrects donnent des messages courts, comme Invalid card number. ou Invalid card expiry date., et rien n'est envoyé à Moneris.

Un deuxième clic ou un deuxième onglet du navigateur pendant qu'un paiement est en cours affiche A payment for this order is already being processed. Please wait a moment and check your order status before trying again. Un panier qui a déjà une commande n'est jamais débité à nouveau ; le client est redirigé vers la commande existante.

Si Moneris ne répond pas (erreur réseau ou délai dépassé), le module envoie à Moneris un Status Check avec le même identifiant de commande Moneris pour savoir si la transaction a abouti. Si Moneris n'a aucune transaction de ce type, le client peut payer à nouveau. Si le Status Check ne reçoit pas non plus de réponse, la commande est créée dans Moneris payment on hold avec l'identifiant de commande Moneris, et le client n'est pas invité à payer une seconde fois.

Le module ne prend en charge ni cartes enregistrées ni Moneris Vault, ni abonnements, ni Apple Pay, Google Pay ou Interac Online, ni Moneris Checkout ou Hosted Tokenization, ni 3-D Secure, AVS ou Kount, ni tarification en plusieurs devises.

Commandes et remboursements

Statuts de commande

No order yet: la carte a été refusée ou n'a pas été traitée. Seuls le panier et la tentative existent dans le journal. Le client peut payer à nouveau.

Payment accepted: l'achat a été approuvé. Le paiement est enregistré avec le numéro de transaction Moneris comme ID de transaction.

Moneris payment authorized: une préautorisation a été approuvée et attend la capture. Aucun paiement n'est encore enregistré.

Moneris payment on hold: le montant traité différait du total du panier, le panier a changé pendant le paiement, Moneris n'a pas confirmé le résultat, ou PrestaShop a enregistré un statut payé alors que la capture avait échoué. Les notes l'expliquent. Pour un achat avec un montant différent, le paiement est enregistré avec le montant traité par Moneris.

Canceled: pour une commande préautorisée, l'annulation libère les fonds réservés (void).

Refunded: le paiement a été entièrement remboursé via le module.

Bloc de paiement Moneris

La page de commande affiche un bloc Moneris payment avec l'identifiant de commande Moneris, le pays et le mode du compte, un badge Test mode pour les paiements de test, le Trans ID (et le Trans ID de la préautorisation après une capture), le type de transaction et son état (non capturée, capturée ou libérée), le reçu et le type de carte, le montant traité, le total de la commande et le montant remboursé, l'historique des remboursements et les Moneris notes de la commande. Pour un paiement non confirmé, le bloc vous demande de rechercher l'identifiant de commande Moneris dans le Merchant Resource Center. Toutes les actions du bloc ne nécessitent que le droit de modifier les commandes.

Capture et annulation

Pour capturer une préautorisation, cliquez sur Capture payment dans le bloc et confirmez, ou passez la commande à un statut payé comme Paiement accepté, Expédié ou Livré. Le total de la commande, moins les remboursements, est capturé ; il ne peut pas dépasser le montant autorisé. Après une capture avec le bouton, la commande passe en Payment accepted ; le paiement est enregistré avec le Trans ID de la capture. Si Moneris refuse la capture, le statut ne change pas, aucun e-mail de statut payé n'est envoyé et une note l'explique : Status not changed: the Moneris pre-authorization could not be captured, suivi de la raison. Les préautorisations Moneris expirent après quelques jours ; capturez-les donc à temps.

Pour libérer les fonds, cliquez sur Void pre-authorization (cancel order) ou passez la commande au statut Annulée. Passer la commande au statut Remboursée libère aussi une préautorisation ouverte. Si la libération échoue, une note vous demande de la libérer dans le Merchant Resource Center.

Remboursements

Dans le bloc Moneris payment, saisissez le montant (le montant non encore remboursé est prérempli), éventuellement un motif, puis cliquez sur Refund via Moneris. Confirmez la question Refund this amount through Moneris? This cannot be undone. Les remboursements totaux et partiels sont pris en charge. Les remboursements sont limités au montant réellement débité par Moneris ; après un écart de montant, vous pouvez donc rembourser jusqu'au montant payé par le client, et non le total de la commande. Une préautorisation ne peut être remboursée qu'après sa capture ; avant cela, annulez la commande pour libérer les fonds. Le remboursement est envoyé à l'environnement et au compte dans lesquels le paiement a été effectué ; les identifiants de ce mode doivent donc rester renseignés. Si Moneris n'accepte pas le remboursement, le bloc affiche Refund failed avec la raison et aucun remboursement n'est enregistré. Un remboursement réussi est ajouté à l'historique des remboursements et aux notes, avec le Trans ID Moneris. Un remboursement total passe la commande en Refunded ; un remboursement partiel ne modifie pas le statut.

Le module ne crée pas d'avoirs. Les boutons de remboursement standard de PrestaShop sur la page de commande ne renvoient pas d'argent via Moneris.

Clé de licence

Le module fonctionne avec une clé de licence VibeFox obtenue sur vibefox.net. Le bloc de licence License — VibeFox Moneris Gateway est le premier bloc de la page Modules > Module Manager > VibeFox Moneris Gateway > Configure, au-dessus des réglages. Saisissez la clé dans License key et cliquez sur Activate. Ensuite, le bloc affiche la clé masquée, le statut (par exemple la date jusqu'à laquelle la licence est active et votre domaine) ainsi que les boutons Check now pour vérifier à nouveau le statut, Change key pour saisir une autre clé et Remove key pour supprimer la clé de cette boutique. En dessous figurent la ligne Product: presta-payment-moneris et le lien Manage licenses and domains in your account, qui ouvre votre compte vibefox.net. Seuls les employés disposant de l'autorisation Configure pour le module peuvent modifier la clé. Les textes du bloc suivent la langue du back office (l'anglais et le russe sont inclus).

Si la clé n'est pas acceptée, le bloc indique la raison, par exemple Key not found, This key belongs to another product, Domain limit reached ou License expired on suivi d'une date. Après un changement d'adresse de la boutique, ou après avoir libéré un emplacement de domaine dans votre compte, cliquez sur Check now. Si le serveur de licences est injoignable, le module continue de fonctionner avec le dernier statut connu.

Une clé fonctionne sur un seul domaine : le domaine de la boutique principale, y compris dans une configuration multiboutique. Supprimer la clé de la boutique ne libère pas son emplacement de domaine. Libérez-le dans votre compte vibefox.net.

Sans clé active, Moneris n'est pas affiché aux clients sur la page de paiement. Si un paiement est tout de même lancé, le client voit This payment method is not available. Please choose another one. La vitrine PrestaShop ne sait pas que vous êtes connecté au back office : le mode de paiement est donc masqué pour vous aussi. Vous pouvez configurer le module avant d'acheter une clé, mais pas le tester sur la page de paiement. Un rappel apparaît dans Modules > Module Manager, sur l'onglet Alerts. Les commandes existantes ne sont pas affectées : les captures, annulations et remboursements des paiements antérieurs fonctionnent.

Lorsqu'une licence expire, le module continue de fonctionner, mais les mises à jour et l'assistance nécessitent un renouvellement. Le statut est vérifié à nouveau automatiquement pendant votre travail dans le back office : une fois par jour pendant les 14 premiers jours après la saisie de la clé, puis une fois par semaine. Aucune tâche cron n'est nécessaire. La désinstallation ou la réinitialisation du module supprime toujours la clé de licence et le statut de licence.

Dépannage

Moneris n'apparaît pas sur la page de paiement: vérifiez que la licence est active, que Enable / Disable est activé et que le mode actuel dispose d'un Store ID et d'un API Token. En mode réel, les champs réels doivent contenir vos identifiants de production, et non des identifiants de test Moneris. Vérifiez que la devise du panier est celle du compte : CAD pour le Canada, USD pour un compte américain. Dans Payment > Preferences, vérifiez que le module est autorisé pour cette devise, le pays du client et le groupe du client.

Le paiement a abouti, mais la commande est en Moneris payment on hold: le module n'a pas de webhook ; le résultat provient uniquement de la réponse de Moneris. Lisez les Moneris notes du bloc. Si Moneris n'a pas confirmé le résultat, c'est que Moneris n'a pas répondu et que le Status Check a aussi échoué. Recherchez l'identifiant de commande Moneris dans le Merchant Resource Center : si la transaction s'y trouve, expédiez la commande (et remboursez-la là-bas si nécessaire) ; sinon, annulez la commande ou demandez au client de payer à nouveau. Si le montant était différent, vérifiez la commande et traitez-la, ou remboursez le paiement.

Le client voit Payment gateway is misconfigured. Please contact the store administrator.: les identifiants du mode actuel sont manquants, ou le mode réel est activé avec des identifiants de test Moneris dans les champs réels. Saisissez votre Store ID et votre API Token de production.

Le client voit This payment method does not support the order currency.: la devise du panier n'est pas la devise du compte Moneris.

Le client voit une erreur lors du paiement: consultez le champ Log de la page du module. Les erreurs sont toujours enregistrées ; activez Debug log pour voir les requêtes et réponses complètes.

La capture échoue: la commande n'a pas de préautorisation en attente de capture, le total de la commande est nul, ou le montant est supérieur au montant autorisé. Les préautorisations Moneris expirent aussi au bout de quelques jours.

Le remboursement, la capture ou l'annulation échoue avec un message sur le mode ou le compte: le paiement a été effectué en mode test ou réel, et les identifiants de ce mode ne sont pas renseignés, ou le paiement a été effectué avec un compte Moneris de l'autre pays. Saisissez les identifiants, ou traitez le paiement dans le Merchant Resource Center.

Attaques par test de cartes: les formulaires de carte directs sont la cible des tests de cartes. Utilisez les règles eFraud ou de vélocité de votre compte Moneris, ainsi qu'un module CAPTCHA ou de limitation de débit pour votre boutique.

Désinstallation

Allez dans Modules > Module Manager, ouvrez le menu à côté de VibeFox Moneris Gateway et choisissez Uninstall. La clé de licence et le statut de licence de ce module sont toujours supprimés. Si Delete data on uninstall est activé, les réglages de la passerelle et le journal sont supprimés. S'il est désactivé, tous les réglages sont conservés pour une réinstallation ultérieure. Les transactions et remboursements Moneris ainsi que les statuts de commande Moneris payment authorized et Moneris payment on hold sont toujours conservés ; les commandes payées auparavant peuvent donc encore être capturées ou remboursées après une réinstallation. Les commandes existantes conservent leurs notes de paiement et leurs identifiants de transaction.

Moneris est une marque de son propriétaire respectif. Ce module n'est ni affilié à Moneris ni approuvé par Moneris.