Plugin WooCommerce
Le plugin officiel Genius Checkout for WooCommerce permet aux boutiques WordPress d'accepter des cartes via Genius Checkout sans code.
Installation
- Téléchargez
genius-checkout-for-woocommerce.zipdepuis votre tableau de bord marchand. - Dans l'admin WordPress, allez dans Extensions → Ajouter → Téléverser une extension.
- Téléversez le zip et activez.
Configuration
Dans WooCommerce → Réglages → Paiements → Genius Checkout, renseignez :
| Réglage | Description |
|---|---|
| API Key | Votre clé gc_test_ ou gc_live_ |
| Webhook Secret | Depuis la page Webhooks du tableau de bord GC |
| Send Order Details | Quand activé, lignes, taxes et description circulent vers la passerelle et le reçu |
Ce qui est supporté
- Produits simples et abonnements
- WooCommerce Subscriptions — renouvellements automatiques via token enregistré
- Block checkout et classic checkout
- Remboursements depuis l'admin WooCommerce (totaux ou partiels)
- Notes privées détaillées avec IDs passerelle et raisons de refus
Métadonnées stockées par commande
Le plugin enregistre les métadonnées suivantes sur chaque commande payée — pratique pour le support, les remboursements et la réconciliation :
| Clé | Valeur |
|---|---|
_gc_session_id | ID de la session de paiement |
_gc_transaction_id | ID de transaction (utilisé pour les remboursements) |
_gc_receipt_number | Numéro de reçu lisible |
_gc_gateway_transaction_id | Référence sous-jacente de la passerelle |
_gc_card_brand | Marque de la carte (Visa, Mastercard, etc.) |
_gc_card_last4 | 4 derniers chiffres |
_gc_token_id | Token réutilisable pour renouvellements |
Abonnements
Si WooCommerce Subscriptions est actif, le plugin utilise le _gc_token_id enregistré pour facturer automatiquement les renouvellements selon le calendrier WooCommerce. Les renouvellements échoués suivent vos réglages de dunning WooCommerce.
Remboursements
Sur la page de détail de la commande, cliquez Rembourser comme avec toute autre passerelle WooCommerce. Le plugin appelle POST /api/v1/payments/{transaction_id}/refund et publie une note privée avec l'ID du remboursement.
Cartes enregistrées (sélecteur au paiement)
Les clients WooCommerce connectés voient la liste de leurs cartes précédemment enregistrées au moment du paiement, grâce à l'endpoint GET /api/v1/customers/{external_customer_id}/payment-tokens.
Comment c'est câblé dans le plugin :
- Le plugin enregistre l'
wp_users.IDde chaque client commeexternal_customer_idlors de sa première commande (mappingwp_users.ID→ GCcustomers.external_customer_id). - Au checkout, le plugin interroge l'endpoint avec la clé API du marchand pour récupérer la liste. Seul
{id, brand, last4, expiry_month, expiry_year}est exposé au navigateur — le token chiffré reste sur la plateforme. - La sélection du client (un
pt_…) est propagée dans le meta de commande_gc_payment_token_id. Block checkout la lit via l'extension Store API enregistrée ; classic checkout la lit d'un champ de formulaire caché. - Au place-order, le plugin débite ce token via
POST /api/v1/paymentsavecpayment_token_id. Si vide, il retombe sur le flux de redirection hébergée.
La clé API ne touche jamais le navigateur. La requête est faite en PHP depuis le plugin WP, sur le même modèle que Controller/Index/Savedcards du module Magento 2.
Pour forcer uniquement le flux de redirection hébergée (sans UI de cartes enregistrées), décochez Afficher les cartes enregistrées sous WooCommerce → Réglages → Paiements → Genius Checkout. Le module Magento 2 lit le même réglage depuis son propre panneau admin.
Dépannage
- Notes de refus apparaissent dans le journal d'activité de la commande avec le code ISO de la passerelle.
- Livraison de webhooks inspectable et rejouable depuis la page Webhooks du tableau de bord GC.
- Le journal de débogage du plugin est dans WooCommerce → État → Journaux → genius-checkout.
