Module de Paiement Stripe

Stripe est un prestataire de paiement externe https://stripe.com/fr qui propose une API moderne et une interface de paiement extrêmement conviviale et efficace.

Ce module permet les paiements à l’acte et les paiement récurrents.

Configuration

La configuration de ce module de paiement du plugin Bank se fait dans le menu Configuration > Paiements en ligne.

  • Live Secret Key : Clé secrète utilisée quand vous êtes en mode production ;
  • Live Publishable Key : Clé publique utilisée quand vous êtes en mode production ;
  • Mode Test : cochez la case pendant la phase de test de votre boutique, pour vérifier son bon fonctionnement avec des CB ou un SEPA factices (aucun paiement n’est réalisé dans le mode test). Vous devez aussi être en mode test dans l’interface Stripe ;
  • TEST Secret Key : Clé secrète utilisée quand vous êtes en mode test
  • TEST Publishable Key : Clé publique utilisée quand vous êtes en mode test
  • Webhook Endpoint : cette URL doit être renseignée dans l’interface d’administration de Stripe (https://dashboard.stripe.com/account/webhooks) si vous utilisez les paiement récurrent
    Attention : l’URL contient un identifiant qui dépend de l’informations ID, renseignez la bien avant de copier cette URL dans l’interface d’administration de Stripe.

Pour des numéros de cartes de crédit en mode « test » voir https://stripe.com/docs/testing#cards

Discussion

Une discussion

  • 2

    J’ai un webhook qui est configuré par défaut côté Stripe avec « Tous les événements ».

    Du coup je reçois pas mal d’appels sur /bank.api, dont certains qui tombent en 400 ou 404, ce qui fait râler Stripe.

    Notamment des « checkout.session.completed » qui tombent un coup sur deux en 404, je n’arrive pas à savoir pourquoi.
    Je vois bien les 400 et 404 dans les logs Apache, mais pas de logs de bank, et dans les stripe*.log j’ai des traces de données reçues.

    Du côté Stripe, quels sont les événements réellement utiles pour Bank, lesquels sont à désactiver ?

    • Je m’auto réponds : ce serait la liste des fonctions stripe_webhook_* qui sont définies, à savoir :

      checkout_session_completed
      customer_subscription_created
      customer_subscription_deleted
      invoice_payment_succeeded
      invoice_payment_failed
      invoice_payment_result

    • Au final, les events à utiliser dans les webhooks côté Stripe sont :

      checkout.session.completed
      customer.subscription.created
      customer.subscription.deleted
      invoice.payment.succeeded
      invoice.payment.failed

      Les autres events envoyés par Stripe ne sont pas traités mais Bank leur répond simplement avec un header 200 (accepté).

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom