Skip to content

Plugin OpenCart

L'extension Genius Checkout pour OpenCart 4.x ajoute Genius Checkout comme moyen de paiement sur les boutiques OpenCart.

Installation

  1. Téléchargez le zip de l'extension depuis votre tableau de bord marchand.
  2. Admin OpenCart → Extensions → Installer → Upload.
  3. Puis Extensions → Extensions → Payments → Genius Checkout → Install.

Configurer

Extensions → Payments → Genius Checkout → Edit :

RéglageValeur
API KeyVotre clé gc_test_… ou gc_live_… (champ password)
Webhook SecretMême valeur que dans Tableau de bord GC → Developers → Webhooks (champ password)
Test ModeActivez pendant la validation
Approved Order StatusStatut à appliquer sur payment.completed (en général Processing)
Failed Order StatusStatut à appliquer sur payment.failed (en général Failed)
Refunded Order StatusStatut à appliquer sur payment.refunded / payment.partially_refunded
Geo ZoneRestreindre par pays (optionnel)
Sort OrderOrdre d'affichage dans la liste de moyens de paiement

URL webhook dans le tableau de bord GC :

https://votre-opencart.example.com/index.php?route=extension/payment/genius_checkout/callback

Abonnez au moins à : payment.completed, payment.failed, payment.refunded.

Flux de checkout

  1. L'acheteur arrive au checkout OpenCart et choisit Genius Checkout.
  2. Le contrôleur catalogue rend un bloc Pay-now qui POST vers confirm().
  3. confirm() appelle POST /api/v1/checkout-sessions avec le total commande, l'e-mail client, et l'URL de retour vers index.php?route=checkout/success.
  4. Nous répondons avec {checkout_url, session_id}. Le plugin redirige.
  5. Après paiement, l'acheteur est renvoyé vers l'URL de succès avec ?gc_charge_id=….
  6. De manière asynchrone, GC envoie payment.completed / payment.failed au callback ; le plugin fait passer la commande au statut configuré.

Fonctionnalités supportées

CapacitéStatut
Remboursements (total)Oui — propagé via webhook payment.refunded
Remboursements partielsNiveau câble (géré par l'événement entrant payment.partially_refunded)
TokenisationTokens sur la plateforme GC ; OpenCart n'affiche pas de sélecteur de cartes enregistrées aujourd'hui
AbonnementsPas nativement — OpenCart n'a pas de moteur d'abonnements

Remboursements

Les marchands GC initient les remboursements depuis le tableau de bord GC ou via l'API ; la commande OpenCart passe automatiquement au statut Refunded à l'arrivée du webhook payment.refunded. Déclencher des remboursements depuis l'intérieur d'OpenCart est sur la roadmap.

Sécurité webhook

Les webhooks entrants sont signés HMAC-SHA256. Le récepteur OpenCart vérifie X-GC-Signature sur {timestamp}.{body} (fenêtre de 5 minutes) et rejette les mismatches.

Dépannage

  • Le bouton Pay-now ne fait rien — ouvrez la console navigateur ; un JS manquant signifie généralement qu'un override de thème a supprimé l'URL de callback. Relancez le pas d'installation admin.
  • Commande ne transitionne pas — confirmez que l'URL du webhook se résout depuis internet (OpenCart est souvent derrière des WAF qui jettent les POST signés).
  • alert() à la place d'une erreur stylée — videz le cache OC ; le template v4.x utilise un block .alert Bootstrap qui ne s'affiche pas tant que le thème n'est pas reconstruit.

Soumission

Disponible sur OpenCart Marketplace.

Released under the proprietary Genius Checkout license.