Retour

VibeFox Viva Wallet for OpenCart — Aide

Prérequis

OpenCart : 3.0.x (testé avec la version 3.0.5.0) ou 4.0.2 et ultérieur (testé avec la version 4.1.0.3).

PHP : 8.0 ou ultérieur.

Compte Viva : un compte marchand Viva. Vous pouvez utiliser un compte de démonstration (demo.vivapayments.com) pour les tests et un compte réel (www.vivapayments.com) pour les paiements réels. Chaque compte a ses propres identifiants. Pour les paiements, vous avez besoin des identifiants Smart Checkout (Client ID et Client Secret) et du Source Code d'une source de paiement. Le Merchant ID et l'API Key sont facultatifs : ils servent uniquement à répondre à la vérification de l'URL du webhook par Viva.

Devise : EUR, GBP, PLN, RON, BGN, CZK, HUF, DKK, SEK, NOK ou CHF. La devise choisie par le client dans la boutique doit être l'une d'elles ; dans les autres devises, le mode de paiement est masqué au moment du paiement.

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

Installation

Le téléchargement est un fichier zip unique contenant les paquets pour les deux versions d'OpenCart. Décompressez-le sur votre ordinateur. Il contient README.txt, le paquet OpenCart 3 wcp_viva_gateway-oc3-(version).ocmod.zip et le paquet OpenCart 4 wcp_viva_gateway.ocmod.zip. Installez uniquement le paquet correspondant à votre version d'OpenCart. La clé de licence est la même pour les deux versions.

OpenCart 3

1. Dans l'administration, allez dans Extensions > Installer, cliquez sur Upload et choisissez le fichier wcp_viva_gateway-oc3-(version).ocmod.zip. L'extension n'a aucune modification OCMOD, donc Extensions > Modifications n'a pas besoin d'être actualisé. Au lieu de l'installateur, vous pouvez aussi copier le contenu du dossier upload de ce paquet dans le dossier racine de votre boutique.

2. Allez dans Extensions > Extensions et choisissez le type Payments. Repérez VibeFox Viva Wallet Gateway et cliquez sur Install (le bouton vert +). Votre utilisateur administrateur doit avoir le droit de modifier la liste des extensions de paiement.

3. Cliquez sur Edit (le bouton crayon) pour ouvrir la page des réglages. Saisissez votre clé de licence VibeFox dans License key, dans le bloc de licence en haut de la page, puis cliquez sur Activate (voir License key).

4. Saisissez les identifiants du compte de démonstration et/ou du compte réel Viva, puis configurez la source de paiement et le webhook dans votre compte Viva (voir Configuration).

5. Activez Enable/Disable et cliquez sur Save. Effectuez un paiement de démonstration avec une carte de test Viva tant que Test Mode est activé, puis désactivez Test Mode pour passer en production.

OpenCart 4

1. Dans l'administration, allez dans Extensions > Installer, cliquez sur Upload et choisissez le fichier wcp_viva_gateway.ocmod.zip. Ne renommez pas le fichier : OpenCart 4 prend le code de l'extension dans le nom du fichier, et un paquet renommé ne fonctionne pas.

2. Le paquet apparaît dans la liste des extensions installées sur la même page. Cliquez sur Install (le bouton vert +) à côté.

3. Allez dans Extensions > Extensions et choisissez le type Payments. Repérez VibeFox Viva Wallet Gateway, cliquez sur Install (le bouton vert +), puis sur Edit (le bouton crayon).

4. Saisissez la clé de licence, les identifiants Viva, la source de paiement et le webhook comme aux étapes 3 à 5 pour OpenCart 3. La page des réglages et ses champs sont les mêmes dans les deux versions. Seules les adresses du compte Viva diffèrent (voir Configuration).

Une nouvelle installation démarre avec le mode de paiement désactivé et le mode test activé.

Configuration

Tous les réglages se trouvent sur la page de l'extension : Extensions > Extensions > Payments > VibeFox Viva Wallet Gateway > Edit. Les sections sont listées à gauche ; le bouton Save sous la liste enregistre toute la page. Au-dessus des réglages, la page vous avertit lorsque le mode actuel n'a pas de Client ID, de Client Secret ou de Source Code (Viva Wallet is hidden at checkout until the Demo Client ID, Client Secret and Source Code are entered., ou Live en mode réel) et lorsque la devise par défaut de la boutique n'est pas prise en charge. Tant que le mode test est activé, elle affiche Test mode is on: payments go to the Viva demo environment. Sans le droit de modifier l'extension, la page affiche les réglages mais ne peut pas les enregistrer.

À l'enregistrement, Title ne doit pas être vide et doit comporter au plus 128 caractères (Enter a title for the payment method (at most 128 characters).), Sort Order doit être un nombre entier (Sort Order must be a whole number.), Total doit être un nombre supérieur ou égal à 0 (Total: enter a number, 0 or greater.), et la zone géographique ainsi que les statuts de commande sélectionnés doivent exister ; sinon, rien n'est enregistré et la page affiche l'erreur. L'enregistrement des réglages supprime les jetons d'accès Viva mis en cache, afin que les nouveaux identifiants soient utilisés immédiatement.

Viva Wallet

Enable/Disable: Enable Viva Wallet payment gateway active ou désactive le mode de paiement. Par défaut : off.

Title: le nom du mode de paiement que voient les clients au moment du paiement. C'est aussi le nom enregistré dans la commande. Par défaut : Viva Wallet. Obligatoire, 128 caractères au maximum.

Description: le texte affiché au client à l'étape Confirm Order, au-dessus du bouton de confirmation. Par défaut : Pay securely with Viva Wallet — cards, Apple Pay, Google Pay and more.

Test Mode: utilise l'environnement de démonstration de Viva (demo.vivapayments.com). Les nouveaux paiements et les appels à l'API utilisent les identifiants du compte de démonstration. Aucun argent réel n'est débité, et à l'étape Confirm Order les clients voient (Test mode: use Viva demo cards, no real money is charged.) Par défaut : on. Désactivez-le pour accepter de vrais paiements avec le compte réel. Les paiements déjà effectués continuent d'être vérifiés et remboursés dans l'environnement où ils ont eu lieu.

Sort Order: la position de Viva Wallet parmi les modes de paiement au moment du paiement. Laissez vide ou saisissez un nombre entier ; les nombres négatifs sont autorisés.

Geo Zone: ne proposer Viva Wallet que pour les adresses de facturation de la zone géographique sélectionnée. Par défaut : All zones. Les zones géographiques se configurent dans System > Localisation > Geo Zones.

Total: le total du paiement, dans la devise par défaut de la boutique, que doit atteindre une commande pour que Viva Wallet soit proposé : un nombre supérieur ou égal à 0. Laissez vide pour le proposer quel que soit le total.

Demo account (test mode) and Live account

Les deux sections ont les mêmes champs : un jeu pour le compte de démonstration, un autre pour le compte réel. Dans votre compte Viva, ouvrez Settings > API Access et copiez les identifiants Smart Checkout (Client ID, Client Secret), le Merchant ID et l'API Key. Le Source Code se trouve dans Sales > Online payments > Websites / apps.

Client ID (Demo) / Client ID (Live): le Client ID OAuth 2.0 Smart Checkout du compte. Nécessaire pour les paiements.

Client Secret (Demo) / Client Secret (Live): le Client Secret OAuth 2.0 Smart Checkout du compte. Nécessaire pour les paiements.

Source Code (Demo) / Source Code (Live): le code à 4 chiffres de la source de paiement du compte. Ses URL de succès et d'échec doivent pointer vers cette boutique (voir ci-dessous). Nécessaire pour les paiements.

Merchant ID (Demo) / Merchant ID (Live): facultatif. Sert uniquement à répondre à la vérification de l'URL du webhook par Viva.

API Key (Demo) / API Key (Live): facultatif. Sert uniquement à répondre à la vérification de l'URL du webhook par Viva.

Les Client Secret et API Key enregistrés ne sont jamais réaffichés. Le champ reste vide et affiche Saved — leave empty to keep it. Ne saisissez une nouvelle valeur que pour la modifier.

Clear saved secrets: à la fin de la section Live account. Cochez un secret enregistré et cliquez sur Save pour le supprimer. Un champ vide conserve la valeur enregistrée.

Return URLs and webhook

Addresses for the Viva account: ce champ affiche les trois adresses de votre boutique à saisir dans le compte Viva. Elles sont construites à partir de l'adresse de la vitrine de votre installation OpenCart et ressemblent, sur OpenCart 3, à https://your-store/index.php?route=extension/payment/wcp_viva_gateway/success&, https://your-store/index.php?route=extension/payment/wcp_viva_gateway/fail& et https://your-store/index.php?route=extension/payment/wcp_viva_gateway/webhook, et sur OpenCart 4 à https://your-store/index.php?route=extension/wcp_viva_gateway/payment/wcp_viva_gateway.success&, https://your-store/index.php?route=extension/wcp_viva_gateway/payment/wcp_viva_gateway.fail& et https://your-store/index.php?route=extension/wcp_viva_gateway/payment/wcp_viva_gateway.webhook. Copiez-les exactement comme les réglages les affichent. Le & à la fin des adresses de succès et d'échec est nécessaire : Viva ajoute la transaction à l'adresse, et sans lui OpenCart répond par une page introuvable.

Payment source: dans Sales > Online payments > Websites / apps, créez une source de paiement pour le domaine de votre boutique, dans chaque compte que vous utilisez. Comme Success URL et Failure URL, saisissez les chemins qui suivent le domaine dans les adresses de succès et d'échec.

Webhook: dans Settings > API Access > Webhooks, ajoutez l'adresse du webhook pour ces événements :

Transaction Payment Created: un paiement a été effectué. Obligatoire.
Transaction Failed: une tentative de paiement a échoué. Facultatif.

Viva vérifie l'URL avant de l'enregistrer. L'extension répond avec la clé de vérification de votre compte : elle la récupère avec le Merchant ID et l'API Key du mode actuel, ou utilise la clé saisie ci-dessous. Les webhooks confirment les paiements même lorsque le client ferme son navigateur. Les webhooks Viva ne sont pas signés, donc l'extension ne fait jamais confiance au webhook seul : chaque paiement est vérifié avec l'API Viva avant que la commande reçoive son statut. Sans webhook, une commande ne reçoit un statut que lorsque le client revient dans la boutique après avoir payé.

Webhook Verification Key: facultatif. Laissez vide pour récupérer la clé automatiquement avec le Merchant ID et l'API Key du mode actuel, ou collez ici la clé de vérification de votre compte Viva.

Order statuses

OpenCart crée la commande à l'étape Confirm Order sans statut (une commande manquante). La commande ne reçoit un statut qu'après la vérification du paiement Viva. Les champs de statut listent vos statuts de commande OpenCart.

Order Status After Payment: le statut attribué à une commande payée. Il est appliqué immédiatement, en un seul changement de statut.

Default (Processing status): le statut de Processing Status (par défaut).
Processing: identique, le statut de Processing Status.
Completed: le statut de Complete Status.
On Hold: le statut de On Hold Status, pour une vérification manuelle de chaque commande payée. Le paiement reste enregistré.

Processing Status: le statut d'une commande payée pour Default et Processing. Par défaut : Processing.

Complete Status: le statut d'une commande payée pour Completed. Par défaut : Complete.

On Hold Status: le statut d'une commande payée pour On Hold, et d'une commande dont le paiement Viva ne correspond pas au montant ou à la devise de la commande (retenue pour vérification, non payée ; la note indique la raison). Par défaut : Pending, car OpenCart n'a pas de statut On hold. Vous pouvez créer votre propre statut dans System > Localisation > Order Statuses et le sélectionner ici.

Cancelled Order Status: un paiement Viva reçu pour une commande dans ce statut ne la rouvre jamais ; une note vous demande de rétablir la commande ou de rembourser le paiement. L'extension ne définit jamais ce statut. Par défaut : Canceled.

Refunded Status: défini lorsque le paiement est entièrement remboursé depuis l'onglet de la commande. Un paiement ultérieur ne rouvre pas non plus une telle commande. Par défaut : Refunded.

Advanced Settings

Brand Color: un code couleur HEX à 6 chiffres pour la page de paiement Viva, par exemple 0000ff. Un # initial est supprimé. Laissez vide pour la couleur par défaut. Toute autre valeur n'est pas enregistrée : le reste des réglages est enregistré, et la page affiche Brand Color must be a 6-digit HEX code (e.g. 0000ff). The previous value was kept.

Debug Logging: écrit les requêtes API dans viva_wp_debug.log.php, dans le dossier des journaux d'OpenCart (storage/logs, sur OpenCart 4 system/storage/logs). Le fichier ne peut pas être ouvert depuis le web. Les clés, jetons et données clients ne sont pas journalisés. Les erreurs sont toujours journalisées, même si cette option est désactivée. Par défaut : off.

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

Delete Data on Uninstall: si activé, la désinstallation de l'extension supprime les réglages de la passerelle et le journal. Les commandes et leurs données de paiement (tentatives de paiement Viva, remboursements) ne sont jamais supprimées. Par défaut : off.

Import / Export

Export: Download JSON enregistre les réglages dans un fichier JSON. Les secrets ne sont pas exportés.

Import: collez un JSON exporté précédemment et cliquez sur Import pour restaurer les réglages. Les secrets enregistrés sont conservés.

Paiement

À l'étape Payment Method, le client choisit le mode de paiement (par défaut Viva Wallet). À l'étape Confirm Order, le client voit votre description et la note You will be redirected to the secure Viva Wallet payment page (cards, Apple Pay, Google Pay and more). OpenCart crée la commande à cette étape, toujours sans statut. Sur OpenCart 4, le client choisit le mode de paiement avec le bouton Choose du bloc des modes de paiement, dans la fenêtre Payment method options, et clique sur Confirm Order au bas de la page de paiement. Lorsque le client clique sur Confirm Order, l'extension crée une commande de paiement Viva pour le total de la commande dans la devise de la commande, et envoie le client sur la page Smart Checkout de Viva, avec votre Brand Color si elle est définie. Là, le client paie avec l'un des moyens activés dans votre compte Viva. L'e-mail, le nom, le téléphone, le pays et la langue de la boutique du client sont transmis à Viva. Le paiement apparaît dans Viva sous OpenCart # suivi du numéro de commande, et il est décrit au client par Order, le numéro de commande, at et le nom de votre boutique. La commande de paiement Viva expire au bout de 30 minutes.

Après le paiement, le client revient dans votre boutique. La commande n'est marquée payée qu'une fois Viva l'a confirmée : l'extension relit la transaction depuis l'API Viva, au retour du client comme sur réception du webhook. La commande reçoit ensuite son statut de la manière standard d'OpenCart, avec les e-mails habituels de commande et la mise à jour du stock, et le client voit la page de confirmation de commande d'OpenCart. Si le paiement n'est pas encore confirmé, une page Payment confirmation affiche We are waiting for Viva Wallet to confirm your payment. You will receive an e-mail as soon as it is confirmed. avec les boutons Check again et Back to checkout. Le panier est conservé jusqu'à la confirmation du paiement ; le webhook définit le statut de la commande dès que Viva confirme. Sur OpenCart 4, lorsque le client revient de la page Viva, une courte page intermédiaire rouvre l'adresse de retour de votre boutique, afin que le panier et la session du client soient conservés.

Si le paiement échoue ou si le client annule sur la page Viva, la commande reste sans statut et le panier est conservé. Le client revient au paiement avec The Viva Wallet payment was not completed. Please try again or choose another payment method. ou The Viva Wallet payment was cancelled. You can try again or choose another payment method. et peut payer à nouveau. Chaque nouvelle tentative crée une nouvelle commande de paiement Viva. Un panier n'est payé qu'une seule fois : si le panier est déjà payé par une autre commande du même paiement, le client est directement redirigé vers la page de succès. Sur OpenCart 4, ces messages s'affichent au-dessus de la page de paiement. OpenCart 3 crée une nouvelle commande chaque fois que l'étape Confirm Order est affichée, OpenCart 4 met à jour la commande du paiement. Un changement du panier, y compris une nouvelle quantité, compte comme un nouveau panier qui nécessite son propre paiement.

OpenCart 4 garde la commande dans le paiement jusqu'à l'affichage de la page de succès. Après un paiement échoué ou annulé, le client paie de nouveau la même commande avec une nouvelle commande de paiement Viva. Si cette commande a été close entre-temps (par exemple parce que vous l'avez annulée), ou si elle a été payée pour un panier qui a changé depuis, le client est renvoyé au paiement avec This order can no longer be paid. Please confirm your order again., et le Confirm Order suivant paie une nouvelle commande.

Si Viva ne peut pas démarrer le paiement, le client reste à l'étape Confirm Order avec un message au-dessus du bouton : Viva Wallet payments are not available at the moment. Please choose another payment method or contact us. (identifiants absents ou incorrects) ou We could not connect to Viva Wallet. Please try again in a moment or choose another payment method. La raison technique est écrite dans le journal.

Les pages de retour n'affichent la page de confirmation de commande qu'au client qui a payé. Toute autre personne qui ouvre l'adresse de retour est redirigée vers l'historique des commandes ou vers le paiement, sans détails de commande.

Le webhook fonctionne aussi lorsque la boutique est en mode maintenance, car OpenCart laisse passer les requêtes des extensions de paiement. Sur OpenCart 4, une action de démarrage de l'extension laisse passer le webhook et les adresses de succès et d'échec.

L'extension ne gère que les paiements uniques, débités immédiatement sur la page Viva. Elle ne propose ni pré-autorisation et capture, ni paiements en plusieurs fois, ni cartes enregistrées, ni abonnements, ni Viva Native Checkout (champs de carte sur votre propre page), ni terminaux de paiement (TPV). Lorsque le client démarre une nouvelle tentative, l'ancienne commande de paiement Viva non payée n'est pas annulée ; Viva la fait expirer au bout de 30 minutes.

Commandes et remboursements

Order statuses

Aucun statut (commande manquante) : le client a été envoyé vers Viva et n'a pas payé, le paiement a échoué ou a été annulé, ou Viva n'a pas encore finalisé le paiement. Le client peut payer à nouveau. Dans Sales > Orders, ces commandes ne s'affichent qu'avec le filtre Order Status réglé sur Missing Orders. Sur OpenCart 4.1, une telle commande peut aussi avoir le statut Voided, que OpenCart définit lorsque l'étape de confirmation est de nouveau affichée ; l'extension la compte comme une commande sans statut.

Order Status After Payment (par défaut Processing) : le paiement a été confirmé. Une note indique le montant, la transaction, le code de commande Viva, l'environnement (démonstration ou réel) et la manière dont le paiement a été confirmé (webhook ou retour du client).

On Hold Status après un écart (par défaut Pending) : Viva a signalé un montant ou une devise différent du total de la commande. La commande n'est pas marquée payée, et la note Viva Wallet payment held for review indique la raison. Comparez le paiement dans le tableau de bord Viva avec la commande, puis traitez-la ou remboursez-la manuellement. Si un paiement correspondant pour la même commande arrive plus tard, la commande passe au statut payé.

Un paiement reçu pour une commande dans le statut Cancelled Order Status ou Refunded Status ne modifie pas le statut de la commande ; une note vous demande de rétablir la commande ou de rembourser le paiement dans le tableau de bord Viva. Si un second paiement arrive pour une commande déjà payée, ou pour une autre commande d'un panier déjà payé, la commande n'est pas modifiée ; une note sur la commande payée vous demande de rembourser le doublon dans le tableau de bord Viva.

Les notes sont des entrées de l'History de la commande que le client ne voit pas. Les changements de statut n'avertissent pas le client par eux-mêmes ; OpenCart envoie son e-mail habituel de commande lorsqu'une commande payée reçoit son statut pour la première fois.

VibeFox Viva Wallet Gateway tab

Dans Sales > Orders, ouvrez une commande payée avec Viva Wallet. En bas de la page de commande, à côté de History et Additional, l'onglet VibeFox Viva Wallet Gateway affiche le Viva order code, le Transaction ID avec une étiquette Demo pour les paiements de démonstration, l'Environment / Source Code, le Viva status, les montants Paid / refunded, le formulaire de remboursement, l'historique des remboursements, les Viva payment attempts de la commande (s'il y en a eu plusieurs) et les Viva Wallet notes de la commande. L'onglet est affiché aux utilisateurs qui ont accès à l'extension.

Refunds

Dans l'onglet VibeFox Viva Wallet Gateway, saisissez le Amount (le montant non encore remboursé est prérempli), facultativement une Reason (optional), et cliquez sur Refund via Viva Wallet. Confirmez la question Refund this amount via Viva Wallet? This cannot be undone. Les remboursements totaux et partiels sont pris en charge pour les commandes ayant un paiement Viva confirmé. Vous devez avoir le droit de modifier l'extension (défini dans System > Users > User Groups). Vous pouvez rembourser jusqu'au montant débité par Viva pour le paiement, même si la commande a été modifiée ensuite. Le remboursement est envoyé au compte où le paiement a été effectué (démonstration ou réel), dans la devise du paiement ; les Client ID et Client Secret de ce compte doivent donc être saisis. Si Viva refuse le remboursement, l'onglet affiche l'erreur et aucun remboursement n'est enregistré. Un remboursement réussi est ajouté à l'historique des remboursements et aux notes, avec la transaction de remboursement Viva. Un remboursement total définit la commande en Refunded Status sans prévenir le client et sans remettre les produits en stock, comme un changement de statut manuel. Un remboursement partiel ne modifie pas le statut. Une commande retenue pour vérification après un écart n'a pas de paiement confirmé et ne peut pas être remboursée depuis l'onglet.

Les retours de produits dans Sales > Returns ne renvoient pas d'argent via Viva. Les remboursements effectués dans le tableau de bord Viva ne sont pas importés. Mettez la commande à jour manuellement si nécessaire.

Clé de licence

L'extension fonctionne avec une clé de licence VibeFox obtenue sur vibefox.net. Le bloc de licence License — VibeFox Viva Wallet Gateway est le premier bloc de la page Extensions > Extensions > Payments > VibeFox Viva Wallet Gateway > Edit, au-dessus des réglages. Saisissez la clé dans License key, puis 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) et les boutons Check now pour vérifier à nouveau le statut, Change key pour saisir une autre clé et Remove key pour retirer la clé de cette boutique. En dessous figurent la ligne Product: opencart-payment-viva et le lien Manage licenses and domains in your account, qui ouvre votre compte vibefox.net. Seuls les utilisateurs administrateurs disposant du droit Modify sur l'extension peuvent modifier la clé. Les textes du bloc suivent la langue de l'administration (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, l'extension continue de fonctionner avec le dernier statut connu.

Une clé fonctionne sur un seul domaine : l'adresse de la boutique issue de la configuration d'OpenCart. Retirer la clé de la boutique ne libère pas son emplacement de domaine. Libérez-le dans votre compte vibefox.net.

Sans clé active, Viva Wallet n'est pas affiché aux clients au moment du paiement. Si un paiement est tout de même lancé, le client voit This payment method is not available. Please choose another one. Un utilisateur administrateur connecté à l'administration dans le même navigateur voit encore le mode de paiement dans la boutique, marqué (unlicensed — visible to admins only), afin que vous puissiez configurer et tester l'extension avant d'acheter une clé. Sur OpenCart 4, cet aperçu n'est pas disponible : la boutique ne voit pas la connexion administrateur, donc sans clé active le mode de paiement est masqué pour tout le monde. Après avoir ouvert une fois la page Edit, un rappel apparaît sur le Dashboard de l'administration. Fermez-le avec × pour le masquer pendant 7 jours. Les commandes existantes ne sont pas affectées : les paiements déjà lancés sont toujours confirmés par le webhook Viva et le retour dans la boutique, et les remboursements fonctionnent.

Lorsqu'une licence expire, l'extension continue de fonctionner, mais les mises à jour et le support nécessitent un renouvellement. Le statut est vérifié à nouveau automatiquement lorsque vous ouvrez le Dashboard de l'administration ou la page Edit : 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 de l'extension supprime toujours la clé de licence et le statut de licence.

Dépannage

Viva Wallet n'apparaît pas au moment du paiement : vérifiez que la licence est active, que Enable/Disable est activé et que le mode actuel dispose de son Client ID, de son Client Secret et de son Source Code (les champs Demo en mode test, les champs Live en mode réel). La devise sélectionnée dans la boutique doit être l'une de EUR, GBP, PLN, RON, BGN, CZK, HUF, DKK, SEK, NOK ou CHF. Vérifiez aussi que l'adresse de facturation se trouve dans la Geo Zone sélectionnée et que la commande atteint le Total défini dans les réglages. La page des réglages affiche un avertissement lorsque des identifiants manquent.

Le paiement a abouti, mais la commande reste sans statut : le webhook ne fonctionne pas. Dans Viva, vérifiez que le webhook existe dans le compte utilisé (démonstration ou réel), que son URL est exactement celle affichée dans les réglages et que Transaction Payment Created est sélectionné. Vérifiez que le Client ID et le Client Secret du compte de ce paiement sont toujours saisis : l'extension en a besoin pour vérifier le paiement. Activez Debug Logging et consultez le champ Log. La commande reçoit aussi son statut lorsque le client revient dans la boutique après avoir payé.

Le client revient sur une page introuvable : la Success URL ou la Failure URL de la source de paiement ne se termine pas par &. Copiez les chemins exactement comme les réglages les affichent.

Viva ne peut pas vérifier l'URL du webhook : saisissez le Merchant ID et l'API Key du mode actuel (ou la clé de vérification elle-même dans Webhook Verification Key), enregistrez, puis vérifiez à nouveau dans Viva. Pour vérifier le webhook de l'autre compte, changez d'abord Test Mode ou saisissez la clé de ce compte.

Le webhook répond par une erreur : Viva affiche la réponse de votre boutique et relance les webhooks en échec. verification_failed (HTTP 500) signifie que l'API Viva n'a pas pu être jointe pour vérifier le paiement, ou que le statut de la commande n'a pas pu être défini. busy (HTTP 503) signifie que la commande était en cours de traitement par une autre requête au même moment. transaction_not_found (HTTP 404) signifie que la transaction n'existe pas dans le compte de ce paiement, par exemple à cause d'identifiants erronés. Les événements concernant les paiements d'autres boutiques du même compte Viva reçoivent la réponse ignored.

Le client voit une erreur après Confirm Order : consultez le champ Log sur la page de l'extension. Un Client ID ou un Client Secret incorrect donne le message indiquant que les paiements Viva Wallet ne sont pas disponibles. Si Viva ne répond pas ou refuse la commande de paiement, par exemple parce que le Source Code appartient à un autre compte, le client reçoit le message indiquant que la boutique n'a pas pu se connecter à Viva Wallet. This payment method is not available. signifie que la session de paiement ne correspond plus à la commande : le client recharge la page de paiement.

Le client revient et voit We could not find your order. If you were charged, please contact us.: le code de commande Viva dans l'adresse de retour n'est pas un paiement de cette boutique, par exemple parce que la source de paiement d'une autre boutique pointe ici. Vérifiez la Success URL et la Failure URL de la source de paiement.

La commande est dans le statut de vérification après paiement : lisez les notes de l'onglet VibeFox Viva Wallet Gateway (voir Order statuses), puis traitez la commande ou remboursez le paiement.

Pas de formulaire de remboursement dans l'onglet : l'onglet indique la raison : la commande n'a pas de paiement Viva confirmé (Transaction ID not found. Cannot process refund.), elle est entièrement remboursée, les identifiants du compte du paiement sont absents, ou votre groupe d'utilisateurs n'a pas le droit de modifier l'extension.

Le remboursement échoue avec This payment was made in the Viva demo (or live) environment : le Client ID et le Client Secret du compte où le paiement a été effectué ne sont pas saisis. Saisissez-les et réessayez. Les autres erreurs de remboursement affichent le message de Viva.

Désinstallation

Allez dans Extensions > Extensions, choisissez le type Payments et cliquez sur Uninstall (le bouton rouge −) à côté de VibeFox Viva Wallet Gateway. La clé de licence et le statut de licence de cette extension sont toujours supprimés. OpenCart supprime toujours ses propres réglages de l'extension : Enable/Disable, Sort Order, Geo Zone, Total et les champs de statut de la section Order statuses, qui reviennent à leurs valeurs par défaut lors d'une réinstallation. Les jetons d'accès Viva et les clés des webhooks mis en cache sont toujours supprimés. Sur OpenCart 4, l'événement de l'extension et son action de démarrage, qui laisse passer le webhook et les adresses de retour en mode maintenance, sont toujours supprimés également. Si Delete Data on Uninstall est activé, les autres réglages de la passerelle (titre, description, mode test, identifiants, statut de commande après paiement, couleur de marque, journalisation) et le journal sont supprimés. Sinon, ils sont conservés pour une réinstallation ultérieure. Les tentatives de paiement et les remboursements Viva sont toujours conservés, de sorte que les commandes payées auparavant peuvent encore être remboursées après une réinstallation. Les commandes existantes conservent leurs notes de paiement.

Sur OpenCart 4, pour supprimer aussi les fichiers de l'extension, allez dans Extensions > Installer après la désinstallation et cliquez sur Uninstall (le bouton orange −) à côté de VibeFox Viva Wallet Gateway dans la liste des extensions installées, puis sur Delete (le bouton rouge corbeille) pour supprimer le paquet téléversé.

Viva Wallet est une marque déposée de son propriétaire. Cette extension n'est ni affiliée à Viva Wallet ni approuvée par Viva Wallet.