VibeFox Iugu for OpenCart — Aide
Prérequis
OpenCart : 3.0.x (testé sur 3.0.5.0) ou 4.0.2 et ultérieur (testé sur 4.1.0.3).
PHP : 8.0 ou ultérieur.
Devise : réal brésilien (BRL). Iugu n'encaisse qu'en BRL, la boutique doit donc disposer de la devise BRL dans System > Localisation > Currencies. Le mode de paiement est masqué lorsque la devise de commande du client est une autre devise, et pour les totaux inférieurs à R$ 1,00 (le minimum d'Iugu).
Compte Iugu : vous avez besoin de deux jetons d'API depuis le tableau de bord Iugu, l'un de type « Test » et l'autre de type « Live » (voir Configuration). Iugu utilise une seule adresse d'API pour les deux : le jeton détermine si les factures sont des factures de test ou réelles. Aucun webhook n'a besoin d'être configuré dans Iugu.
CPF/CNPJ (facultatif) : OpenCart ne dispose pas de champ CPF qui lui soit propre. Si vous ajoutez un champ personnalisé client ou adresse dont le nom contient CPF ou CNPJ (Customers > Custom Fields), sa valeur est transmise à Iugu.
Clé de licence VibeFox : achetée sur vibefox.net. Une clé fonctionne pour un seul domaine.
Installation
Le téléchargement est un fichier zip unique contenant les paquets des deux versions d'OpenCart. Décompressez-le sur votre ordinateur. Il contient README.txt, le paquet OpenCart 3 wcp_iugu_gateway-oc3-(version).ocmod.zip et le paquet OpenCart 4 wcp_iugu_gateway.ocmod.zip. N'installez que 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_iugu_gateway-oc3-(version).ocmod.zip. L'extension ne comporte aucune modification OCMOD, il n'est donc pas nécessaire de rafraîchir Extensions > Modifications. 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 Iugu 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 en forme de crayon) pour ouvrir la page des réglages. Collez 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 jetons d'API de test et de production (voir Configuration), laissez Test mode activé, activez Enable / Disable et cliquez sur Save.
5. Passez une commande de test en BRL et payez-la sur la page Iugu avec un paiement de test Iugu. Une fois tout prêt, désactivez Test mode.
OpenCart 4
1. Dans l'administration, allez dans Extensions > Installer, cliquez sur Upload et choisissez le fichier wcp_iugu_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 Iugu Gateway, cliquez sur Install (le bouton vert +), puis sur Edit (le bouton en forme de crayon).
4. Saisissez la clé de licence et les jetons d'API comme aux étapes 3 à 5 pour OpenCart 3. La page de configuration et ses champs sont identiques dans les deux versions. Seule l'URL de notification est différente (voir Notifications de paiement).
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 Iugu Gateway > Edit. Les sections sont listées à gauche ; le bouton Save situé sous la liste enregistre la page entière. Au-dessus des réglages, la page affiche TEST MODE (les factures sont créées avec le jeton d'API de test, sans aucun débit réel) ou LIVE. Elle vous avertit lorsque le jeton du mode actif est manquant (le mode de paiement est alors masqué à la commande) et lorsque la devise par défaut de la boutique n'est pas le BRL (Iugu n'est alors pas proposé pour les autres devises). 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 ni dépasser 128 caractères, Sort Order doit être un nombre entier, Total doit être un nombre égal ou supérieur à 0, et la zone géographique et les statuts de commande sélectionnés doivent exister. Sinon, rien n'est enregistré et l'erreur indique le champ concerné.
Iugu
Enable / Disable : Enable Iugu payments active ou désactive le mode de paiement. Par défaut : désactivé.
Title : le nom du mode de paiement que voit le client à la commande. C'est aussi le nom du mode de paiement enregistré dans la commande. Par défaut : Iugu. Obligatoire, 128 caractères maximum.
Description : le texte affiché au client à l'étape Confirm Order, au-dessus du bouton de confirmation. Par défaut : Payez en toute sécurité via Iugu. Vous serez redirigé pour finaliser votre paiement.
Sort Order : la position d'Iugu parmi les modes de paiement à la commande. Laissez le champ vide ou saisissez un nombre entier.
Geo Zone : proposer Iugu uniquement pour les adresses de paiement 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 de la commande, dans la devise par défaut de la boutique, que doit atteindre une commande pour qu'Iugu soit proposé. Laissez le champ vide pour proposer Iugu quel que soit le montant. Iugu lui-même exige au moins R$ 1,00.
Identifiants d'API
Créez les jetons d'API dans Iugu Alia (la section y renvoie) : Settings > API integration > New. Créez un jeton de type « Test » et un jeton de type « Live ».
Test mode : utilise le jeton d'API de test, donc aucun paiement réel n'est effectué. Par défaut : activé. Tant que le mode test est activé, les clients voient SANDBOX — Test mode enabled. No real charges. à l'étape Confirm Order, au-dessus de la description. Les vérifications de statut et les remboursements d'une commande utilisent toujours le jeton du mode dans lequel sa facture a été créée ; changer de mode ne casse donc pas les anciennes commandes.
Test API token : le jeton d'API Iugu de type « Test ». Il est utilisé lorsque le mode test est activé.
Live API token : le jeton d'API Iugu de type « Live » (production). Il est utilisé lorsque le mode test est désactivé. Gardez-le secret.
Les jetons 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. Pour supprimer un jeton enregistré, cochez Clear the saved token on save sous le champ et cliquez sur Save.
Notifications de paiement
Notification URL : chaque facture demande à Iugu de signaler les changements de statut à cette URL de votre boutique. Sous OpenCart 3, elle ressemble à https://your-store/index.php?route=extension/payment/wcp_iugu_gateway/webhook, et sous OpenCart 4 à https://your-store/index.php?route=extension/wcp_iugu_gateway/payment/wcp_iugu_gateway.webhook. Elle doit être accessible depuis Internet. Il n'y a rien à configurer dans Iugu. Un déclencheur supplémentaire au niveau du compte pointant vers la même URL est sans danger. Les notifications ne contiennent aucune donnée de paiement sur laquelle la boutique se fie : la facture est toujours relue depuis l'API d'Iugu (statut, montant, devise) avant que la commande ne change.
L'extension réagit aux événements Iugu listés dans cette section : invoice.status_changed, invoice.refund, invoice.released, invoice.dunning_action et invoices. Pour chacun, elle lit la facture et applique son statut :
Une facture expirée ou annulée d'une commande encore sans statut laisse la commande sans statut, afin que le client puisse payer à nouveau. Les autres événements et les factures qui n'ont pas été créées par votre boutique reçoivent la réponse HTTP 200 et sont ignorés, sans requête vers Iugu. Sans notifications, une facture n'est vérifiée que lorsque le client revient dans la boutique depuis la page Iugu.
Commandes
OpenCart crée la commande à l'étape Confirm Order sans statut (une commande manquante). Elle ne reçoit un statut qu'après que Iugu a signalé la facture, par notification ou au retour du client ; la facture est toujours relue depuis Iugu. Chaque champ ci-dessous liste vos statuts de commande OpenCart.
Order Status After Payment : défini après un paiement Iugu vérifié. Par défaut : En cours.
Awaiting Iugu Payment Status : le client est revenu de la page Iugu avec un boleto ou un PIX émis ; Iugu confirmera l'argent plus tard. Par défaut : En attente.
Iugu Payment On Hold Status : paiement par carte autorisé mais non capturé, paiement en cours d'analyse, paiement partiel, rétrofacturation, montant ou devise différent de la commande, ou paiement reçu après l'annulation de la commande. Une note explique la raison ; vérifiez-la manuellement. Par défaut : En attente, car OpenCart n'a pas de statut « En suspens ». Vous pouvez créer votre propre statut dans System > Localisation > Order Statuses et le sélectionner ici.
Invoice Expired Status : la facture d'une commande en attente a expiré sans paiement. Si Iugu la signale payée plus tard, la commande reçoit le statut après paiement. Par défaut : Échec.
Invoice Canceled Status : la facture d'une commande en attente a été annulée dans Iugu. Par défaut : Annulée.
Refunded Status : défini après le remboursement intégral du paiement depuis la page de la commande ou dans le tableau de bord Iugu. Par défaut : Remboursée.
Avancé
Debug log : écrit les requêtes API et les notifications dans wc_igu_debug.log.php, dans le dossier des journaux d'OpenCart (storage/logs). Le fichier ne peut pas être ouvert depuis le web. Les jetons et les données clients (e-mail, téléphone, CPF) ne sont jamais journalisés. Les erreurs et avertissements sont toujours écrits, même lorsque l'interrupteur est désactivé. 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 : lorsqu'il est activé, la désinstallation de l'extension supprime les réglages de la passerelle et le journal. Les commandes, les références de factures Iugu et les remboursements sont toujours conservés, de sorte que les anciennes commandes continuent de fonctionner après une réinstallation. Par défaut : désactivé.
Import / Export
Export : Download JSON enregistre les réglages dans un fichier JSON. Les jetons d'API ne sont pas exportés.
Import : collez un JSON exporté précédemment et cliquez sur Import pour restaurer les réglages. Les jetons d'API enregistrés sont conservés.
Commande
À l'étape Payment Method, le client choisit le mode de paiement (par défaut Iugu). À l'étape Confirm Order, le client voit votre description et la note You will be redirected to the Iugu invoice page to pay by credit card, boleto or PIX. OpenCart crée la commande à cette étape, toujours sans statut. Lorsque le client clique sur Confirm Order, l'extension crée une facture Iugu pour le total de la commande en BRL, échéance dans 3 jours, et envoie le client sur la page de facture Iugu. Une adresse e-mail valide est requise. La facture affiche Order # et le numéro de commande. Le client y paie par carte de crédit, boleto ou PIX, avec les moyens activés dans votre compte Iugu. Le nom et l'e-mail du client sont transmis à Iugu, ainsi que le CPF/CNPJ d'un champ personnalisé nommé CPF ou CNPJ lorsqu'il comporte 11 ou 14 chiffres. Le téléphone et l'adresse ne sont envoyés que dans le format accepté par Iugu (numéros de téléphone brésiliens, adresses brésiliennes avec un CEP de 8 chiffres ; le numéro de rue est envoyé sous la forme s/n).
Sous OpenCart 4, le client choisit le mode de paiement avec le bouton Choose du bloc du mode de paiement, dans la fenêtre Payment method options, puis clique sur Confirm Order en bas de la page de paiement. Par défaut, OpenCart 4 ne demande pas d'adresse de facturation ; l'extension reprend alors l'adresse et le champ personnalisé CPF/CNPJ de l'adresse de livraison.
Après le paiement, le client revient dans votre boutique. La commande n'est marquée payée qu'une fois qu'Iugu l'a confirmée : la facture est lue depuis l'API Iugu lorsque le client revient et lorsque Iugu envoie une notification. La commande reçoit alors 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 client a généré un code boleto ou PIX et est revenu avant de payer, la commande reçoit le Awaiting Iugu Payment Status et la page de confirmation affiche Your Iugu invoice is awaiting payment (boleto / PIX). The order will be confirmed as soon as Iugu reports the payment. La commande passe au statut payé lorsque Iugu signale l'argent, par notification ou lorsque le client ouvre à nouveau le lien de retour. Pour une commande en suspens, la page de confirmation affiche We are confirming your payment with Iugu. The order will be updated automatically — please do not pay again. Si Iugu n'a pas pu être joint ou n'a pas encore signalé le paiement au retour du client, une page Payment confirmation affiche le même texte avec les boutons Check again et Back to checkout.
Si la facture a été annulée ou a expiré, le client revient à la commande avec le message The Iugu invoice was not paid (it was canceled or has expired). Your cart is kept: confirm the order again to pay. Si la commande avait été annulée parce que sa facture Iugu a été annulée, le message est Your order was cancelled because its Iugu invoice was canceled. Si le panier est déjà vide (une commande boleto ou PIX avait atteint la page de confirmation avant l'expiration de sa facture), le client voit à la place une page Payment confirmation avec The Iugu invoice of order #... was not paid (it was canceled or has expired), so the order will not be shipped. To buy these items, please place a new order. (ou le message d'annulation) et un bouton Continue. Sous OpenCart 4, les messages du paiement s'affichent au-dessus de la page de paiement. OpenCart 3 crée une nouvelle commande à chaque affichage de l'étape Confirm Order ; OpenCart 4 met à jour la commande du paiement, si bien que, après une facture expirée ou annulée, le client règle la même commande avec une nouvelle facture. Un même panier n'est payé qu'une fois. Avant une nouvelle facture, l'extension vérifie les factures précédentes du panier : si l'une est payée, ce paiement est pris en compte et le client va à la page de confirmation ; si la même commande a encore une facture ouverte avec le même montant et le même mode, le client y est renvoyé ; les autres factures ouvertes sont annulées dans Iugu. Si une ancienne facture est tout de même payée, le paiement est quand même rattaché, et un paiement en double d'un panier déjà payé est signalé par une note. Une modification du panier, y compris une nouvelle quantité, compte comme un nouveau panier qui nécessite son propre paiement.
OpenCart 4 conserve la commande dans le paiement jusqu'à l'affichage de la page de succès. Si cette commande a été fermée entre-temps (par exemple son boleto a expiré ou vous l'avez annulée), le client est renvoyé au paiement avec The Iugu invoice was not paid (it was canceled or has expired). Your cart is kept: confirm the order again to pay., ou, si elle avait été payée avant d'être fermée, avec This order was closed by the store, so it will not be shipped. Your cart is kept: confirm the order again to pay. Si la commande est déjà enregistrée et que le panier contient désormais un nouvel achat, Confirm Order recharge la page de paiement. Dans tous les cas, le prochain Confirm Order règle une nouvelle commande du panier.
Si Iugu ne peut pas créer la facture, le client reste à l'étape Confirm Order avec un bref message, par exemple Iugu could not create the invoice: suivi de la raison et d'une demande de vérifier les données de facturation, ou Could not connect to Iugu. Please try again in a moment. La raison technique est écrite dans le journal.
L'URL de notification fonctionne aussi lorsque la boutique est en mode maintenance : OpenCart 3 laisse passer les requêtes des extensions de paiement, et sous OpenCart 4 l'extension ajoute une action de démarrage qui laisse passer la notification et le retour du client.
L'extension ne prend en charge que les paiements uniques. Elle n'a ni formulaire de carte sur le site, ni cartes enregistrées, ni abonnements ou facturation récurrente, ni carnês de paiement, ni paiements fractionnés, ni réglages de paiement en plusieurs fois : pour les échelonnements, utilisez les réglages de la page Iugu. Les moyens de paiement proposés sur la page Iugu ne peuvent pas être choisis dans les réglages de l'extension : tous les moyens activés dans votre compte Iugu sont proposés.
Commandes et remboursements
Statuts de commande
Aucun statut (commande manquante) : le client a été envoyé vers Iugu et n'a pas payé, la facture a expiré ou a été annulée, ou Iugu n'a pas encore confirmé le paiement. Dans Sales > Orders, ces commandes ne s'affichent qu'avec le filtre Order Status défini sur Missing Orders.
Order Status After Payment (par défaut En cours) : Iugu a confirmé le paiement. Une note affiche l'identifiant de la facture et le mode de paiement (carte de crédit, boleto ou PIX).
Awaiting Iugu Payment Status (par défaut En attente) : le client est revenu avec un boleto ou un PIX émis. La commande passe au statut payé lorsque Iugu signale le paiement.
Iugu Payment On Hold Status (par défaut En attente) : le paiement par carte est autorisé mais pas encore capturé (capturez-le dans Iugu, et la commande est finalisée une fois qu'Iugu signale la facture payée), le paiement est en cours d'analyse, la facture n'a été payée que partiellement, une rétrofacturation a été ouverte, Iugu a signalé un montant ou une devise différents de ceux de la commande, ou le paiement est arrivé après l'annulation de la commande. Les notes l'expliquent. Vérifiez la commande, puis traitez-la ou remboursez le paiement.
Invoice Expired Status (par défaut Échec) : la facture d'une commande en attente a expiré sans paiement. Si Iugu signale plus tard la facture comme payée, la commande passe au statut payé.
Invoice Canceled Status (par défaut Annulée) : la facture d'une commande en attente a été annulée dans Iugu.
Refunded Status (par défaut Remboursée) : le paiement a été intégralement remboursé via l'extension ou dans le tableau de bord Iugu.
Si une autre facture de la même commande ou du même panier est également payée, la commande n'est pas modifiée. Une note vous demande de rembourser le paiement en double dans Iugu. Les notes sont des entrées de l'History de la commande que le client ne voit pas. Lorsqu'une commande en attente est payée, expire ou est annulée plus tard, OpenCart informe le client du nouveau statut.
Onglet VibeFox Iugu Gateway
Dans Sales > Orders, ouvrez une commande payée avec Iugu. En bas de la page de la commande, à côté de History et Additional, l'onglet VibeFox Iugu Gateway affiche l'identifiant de la Iugu invoice (lié à la facture dans Iugu) avec une étiquette Test mode pour les factures de test, le Payment method, le Status, les montants Paid / refunded, le formulaire de remboursement, l'historique des remboursements et les Iugu notes de la commande. L'onglet est affiché aux utilisateurs ayant accès à l'extension.
Remboursements
Dans l'onglet VibeFox Iugu Gateway, saisissez le Amount (le montant non encore remboursé est prérempli), facultativement une Reason (optional), puis cliquez sur Refund via Iugu. Confirmez la question Refund this amount through Iugu? This cannot be undone. Vous devez disposer du droit de modifier l'extension (défini dans System > Users > User Groups). Le remboursement est envoyé avec le jeton du mode dans lequel la facture a été créée, ce jeton doit donc être défini.
Les remboursements se calculent à partir du montant que Iugu a réellement encaissé pour la facture ; ainsi, après un écart de montant, vous pouvez rembourser jusqu'à ce que le client a payé, et non le total de la commande. Seules les factures payées peuvent être remboursées, et pas au-delà du montant encore remboursable dans Iugu. Un remboursement n'est considéré comme effectué que lorsque Iugu le confirme. Si Iugu refuse le remboursement ou ne le confirme pas, 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 l'identifiant de la facture et la raison. Un remboursement total place la commande en Refunded Status sans notifier le client et sans remettre les produits en stock, comme un changement de statut manuel. Un remboursement partiel ne modifie pas le statut. Les remboursements sont disponibles dès qu'Iugu a signalé la facture payée.
Les retours de produits dans Sales > Returns ne renvoient pas d'argent via Iugu.
Un remboursement total effectué dans le tableau de bord Iugu place la commande en Refunded Status avec une note. Les remboursements partiels effectués dans le tableau de bord ne sont pas importés.
Clé de licence
L'extension fonctionne avec une clé de licence VibeFox obtenue sur vibefox.net. Le bloc de licence License — VibeFox Iugu Gateway est le premier bloc de Extensions > Extensions > Payments > VibeFox Iugu Gateway > Edit, au-dessus des réglages. Collez 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) 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-iugu 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 pourquoi, 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é une place 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 pour un seul domaine : l'adresse de la boutique issue de la configuration d'OpenCart. Retirer la clé de la boutique ne libère pas sa place de domaine. Libérez la place dans votre compte vibefox.net.
Sans clé active, Iugu n'est pas affiché aux clients à la commande. 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 toujours le mode de paiement dans la boutique, marqué (unlicensed — visible to admins only), afin de pouvoir configurer et tester l'extension avant d'acheter une clé. Sous 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. Une fois la page Edit ouverte une fois, 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, et les remboursements fonctionnent.
Lorsqu'une licence expire, l'extension continue de fonctionner, mais les mises à jour et l'assistance nécessitent un renouvellement. Le statut est vérifié à nouveau automatiquement lorsque vous ouvrez le Dashboard ou la page Edit de l'administration : 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
Iugu n'apparaît pas à la commande : vérifiez que la licence est active, que Enable / Disable est activé et que le jeton du mode actif est défini : Test API token en mode test, Live API token en mode live. La devise de commande du client doit être le BRL et le total d'au moins R$ 1,00. Vérifiez aussi que l'adresse de paiement 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 le jeton ou la devise est incorrect.
Le paiement a abouti, mais la commande reste sans statut : la notification d'Iugu n'a pas atteint votre boutique ou n'a pas pu être vérifiée. Activez le Debug log et consultez le champ Log sur la page de l'extension. Vérifiez que votre boutique est accessible depuis Internet à la Notification URL et que le jeton du mode dans lequel la facture a été créée est toujours saisi. La facture est aussi vérifiée lorsque le client revient dans la boutique après avoir payé.
La notification répond verification failed : la facture n'a pas pu être lue depuis l'API Iugu à ce moment-là, par exemple à cause d'une erreur réseau, d'un jeton incorrect ou de l'absence du jeton du mode de la facture. Iugu renouvelle la notification.
La notification répond busy : la commande était en cours de traitement par une autre requête au même moment, ou le statut de la commande n'a pas pu être défini. Iugu renouvelle la notification. Le journal indique la raison.
La notification répond invalid invoice id : la notification ne contenait pas d'identifiant de facture valide. Rien n'est modifié.
La commande est dans le Iugu Payment On Hold Status : lisez les Iugu notes dans l'onglet de la commande. Un paiement par carte attend la capture, le paiement est en cours d'analyse, partiellement payé ou contesté, le montant payé ne correspondait pas à la commande, ou le paiement est arrivé après l'annulation de la commande.
Le client voit « Iugu payments are not available right now » : le jeton d'API est manquant ou incorrect. Vérifiez le jeton du mode actif.
Le client voit « A valid billing email is required for Iugu » : la commande n'a pas d'adresse e-mail valide.
Le client voit « This order already has an Iugu payment that the store has to review » : une facture antérieure de la commande est autorisée, en cours d'analyse ou partiellement payée. Vérifiez la facture dans Iugu et le journal.
Le client voit This payment method is not available. : la session de commande ne correspond plus à la commande, ou le mode de paiement a été désactivé entre-temps. Le client recharge la page de commande.
Le remboursement échoue : lisez le message dans l'onglet. Les paiements boleto ne peuvent pas être remboursés via Iugu, les paiements PIX ne peuvent être remboursés qu'en totalité, et seules les factures payées peuvent être remboursées. Si le message indique que le paiement a été effectué en mode test ou live et qu'aucun jeton n'est configuré, saisissez le jeton de ce mode. Si Iugu n'a pas confirmé le remboursement, vérifiez la facture dans Iugu avant de réessayer.
Pour les développeurs : avant la création de la facture, l'extension déclenche l'événement OpenCart wc_igu_invoice_data avec la requête de facture et la commande, par exemple pour limiter les modes de paiement avec payable_with.
Désinstallation
Allez dans Extensions > Extensions, choisissez le type Payments et cliquez sur Uninstall (le bouton rouge −) à côté de VibeFox Iugu 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 statuts de commande de la section Orders, qui reprennent leurs valeurs par défaut lors d'une réinstallation. L'événement OpenCart de l'extension est également supprimé (sous OpenCart 4, également ses événements et son action de démarrage, qui laisse passer la notification et le retour du client en mode maintenance). Si Delete data on uninstall est activé, les autres réglages de la passerelle (titre, description, mode test, jetons d'API, interrupteur du journal de débogage) et le journal sont supprimés. S'il est désactivé, ils sont conservés pour une future réinstallation. Les références de factures Iugu et les remboursements sont toujours conservés, de sorte que les commandes payées auparavant peuvent encore être remboursées et que les notifications tardives sont toujours rattachées après une réinstallation. Les commandes existantes conservent leurs notes de paiement.
Sous OpenCart 4, pour supprimer aussi les fichiers de l'extension, allez dans Extensions > Installer après la désinstallation, cliquez sur Uninstall (le bouton orange −) à côté de VibeFox Iugu Gateway dans la liste des extensions installées, puis sur Delete (le bouton rouge en forme de poubelle) pour supprimer le paquet téléversé.
Iugu est une marque déposée de son propriétaire respectif. Cette extension n'est ni affiliée à Iugu ni approuvée par Iugu.
