THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline

#1 atos worldline SIPS 2

(21-06-2022 09:52:12)


Bonjour,

J'utilise le module de paiement Atos pour la solution sherlock's proposé par le LCL depuis plus de 10 ans sur thelia v1 puis v2.
Je dois migrer assez rapidement vers une nouvelle plateforme (sherlock's 2) qui repose désormais sur SIPS 2

De nouveaux modules Atos worldline ont été développé pour d'autres CMS mais je ne trouve rien pour thelia v2

Savez-vous si le module Atos actuel est compatible SIPS 2 ?

Si ce n'est pas le cas, comment avez-vous fait ? Je ne dois pas être le seul dans cette situation.

Par avance merci pour vos réponses.

Offline

#2 Re: atos worldline SIPS 2

(21-06-2022 10:36:04)


Le module Mercanet (https://github.com/thelia-modules/Mercanet) utilise la plate-forme SIPS 2.0. Actuellement, l'URL du serveur de production est codée en dur (ici : https://github.com/thelia-modules/Merca … i.php#L27), mais je suppose qu'on pourrait la passer dans un paramètre du module pour supporter d'autres banques que la BNP.

Si tu peux essayer de ton côté, ça m'intéresse smile


OpenStudio Toulouse

Offline

#3 Re: atos worldline SIPS 2

(21-06-2022 10:51:27)


je vais regarder cela.
Merci

Offline

#4 Re: atos worldline SIPS 2

(22-06-2022 17:21:13)


Bonjour,

J'ai récupéré le module, je l'ai rendu plus générique en remplaçant Mercanet par Worldline.
J'ai imaginé ajouter à la page de config du module dans le back-office, deux champs pour les urls de prod et de test propre a chaque plateforme.

Avant cela, j'ai voulu tester le module en changeant directement les adresses des serveurs (test/prod) dans le code avec les adresses communiquées par ma banque.

J'ai utilisé les paramètres de test de ma banque (MerchantId, clé secrete, version de la clé).

J'obtiens une erreur sur le paramètre OrderId().
print screen 1


Pensant que j'avais fais une erreur en modifiant le module, j'ai fais lme meme test avec le module Mercanet et j'obtiens la même erreur.

print screen 2

J'ai bien regardé aux lignes indiquées dans chaque fichier mais je ne sais pas interpréter ces erreurs et les corriger.

Offline

#5 Re: atos worldline SIPS 2

(23-06-2022 08:26:03)


L'exception vient de ce bout de code dans local/modules/Mercanet/Api/MercanetApi.php ligne 364 :

    public function setOrderId(int $orderId)
    {
        $this->parameters['orderId'] = $orderId;
    }

Tu utilises certainement PHP 5.6, qui ne supporte pas les déclarations de types scalaires (int, en l’occurrence).

Deux solutions :

1) Tu passes en PHP 7 (7.0 est le minimum pour un Thelia 2.4, 7.1 le max pour un Thelia 2.3, donc je dirais PHP 7.1) <---- solution recommandée, plus personne ne devrait utiliser PHP 5.
2) Tu modifies la signature de la méthode comme ci-dessous

public function setOrderId($orderId)

OpenStudio Toulouse

Offline

#6 Re: atos worldline SIPS 2

(23-06-2022 18:48:19)


Bonjour,

Merci pour les conseils, je suis passé en PHP 7.1 ! il était temps.
Plus de problème sur OrderId().

En revanche, je rencontre les problèmes suivants :
(cache>prod cache>dev sont vidé entre chaque essai)

En mode prod avec l'option migration simplifié de 1.0 à 2.0 coché dans le BO du module
au clic sur "proceed to payment" -> la meme page (order/invoice) se recharge

En mode dev avec l'option migration simplifié de 1.0 à 2.0 coché dans le BO du module
au clic sur "procced to payment" -> page d'erreur de la banque avant paiement avec message
print screen

En mode prod avec l'option migration simplifié de 1.0 à 2.0 NON coché  dans le BO du module
au clic sur "proceed to payment" -> la meme page (order/invoice) se recharge

En mode dev avec l'option migration simplifié de 1.0 à 2.0 NON coché dans le BO du module
au clic sur proceed to payment ->  redirection vers page de paiement -> validation paiement de test-> retour sur thelia ->page erreur avec l'info "ce numero de commande ne correspond pas à ce client" ,la commande ne passe pas au statut payé dans le back office et le client qui a passé la commande est déconnecté du front.
print screen

à deux reprises, retour sur thelia-> merci pour votre commande et commande payée dans le BO sans comprendre pourquoi.

Je ne sais pas ou agir..

Offline

#7 Re: atos worldline SIPS 2

(24-06-2022 08:04:06)


Le problème "missing transaction key" est lié au mode de "migration simplifiée". Il faut comprendre ce qu'est une migration simplifiée. C'est expliqué ici : https://documentation.sips.worldline.co … s-2.0.html. En gros, on continue à utiliser un ID de transaction via le champ s10TransactionId. Cette migration simplifiée doit avoir été mise en place par la banque, ce n'est pas toi qui décide de l'utiliser ! Donc vérifie d'abord le type de compte SIPS V2 avec la banque (simplifié ou pas) et configure le module en fonction.

Et si tu as des comportements différents entre le mode prod et le mode dev, alors vide les caches !!

Ensuite, l'erreur sur  /order/placed vient certainement d'une configuration incorrecte des cookies. Depuis un peu plus d'un an (en fonction des version des navigateurs), quand le serveur de la banque redirige le client vers /order/placed ou /order/cancel, le navigateur ne transmet plus le cookie de session PSPSESSID. Résultat: le client n'a plus de session, et voit une erreur qui peut lui faire penser que son paiement a échoué. Ceci concerne tous les sites Thelia qui utilisent des systèmes de paiement avec une redirection finale du client depuis le site de paiement vers la boutique, quelque soit la version.

La solution est d'ajouter SameSite=None; Secure au cookie de session (pour faire court. Les détails ici: https://web.dev/samesite-cookies-explained)

download

Tu peux configurer ton Apache pour qu'il configure automatiquement tes cookies avec cette directive dans le httpd.conf :

Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure;SameSite=None

OpenStudio Toulouse

Offline

#8 Re: atos worldline SIPS 2

(17-07-2022 21:39:40)


Bonjour,

Désolé pour cette réponse très tardive. Merci pour les infos et conseils.
Je n'ai pas eu le temps de m'y pencher à nouveau.

Je pense terminer cela pour mi aout.
Je te tiendrai au courant.

Encore merci

Offline

#9 Re: atos worldline SIPS 2

(03-10-2022 16:08:36)


Bonjour,

je viens de découvrir et d'installer le module atosv2.
J'ai rencontré la même difficulté que sur mon adaptation du module mercanet en ce qui concerne le message "invalid keyword code = 12 "... en phase de test.

Un technicien de chez Atos m'a aiguillé : "la plateforme de test est considérée comme une nouvelle plateforme 2.0, il ne faut donc pas activer l'option "Migration simplifiée d'un contrat 1.0" pour le mode test même si c'est notre cas.

Par contre, bien penser à l'activer (si on est concerné) au moment ou l'on passe en production.

Voila pour l'info,
Bye

Offline

#10 Re: atos worldline SIPS 2

(04-10-2022 15:17:19)


Tout a fait ! Ceci mériterait de figurer dans le readme du module.


OpenStudio Toulouse

Offline

#11 Re: atos worldline SIPS 2

(12-10-2022 17:28:52)


Bonjour,

J'ai ouvert un ticket sur Git : https://github.com/thelia-modules/AtosV2/issues/1
J'ai une erreur à l'installation (que je comprends) mais je ne sais pas ce qu'il faut faire, je peux créer ce dossier à la mano mais ça me semble bizarre qu'il ne soit pas là par défaut s'il est nécessaire ...

Module AtosV2: DirectoryIterator::__construct(/home/simuair/public_html/local/modules/AtosV2/images): failed to open dir: No such file or directory. [Cliquer ici pour plus de détails.](https://www.airsimu.com/admin/modules#)

Si quelqu'un a une idée ...

Pierre

Offline

#12 Re: atos worldline SIPS 2

(12-10-2022 18:26:11)


Il manquait dans la release le répertoire images.

La 1.0.2 corrige le problème.


OpenStudio Toulouse

Offline

#13 Re: atos worldline SIPS 2

(12-10-2022 20:38:40)


Ok top je vais tester ça !

Pierre

Offline

#14 Re: atos worldline SIPS 2

(12-10-2022 20:56:00)


Bon ça s'installe bien en tous cas, y-a-plus qu'à essayer en réel ...
Pierre

Offline

#15 Re: atos worldline SIPS 2

(13-10-2022 07:34:17)


Il est déjà en service sur plusieurs de nos boutiques, ça devrait bien se passer.


OpenStudio Toulouse

Offline

#16 Re: atos worldline SIPS 2

(18-10-2022 11:17:47)


Ça c'est bien passé, merci pour tout !
Pierre