Stripe - Retour des paiements stripe aléatoire

Bonjour
Ce fil s’adresse aux utilisateurs Dolibarr-Stripe.
Certains paiements sont encaissés par Stripe, mais non intégrés dans Dolibarr (facture payée, écriture en banque). Les traces dans les log ne donnent rien. Il semble qu’il n’y ait pas de retour de Stripe, donc arrêt de la procédure d’intégration du paiement dans Dolibarr.
Nous avons eu le retour, d’une part, par les clients qui disaient avoir payé et vérification faite dans Stripe, ils avaient raison. Et d’autre part, dans le rapprochement du compte Stripe de Dolibarr et des rapports fournis par Stripe, qui montraient que certains clients avaient payés deux fois leurs activité.
Est-ce que chez vous, cela arrive aussi? Si oui , Avez-vous une idée de ce qu’il se passe? Avez-vous mis en place une vérification?

Cordialement
Claude

Hello,

Ca nous est arrivé une fois pour un paiement de cotisation en ligne. On a fait l’enregistrement à la main quand on a reçu l’argent de stripe, mais impossible de savoir pourquoi le paiement n’a pas été envoyé sur dolibarr.

A plus

Bonjour,
via le dashboard de stripe vous pouvez voir les « logs » de chaque transaction, comparez une qui a marché et une qui n’a pas marché pour voir ce qui a posé problème ?

au doigt mouillé je penche pour un problème de connexion internet vers votre dolibarr au moment du « retour » de la transaction entre stripe/client/dolibarr …

Puisque vous avez bien voulu me répondre, je voudrai vous soumettre une piste. pouvez-vous me dire si je déraisonne?
Ce cas se passe le plus souvent, dans le cas de paiement par carte avec sécurisation auprès de la banque (vérifié dans les log). Or alors, la connexion implique de nombreux acteurs : la banque, le provider SMS pour envoyer le code , Stripe et nous en dernière position au retour, moment où le Dolibarr est mis à jour.
Peut-être le temps long amène la procédure en timeout, ce que sous-entend la réponse de erics et c’est confirmé par une client nous ayant dit que les communications étaient difficiles, dans son lieu de vacances.
Ce fut aussi le cas d’une copine qui achetait un billet SNCF, et qui a fait deux fois la manip pour avoir le billet. Mais elle a été débité deux fois du prix du billet. Sur réclamation, la SNCF a tout de suite remboursé, sans plus de difficulté: ne serait-ce pas une preuve que ceci arrive à plus gros que nous, c’est connu et qu’il n’y ait pas de solution?
Toutefois, nous cherchons à avoir l’information avant que le client ne s’en aperçoive, question de positionnement professionnel.

En fait il faudrait vraiment regarder les logs sur le dashboard stripe:

puis cliquer sur le lien que j’ai encadré en rouge, ça vous donnera toutes les infos de connexion et toutes les étapes !

ensuite pour en revenir à la détection d’un paiement en double ou paiement qui ne serait pas « revenu » dans dolibarr ça m’étonne que vous ne puissiez pas le « voir » dans dolibarr, voilà ce que j’ai sur mon dolibarr:

image

Et dans cette liste chez vous il ‹ manque › des transactions qui pourtant sont visibles sur le dashboard stripe c’est ça ?

Merci de voteréponse.
Voici les informations.
A la question ‹ Et dans cette liste chez vous il ‹ manque › des transactions qui pourtant sont visibles sur le dashboard stripe c’est ça ? › Non, dans cette liste tout y est, mais sans distinction de ce qui a été intégré aux données de Dolibarr de ce qui ne l’a pas été.

Quand au dasboard Stripe, voilà ce que me donne le lien indiqué par @erics


Que signifie le message ‹ Vous ne pouvez pas confirmer ce PaymentIntent car il a déjà réussi après avoir été précédemment confirmé. › (traduit par Google) ???

Bonsoir
De mon côté, jamais constaté de « perte » d’infos sur les paiements Stripe (en V10, V12 et maintenant V14)

Par contre la copie d’écran d’ @erics m’interpelle :
A quel endroit de Dolibarr as tu le menu avec « Compte Stripe, Liste des encaissements, liste des transactions, etc… » ?

Cordialement
Eric

Hello @RAYBAUDI j’ai ça dans mes comptes bancaires … url = dolibarr/stripe/charge.php?idmenu=56&mainmenu=bank&leftmenu=

1 « J'aime »

Pour en savoir plus par rapport à ce code d’erreur il faut se reporter à la page Codes d'erreur | Stripe Documentation

Le détail n’est pas beaucoup plus informatif … « The PaymentIntent’s state was incompatible with the operation you were trying to perform. »

Ça laisse plutot penser à une race condition que le code stripe dans dolibarr a du mal à gérer.

Je vois que vous avez mis « v12 » comme version de dolibarr, ça pourrait être une bonne idée de faire une grosse mise à jour vers la v14 ou v15 et de vérifier que ce problème se pose encore ?

@erics: Merci pour ces explications. Si vous avez une minute, j’abuse encore (??!!). Sinon laissez tomber.

  • suivant la page ’ Codes d’erreur | Stripe Documentation’ , le code erreur me donne cette explication ‹ L’état de PaymentIntent était incompatible avec l’opération que vous tentiez d’effectuer › (traduction google). Je fais appel pour comprendre ce que cela veut dire (quelle ignare, cette nana!!!).
    Par ailleurs, j’ai trouvé, en parcourant la liste des actions que Stripe a enregistré, le tout premier paiement effectué avec un PaymentIntent correctement abouti.
    Et dans mon log, à cette heure précise, il n’y a que l’activation de newpayment correctement terminée mais pas celle de paymentOK qui suit d’habitude. Comme mes interventions dans cette procédure sont dans le hook de paymentOk, je ne pense pas que cela vienne de mon module. Qu’est-ce qui a pu faire qu’il n’y ai pas de trace du lancement de paymentOk, si tant est qu’il ait été lancé?
  • <une grosse mise à jour vers la v14 ou v15> j’en suis consciente et j’ai commencé. Mais nous sommes en pleine saison estivale. Donc ce ne sera pas pour cet été, la période hivernale étant plus propice.

@cca vous « abusez » mais pas de soucis :slight_smile:

Le code d’erreur en question me semble être un « fourre tout », c’est ce que j’ai essayé de dire de manière plus nuancée par « Le détail n’est pas beaucoup plus informatif … « The PaymentIntent’s state was incompatible with the operation you were trying to perform. »
Ça laisse plutôt penser à une race condition que le code stripe dans dolibarr a du mal à gérer. »

Maintenant à la lecture de votre dernier message ça me semblerait un peu plus clair: ce message d’erreur est associé au 2° « mouvement » et si j’essaye de reconstituer l’historique (il faudrait les logs stripe détaillés pour être sûr) :

  • une opération de paiement est lancée pour la facture F002 (peu importe), elle se passe bien mais dolibarr n’a pas le retour disant qu’elle a été à son terme et pour lui elle n’est pas payée
  • dolibarr « relance » une opération de paiement pour la même facture mais la stripe lui dit « que l’état de la demande de paiement n’est pas compatible avec l’opération demandée » … ce qui semble assez « logique » : stripe détecte qu’il y a un « loup » … mais de mon point de vue il ne devrait PAS prélever s’il détecte un problème

donc ça mériterait de dérouler totalement les logs pour les interpréter pas à pas et vérifier cette idée mais encore une fois c’est peutêtre du temps perdu si le bug en question est « capté/géré » dans les nouvelles versions de dolibarr …

Je confirme cette dernière piste: je viens de regarder dans le code source de dolibarr 15 on y trouve une ligne qui parle de ce code d’erreur

htdocs/includes/stripe/stripe-php/lib/ErrorObject.php:    const CODE_PAYMENT_INTENT_UNEXPECTED_STATE = 'payment_intent_unexpected_state';

alors que dans le code de dolibarr 12 (votre version) elle n’y est pas … donc à mon avis vous n’aurez plus ce problème en v15

OK, je ne prendrai pas plus de votre temps.
On se retrouvera uniquement si nécessaire, dès que j’aurai fini ma montée de version.
Un grand merci

Au plaisir, et puis j’ai vu que nous ne sommes pas géographiquemet très éloignés !-)