Erreur paiement 3ds-v2

Bonjour à toutes et à tous,

Je viens d’arriver dans une entreprise qui utilise Dolibarr en version 14, PHP 7 , auto-herbergé sur linux.

Nous utilisions un système de paiement par lien avec Paybox et le crédit Agricole.
Depuis vendredi, impossible d’effectuer un paiement par lien. D’après la banque, le problème vient du faire que mon dolibarr transmet des informations qui étaient suffisantes pour la sécurisation 3DS, mais pas pour 3DS-v2.

Il faut donc que j’ajoute ces paramètres ( à savoir PBX_BILLING : nom, prénom, adresse, code postal… et PBX_SHOPPINGCART: la quantité du panier)

Pour info, j’ai déjà contacté la banque qui me renvoie vers un manuel d’intégration pour CMS, donc pas très utile.

Je n’ai absolument rien trouvé sur le 3DS-V2 et dolibarr, ni dans la doc, ni sur Google…

Est-ce que certains d’entre vous ont déjà été confrontés à ce problème, ou aurait une quelconque piste pour m’aider à trouver la solution ?

Merci d’avance pour vos réponses,

Bonjour,

Le gros problème actuel, c’est que le module PayBox de dolibarr est « déprécier » car on a personne pour le maintenir : https://github.com/Dolibarr/dolibarr/issues/13865
Donc coté Dolibarr, malheureusement, vous n’aurez pas de solution.

Du coup il vous reste :

  1. Vous avez un peu de compétence, et vous arrivez à faire les modifications vous-même pour les proposer à la communauté.
  2. Vous prenez un prestataire pour le faire : Dolibarr Preferred Partners

Bonjour @ksar,

Merci beaucoup pour votre réponse rapide et vos conseils.

J’ai essayé de fouiller dans les fichiers sources de Paybox mais j’ai peur que ce soit un peu bancale à chaque mise à jour de Dolibarr…

Si Paybox est problématique, connaitriez-vous un équivalent, qui soit maintenu… ?

Je cherche quand même de mon côté si je peux débloquer la situation, ça pourra peut être être utile à d’autres.

Merci encore

Stripe ou paypal je pense.

D’accord merci, pas sûr que le côté « comission » plaise à mon employeur mais ce sera mieux que rien…

Je cherche quand même si je peux faire une MAJ de Paybox, et vous tiens informé.

Merci encore pour vos réponses.

Bonjour :slightly_smiling_face:
Je pense que c’est facilement modifiable
ajouter des constantes dans paybox\admin\paybox.php pour commencer
puis dans le formulaire de paybox\lib\paybox.lib.php

Bonjour @dolibarr95,

En effet, j’ai réussi à ajouter les 2 variables. Merci pour tes conseils.
Cependant, ça ne fonctionne pas car je ne vois pas comment récupérer le nom, prénom, adresse complète de l’utilisateur, mais également la quantité totale du panier.
De plus, dans la doc d’intégration, je dois envoyer des données au format XML.

J’ai tenté en mettant des variables en dur pour tester, mais ça génère une erreur qui dit que les paramètres attendus ne sont pas bons…

Je continue de creuser un peu,

Merci pour ton aide

Bonjour :slightly_smiling_face:
Les paramètres attendus sont pas bon car il y une comparaison entre la clef générée des paramètres reçus et ceux envoyés.
Je vais regarder un peu si j’ai le temps.
Si on trouve une soluce ce serait bien de la proposer sur github.

Bonjour,

D’accord, merci pour l’info ! Je regarde aussi et on se tient informé

Pour ce qui est des infos sociétés elles sont chargés dans la page newpayment.php via l’objet $object

$thirdparty = new Societe($db);
$resultthirdparty = $thirdparty->fetch($invoice->socid);
if ($resultthirdparty <= 0) {
  setEventMessages(null, $thirdparty->errors, "errors");
}
$object = $thirdparty;

Pour la quantité totale du panier c’est quoi exactement ? le montant HT, le nombre d’articles, le nombre de références, le nombre de lignes dans la facture?

Merci de ton aide,

Voici ce qui est mis dans la documentation concernant la variable PBX_SHOPPINGCART " * PBX_SHOPPINGCART (obligatoire) : Nombre de produits dans le panier pour évaluation du besoin d’authentification par la banque de votre client en 3DSv2.

Sauf que dans le cadre d’une facture, ce n’est pas réellement un panier, je comptais mettre 1 par défaut ?

perso j’aurai mis le nombre de ligne de la facture puis basta.
Il faut aussi éditer la fonction print_paybox_redirect et ajouter les parametres puis les ajouter à la chaîne msg.

Ok je vais essayer de faire ça

Hello @SimonLeb,
Je suis au CA également et perso j’ai choisi de passer par [MBI ETransaction] je leur ai remonté récement cette 3DS-v2 et ils ont fait la MAJ très rapidement (MBI Up2pay ETransactions) c’est un petit budget (100€ / an) mais tu as l’avantage d’avoir MBI qui sont plutôt réactifs, dispo et ouvert à la discussion :slight_smile:
@mbinformatique

Bonjour @mvignaud

Merci pour l’information, je vais regarder cette solution.

Cependant, j’aimerai quand même aider ceux qui ne pourraient pas mettre ce prix.
Je continue de bosser dessus :slight_smile:

Merci pour l’info

2 « J'aime »

Bonjour :slightly_smiling_face:
@SimonLeb avez-vous placé les variables etc dans le formulaire et tout et tout ?

Bonjour :slightly_smiling_face:
@SimonLeb avez-vous pu ouvrir un PR sur Github?

Bonjour,

Non désolé pas encore ouvert de PR car rien de fiable. Je devais m’en occuper lundi, mais j’ai fais une MAJ Dolibarr et j’ai tout planté… J’essaie de remettre mon dolibarr en fonction et je me penche sur le sujet

1 « J'aime »

Bonjour,

Veuillez m’excuser pour le retard… La fin d’année a été chargée et je n’ai pas eu le temps de résoudre ce problème… jusqu’à aujourd’hui :slight_smile: !

Du coup, je voudrais partager le code sur Github, mais je ne sais pas trop comment faire ? J’ai modifié les fichiers sur une copie locale de mon dolibarr, et j’ai ajouté les modifs en prod ensuite.

Pourriez-vous me dire comment faire ? ou alors je post le code ici ?

Bonne journée

Bonjour :slightly_smiling_face:
Si vous avez un compte Github il suffit de vous connecter et de vous rendre sur la page concernée (sur la version « developp » je pense bien) puis cliquez sur le crayon et modifiez puis proposez cette modif avec une explication (en anglais).