Jump to content

Module EUROINFORMATION et bugs corrigés


ScaleDEV

Recommended Posts

  • Replies 217
  • Created
  • Last Reply

Top Posters In This Topic

Si j'avais la certitude de cette explication, je serais bien soulagé ! cependant en absence d'une réponse officielle du CIC.. un des interlocuteur CIC m'a indiqué qu'il y avait pas mal de réclamations de ce type en ce moment... mais un autre m'a confirmé que le problème venait du temps de réponse du module... bref pas plus avancé que ça.

Link to comment
Share on other sites

encore une commande en erreur de paiement sur prestashop et pourtant recouvré chez CIC (Le paiement a été effectué. La confirmation du paiement a été envoyée à votre serveur. Cependant votre serveur n'a pas renvoyé d'accusé de réception valide.)



ca serait bien que d'autres qui ont le meme problème appellent le CIC (08.20.82.17.35) il suffit d'indiquer son numero de tpe et d'expliquer le problème. Postez ensuite ici la réponse que vous obtenez, on pourra faire le point et peut etre déterminer plus precisement d'ou vient le problème.
le module ou les serveurs CIC ...?

Link to comment
Share on other sites

Bonjour
Message du support :

"concernant les retours CGI2 en erreur :
Nous avons étudié les raisons des erreurs de retour CGI2 que vous nous avez fait parvenir.
Les références traitées sont : ref 364 du 27/11 et ref 328 du 25/11.
Dans ces deux cas, le message que vous nous retourné n'est pas correct. En effet, le message attendu est "Version:1 OK" alors que vous nous retournez "An order has already been placed using this cart", message à l'origine des erreurs CGI2."

Je confirme que le problème es systématique après un premier paiement erroné.

Gnouff

Link to comment
Share on other sites

ah mais là vous parlez d'un premier paiement erroné !!! c'est normal alors ! (enfin, normal = ça a toujours été comme ça)
Je pensais que vous parliez sur un paiement direct, en une fois. Le module gère mal les confirmation (= il ne prend qu'un seul message pour un paiement, donc si le 1er message en retour est une erreur, alors c'es tfini). Ceci est à amélioré bien-sûr, mais rien à voir avec un bug alors.

Raph59, Jeckyl, vous parliez de ce pb dans le cas où le client avait déjà essayé de payer et s'était planté ? ou alors sur un paiement en une fois ?

Link to comment
Share on other sites

Oui je confirme que le problème arrive uniquement après un premier paiemet érroné.

Le client dispose de plusieurs essais pour payer sa commande. A chaque tentative de paiement, un message est envoyé au commerçant pour lui signifier le résultat du paiement (REFUSE ou VALIDE). Si un client fait une erreur de saisi de son numéro de carte lors du premier essai, le paiement sera refusé et le commerçant averti. Ainsi, un commerçant peut recevoir plusieurs mails de paiement refusé avant le mail valide.


Gnouff

Link to comment
Share on other sites

oui donc du coup, il faudrait effectivement que le module puisse gérer plusieurs messages retour de la banque pour une même transaction. Du coup, je doute de la sécurité du système.
Et sinon, c'est un peu lié, nous avons pas mal de soucis du même style à cause de la norme 3D secure en place depuis le 1er octobre, car les clients ne connaissent pas leur code, et ça foire le paiement. (dénoncé ici : http://www.bagatelles.fr/blog/index.php?post/3D-secure-banques-ont-mal-informe-les-clients)

Link to comment
Share on other sites

Pour info,
J'ai acheté le module officiel Prestashop "CM-CIC Paiement" pour 300 euros HT et il ne le gère pas. Même Bug que pour EuroInformaton.
Dégouté. :-(
Je te confirme que les erreurs de saise sont de plus en plus fréquente avec la mise en plca de 3D Secure

Link to comment
Share on other sites

aaaaaaaaaaah je m'en doutais !!!
je suis désolé pour toi.. mais je me doutais que même le module "officiel" ne gérait pas la "reprise" de commande suite à erreur de paiement. Et le 3D secure ne nous aide pas beaucoup !
Pour ma part, j'ai ajouté ce texte (en brut dans le code, donc non traduit) dans order_payment.tpl :



<!-- ***** INFO ***** -->

 

**** INFORMATION POUR LES PAIEMENTS PAR CARTE BANCAIRE ****


Si votre banque adhère au programme de sécurisation des paiements Verified by Visa et Mastercard Secure Code , après avoir validé le type de paiement "Payer par carte bancaire" vous serez redirigé(e) vers la page de notre banque (CiC) qui vous demandera len° de votre carte, la date d'expiration et le cryptogramme visuel. Quand vous aurez cliqué ensuite sur le bouton "VALIDER", vous verrez alors un nouvel écran s'afficher (votre banque) vous invitant à vous authentifier avec un code différent de votre "code confidentiel carte", ou encore avec votre date de naissance.

Ceci est dû à la mise en place de la nouvelle norme 3D Secure par les établissements bancaires afin de sécuriser davantage les paiements en ligne.

Selon votre banque, la procédure sera différente :



  • Crédit Mutuel : vous devez vous authentifier avec votre identifiant de banque en ligne, puis indiquer un des codes inscrit sur votre "carte de clés personnelles" (une grille de 64 codes à 4 chiffres dans laquelle il faut piocher le bon code en fonction de la ligne et de la colonne demandée par le site web).

BNP Paribas, Banque Postale, Axa Banque et Caisse d'Epargne : vous devez indiquer votre date de naissance.

Société Générale : vous devez indiquer votre date de naissance, à partir de septembre 2009 : un code est envoyé par sms.

Crédit Agricole (dont LCL) : vous devez indiquer un mot de passe personnel, crée lors de la première utilisation.


BRED Banque Populaire : une clé d'authentification Ip@b, CD format carte de crédit ou alors votre date de naissance.

Groupama Banque : vous devez indiquer votre nom, le code postal de votre résidence et votre date de naissance.

 

Pour vous assurer de la possibilité de payer en ligne avec votre carte (ou pour toute question relative à cela), adressez-vous à votre banque.


<!-- ********************************* -->
Link to comment
Share on other sites

Pour ma part j'ai modifié un bout de code pour ne rien générer du tout si la banque envoie un paiement en état refusé : pas de commande créée donc pas de "1er paiement avec statut erreur" qui bloque une éventuelle deuxième commande et plus de ligne "erreur" dans le BO de PrestaShop.

Le seul problème est si vous voulez rappeler le client suite à son erreur pour pousser la vente en lui faisant repasser commande : vous ne saurez qu'il y a un problème qu'en passant dans le BO de la banque.

Link to comment
Share on other sites

Dans order.php du module, à la fin il y a :

}elseif(strtolower($bruteVars['code-retour'])=='annulation'){
   include_once(dirname(__FILE__).'/euroinformation.php');
   $EI = new EuroInformation();
   $EI->validateOrder($idcartrecup,_PS_OS_ERROR_,0 , $EI->displayName,'Paiement No '.intval($bruteVars['reference']));
}



Il suffit de mettre en commentaire cette partie :

}elseif(strtolower($bruteVars['code-retour'])=='annulation'){
/*
   include_once(dirname(__FILE__).'/euroinformation.php');
   $EI = new EuroInformation();
   $EI->validateOrder($idcartrecup,_PS_OS_ERROR_,0 , $EI->displayName,'Paiement No '.intval($bruteVars['reference']));
*/
}



Je répète pour ceux qui n'ont pas lu mon post ci dessus, vous n'aurez plus les erreurs de paiement provenant de la banque dans votre BackOffice.

Link to comment
Share on other sites

Pour info,
J'ai acheté le module officiel Prestashop "CM-CIC Paiement" pour 300 euros HT et il ne le gère pas. Même Bug que pour EuroInformaton.
Dégouté. :-(
Je te confirme que les erreurs de saise sont de plus en plus fréquente avec la mise en plca de 3D Secure


merci pour l'info et désolé pour toi. Je me "tatai" a prendre le module offciel également car cela m'embete pour mon client, mais si le "bug" n'est pas gerer non plus... En passant je n'ai rien contre les modules payants, il faut bien que tout le monde travaile, c'est normal, mais si un dev pondait un module qui resolve ce "problème" cela m'intéresse d'etre tenu au courant.
en attendant, je pense que je vais essayer ce qui est indiqué plus haut.

merci
Link to comment
Share on other sites

oui mais le soucis, c'est que dans l'email (et dans le BO de la banque), le seul moyen de retrouver le client/la commande c'est de passer par le n° de transaction... et c'est un peu trop compliqué en fait... donc si on veut pouvoir guider les clients, il faudrait encore trouver une alternative à ta solution, solution somme toute bienvenue et appréciée :)

par contre, si on s'en tape que le client soit infichu de rentrer son n° de carte ou de lire les courriers de sa banque indiquant comment payer en ligne, alors effectivemment, c'est une bonen soluce, et si je devais revendre la solution e-commerce avec module de paiement CB, je procèderais certainement ainsi :)

Link to comment
Share on other sites

Bonjour,
j'aimerais mettre en ligne ma boutique, mais je bute réellement avec le module euroinformation.
le pire est que la banque aussi (CIC-CIO)
ils me disent que prestashop et ce module ne sont pas compatible avec la nouvelle norme.
ils ne font pas de fichier key avec version tatati tatata......

du coup je suis un peu dégouté car je trouve prestashop très clair a utiliser par rapport à ses concurents.
quelqu'un aurait il solutionné ce problème.
merci d'avance

Link to comment
Share on other sites

ah bein tiens ! c'est justement le tatati tatata qui aurait été intéressant alors pour modifier le module en conséquence de cette norme (quelle norme ?)..

ou alors tu parles simplement de l'installation du module ? tu es à quelle banque ?
(si c'est à l'installation que tu bloques, as-tu reçu un fichier toto.key de ta banque où toto est le n° de ton tpe virtuel ?)

Link to comment
Share on other sites

bonjour,
le tatati tatata, serait d'après ce que j'ai vu en installant le module le numéro de tpe recu dans toto.key

VERSION 1 12345678901234567890123456789012345678P0
HMAC-SHA1
IMPORTANT ! Coller dans cette zone multi-lignes le contenu de votre fichier clef nnnnnnn.key, (texte "matière" commençant également par "VERSION", obtenu en téléchargement SSL sur le site sécurisé de la banque ). Remplacer l'exemple de clef ci-dessus et suivre la sequence des boutons. Cette page d'outils s'exécutera localement.


Pour la banque, c'est marqué dans mon post CIC CIO
Par nouvelle norme, je pense qu'ils comprennent 3d secure ou un truc comme ca.
pour le fichier xxxx.key, on me dit que ca n'a rien a voir avec ce que je dois mettre dans la configue.
J'avoue que je suis un peu perdu maintenant.
Merci d'avance
Link to comment
Share on other sites

Bonjour,

Je rencontre actuellement un problème bizarre avec ce module que je n'arrive pas à identifier (suis en mode de test).

Mes premiers tests se sont fait sur un domaine1 (test ok).

Ensuite j'ai copié ce module sur un autre domaine2 (test de paiement aussi ok)

Mais quand j'arrive sur la page de paiement de la banque CIC, le lien en bas de page retour "chez votre marchand", me renvoi vers la page du premier domaine1, or que la transaction est parti du domaine2 et ça devrait me renvoyer vers le domaine2.

J'ai regardais du coté du BO, dans la configuration Euro Information est ok.

Je ne comprends pas pourquoi il tient toujours compte du lien retour vers le premier site et non pas vers le 2eme site.

Avez-vous une idée d’où peut venir ce problème ?

Merci

Link to comment
Share on other sites

Bonjour,

Je rencontre actuellement un problème bizarre avec ce module que je n'arrive pas à identifier (suis en mode de test).

Mes premiers tests se sont fait sur un domaine1 (test ok).

Ensuite j'ai copié ce module sur un autre domaine2 (test de paiement aussi ok)

Mais quand j'arrive sur la page de paiement de la banque CIC, le lien en bas de page retour "chez votre marchand", me renvoi vers la page du premier domaine1, or que la transaction est parti du domaine2 et ça devrait me renvoyer vers le domaine2.

J'ai regardais du coté du BO, dans la configuration Euro Information est ok.

Je ne comprends pas pourquoi il tient toujours compte du lien retour vers le premier site et non pas vers le 2eme site.

Avez-vous une idée d’où peut venir ce problème ?

Merci

Salut,

Ne serais ce pas du au fait que tu n'a pas donné les nouvelles adresses à ta banque ?

Puisque la partie saisie de la carte est chez eux.
Link to comment
Share on other sites

Salut Jeckyl,

J'ai déjà donné ces nouvelles adresses à la banque, et c'est pris en compte, quand je fais une transaction, ca se passe bien, même du coté du BO, la commande est validée...etc.

J'ai contacté la banque par rapport à ce problème, leur réponse est :

Cette URL est à paramétrer dans le formulaire aller. Il s'agit du champ "url_retour_ok".


En plus de ça, la banque n'a besoin que de ces 2 infos pour configurer ton TPE :

- La page d'accueil de la boutique
- La lien vers de retour vers .../modules/euroinformation/order.php

et le problème se situe au niveau de ce lien : .../my-account.php

Dans le module, je vois pas où je pourrais modifier ce paramètre.

peut être un problème de cache, je pense pas vraiment !
Link to comment
Share on other sites

Salut,

C'est dans le module j'ai trouver ceci dans euroinformation.php L652~623 +-

    <input type=hidden name=urlRetourOK value="http://'.htmlspecialchars($_SERVER['HTTP_HOST'].__PS_BASE_URI__, ENT_COMPAT, 'UTF-8').'my-account.php" disabled="disabled" />
   <input type=hidden name=urlRetourKO value="http://'.htmlspecialchars($_SERVER['HTTP_HOST'].__PS_BASE_URI__, ENT_COMPAT, 'UTF-8').'order.php" />

Link to comment
Share on other sites

Salut,

Oui j'ai vu ces deux lignes, mais le problème se situe sur le lien 'Cliquer ici pour revenir à la société xxxx' quand le client arrive sur l'interface de paiement CIC, si on clique sur ce lien, il me renvoi vers le premier domaine, donc pas vers le site qui a envoyé la commande vers la banque...

Link to comment
Share on other sites

[Resolu]

ça devait être dû au cache, j'ai juste coché CIC production=> sauvegarder, ensuite re-cocher mode test et sauvegarder, le lien retour vers la boutique est maintenant correct.

Merci à tous pour vos réponses !

Link to comment
Share on other sites

Oula le post a avancé j'avais pas remarqué!! :P

Moi EnveloppeBulle je parlais bien d'un problème dès la première saisie, et non du bug connu de ce module qui ne gère pas un paiement accepté suite à une première erreur de saisie...

Mais bon c'est arrivé qu'une fois et depuis ca remarche parfaitement, donc tout est entré dans l'ordre!

Link to comment
Share on other sites

@Pshopexpert (et aux autres) : pourrais-tu m'aider à modifier cette fonction "validateOrder" (dans PaymentModule.php) car je n'y arrive pas.
Voici le code que j'ai modifié, à la fin de la fonction :

            else
               die(Tools::displayError('Order creation failed'));
       }
       else {
           if (Validate::isLoadedObject($cart) AND $cart->OrderExists() != 0)
           {
                   //récupération du n° de commande
                       $sql = 'SELECT id_order FROM '._DB_PREFIX_.'orders where id_cart='.intval($id_cart);
                       $resultat = Db::GetInstance()->Execute($sql);
                       $r = mysql_fetch_assoc($resultat);
                       $id_order_current = intval($r['id_order']);

               $id_order_state_current = getLastOrderState(intval($id_order_current));
               $status = $id_order_state_current->template[2];
               if (($status == "payment_error") && ($id_order_state =="_PS_OS_PAYMENT_"))
               {
               /* Set order state in order history */
               $history = new OrderHistory();
               $history->id_order = intval($id_order_current);
               $history->changeIdOrderState(intval($id_order_state), intval($id_order_current));
               $history->addWithemail(true, $extraVars);

                   /* Hook new order */
               $orderStatus = new OrderState(intval($id_order_state));
                   if (Validate::isLoadedObject($orderStatus))
                   {
                       Hook::newOrder($cart, $order, $customer, $currency, $orderStatus);
                       foreach ($cart->getProducts() as $product)
                           if ($orderStatus->logable)
                               ProductSale::addProductSale($product['id_product'], $product['quantity']);
                   }
               if ($orderStatus->send_email AND Validate::isEmail($customer->email))
                   Mail::Send(intval($order->id_lang), 'order_conf', 'Order confirmation', $data, $customer->email, $customer->firstname.' '.$customer->lastname, NULL, NULL, $fileAttachment);

               $this->currentOrder = intval($id_order_current);
               return true;

               }
               else
               die(Tools::displayError('An order has already been placed using this cart (1)'));
           } 
           else
           die(Tools::displayError('An order has already been placed using this cart (2)'));
           }
   }



L'idée est que si le paiement est ok (dans le cas d'un 2ième essai réussi cette fois), alors plutôt que de dire directement qu'une commande existe déjà avec ce panier, je dévie pour autoriser un update du status de la commande selon certaines conditions, mais ça ne fait rien, et je ne maîtrise pas le hook etc.. donc voilà.

Link to comment
Share on other sites

je ne comprends pas bien (désolé) car le processus normal crée un nouvelle commande en se basant sur le contenu du cart.
Si je mets id_cart =0, je pense qu'il va vouloir essayer de créer une commande ,avec rien dedans.. enfin.. je ne vois pas trop le but de la manoeuvre.
Pourrais-tu décomposer la démarche à la quelle tu pensais ?

Link to comment
Share on other sites

désolé mais j’ai persévéré dans ma voie, et J’Y SUIS ARRIVé !!!!!

voici donc ma solution pour permettre de valider une commande après une première tentative de paiement infructueuse (exemple : tentative de paiement par CB -> 3d secure -> abandon -> retour page paiement initiale -> nouvelle saisie de n° de CB -> validation paiement ok)

Modifier la fin de la fonction “validateOrder()” (dans PaymentModule.php), après "die(Tools::displayError('Order creation failed'));" (ligne 338 ?)

               die(Tools::displayError('Order creation failed'));
       }
       else {
           if (Validate::isLoadedObject($cart) AND $cart->OrderExists() != 0 AND $paymentMethod == 'Carte Bancaire')
           {
                   //récupération du n° de commande
                       $sql = 'SELECT id_order FROM '._DB_PREFIX_.'orders where id_cart='.intval($id_cart);
                       $resultat = Db::GetInstance()->Execute($sql);
                       $r = mysql_fetch_assoc($resultat);
                       $id_order_current = intval($r['id_order']);

                           /* Copying data from cart */
               $order = new Order();
               $order->id = $id_order_current;
               $order->id_carrier = intval($cart->id_carrier);
               $order->id_customer = intval($cart->id_customer);
               $order->id_address_invoice = intval($cart->id_address_invoice);
               $order->id_address_delivery = intval($cart->id_address_delivery);
               $vat_address = new Address(intval($order->id_address_delivery));
               $id_zone = Address::getZoneById(intval($vat_address->id));
               $order->id_currency = ($currency_special ? intval($currency_special) : intval($cart->id_currency));
               $order->id_lang = intval($cart->id_lang);
               $order->id_cart = intval($cart->id);
               $customer = new Customer(intval($order->id_customer));
               $order->secure_key = pSQL($customer->secure_key);
               $order->payment = substr($paymentMethod, 0, 32);
               if (isset($this->name))
                   $order->module = $this->name;
               $order->total_paid_real = floatval(number_format($amountPaid, 2, '.', ''));
               $order->recyclable = $cart->recyclable;
               $order->gift = intval($cart->gift);
               $order->gift_message = $cart->gift_message;
               $currency = new Currency($order->id_currency);
               $amountPaid = floatval(Tools::convertPrice(floatval(number_format($amountPaid, 2, '.', '')), $currency));
               $order->total_paid_real = $amountPaid;
               $order->total_products = floatval(Tools::convertPrice(floatval(number_format($cart->getOrderTotal(false, 1), 2, '.', '')), $currency));
               $order->total_discounts = floatval(Tools::convertPrice(floatval(number_format(abs($cart->getOrderTotal(true, 2)), 2, '.', '')), $currency));
               $order->total_shipping = floatval(Tools::convertPrice(floatval(number_format($cart->getOrderShippingCost(), 2, '.', '')), $currency));
               $order->total_wrapping = floatval(Tools::convertPrice(floatval(number_format(abs($cart->getOrderTotal(true, 6)), 2, '.', '')), $currency));
               $order->total_paid = floatval(Tools::convertPrice(floatval(number_format($cart->getOrderTotal(true, 3), 2, '.', '')), $currency));

               $id_order_state_current = OrderHistory::getLastOrderState(intval($id_order_current));
               $status = $id_order_state_current->template[2];
               if (($status == "payment_error") && ($id_order_state == _PS_OS_PAYMENT_))
               {

               /* mise à jour de total paid real */
                       $sql = 'UPDATE '._DB_PREFIX_.'orders SET total_paid_real='.$order->total_paid_real.' where id_order='.$id_order_current.'';
                       $resultat = Db::GetInstance()->Execute($sql);

               /* Set order state in order history */
               $history = new OrderHistory();
               $history->id_order = intval($id_order_current);
               $history->changeIdOrderState(intval($id_order_state), intval($id_order_current));
               $history->addWithemail(true, $extraVars);

                   /* Hook new order */
               $orderStatus = new OrderState(intval($id_order_state));
                   if (Validate::isLoadedObject($orderStatus))
                   {
                       Hook::newOrder($cart, $order, $customer, $currency, $orderStatus);
                       foreach ($cart->getProducts() as $product)
                           if ($orderStatus->logable)
                               ProductSale::addProductSale($product['id_product'], $product['quantity']);
                   }
               if ($orderStatus->send_email AND Validate::isEmail($customer->email))
                   Mail::Send(intval($order->id_lang), 'order_conf', 'Order confirmation', $data, $customer->email, $customer->firstname.' '.$customer->lastname, NULL, NULL, $fileAttachment);

               $this->currentOrder = intval($id_order_current);
               return true;

               }
               else
               die(Tools::displayError('An order has already been placed using this cart (1)'));
           } 
           else
           die(Tools::displayError('An order has already been placed using this cart (2)'));
           }
   }



Cela change le status de la commande (erreur paiement -> paiement validé), et crédite le champs total_paid_real de la commande.

Link to comment
Share on other sites

Normalement, j'ai dû faire les modifications nécessaires pour qu'il n'y ait pas d'embrouille..

A noter simplement que c'est adapté pour MES sites, donc si votre module de paiement CB n'affiche pas "Carte Bancaire" ou si votre nom de template pour le status de commande erreur n'est pas "payment_error", ça ne fonctionnera pas.

Un email est bien envoyé au client lui confirmant la bonne réception du paiement, malgré le fait que le scipt renvoi le message "Error: mail parameters are corrupted"
Donc pas de soucis majeur.

Si vous découvrez un gros bug, signalez-le ! merci ;)

Link to comment
Share on other sites

  • 2 weeks later...

Salut !

Je poser à nouveau la question de JM:
- Y’a-t-il une archive en particulier à conseiller ?

l'archive la plus récente remonte à plus de 4 pages de thread ou bcp de choses ont été modifiée apparemment !
alors je me demandais si qq'un avait une version qu'il a maintenue a jour ? :)

Est-ce preferable de la demander en mp ?

Merci en tout cas pour la contrib' et ceux qui bossent dessus !

Link to comment
Share on other sites

[RESOLU] bonjour

j’ai reçu ma clé pour pouvoir paramétrer euroformation banque CIC.

quand je crois avoir tout configuré, j’ai ce message: lors d’un payement:
Les informations transmises par votre commerçant ont une signature non valide :
Le niveau de sécurité exigé n’est pas atteint.
Notre serveur n’est pas en mesure de traiter la demande de paiement
relative à votre commande.

pour le paramétrage on demande de renommer fichier key, je ne sais pas quoi faire?
ensuite on me demande phrase clé, c’est quoi ? merci.

si quelqu’un pourrais m’aider, ça serait super, il faut que mon module carte bancaire fonctionne rapidement, c’est très urgent!

Link to comment
Share on other sites

désolé mais j’ai persévéré dans ma voie, et J’Y SUIS ARRIVé !!!!!

voici donc ma solution pour permettre de valider une commande après une première tentative de paiement infructueuse (exemple : tentative de paiement par CB -> 3d secure -> abandon -> retour page paiement initiale -> nouvelle saisie de n° de CB -> validation paiement ok)

Modifier la fin de la fonction “validateOrder()” (dans PaymentModule.php), après "die(Tools::displayError('Order creation failed'));" (ligne 338 ?)

               die(Tools::displayError('Order creation failed'));
       }
       else {
           if (Validate::isLoadedObject($cart) AND $cart->OrderExists() != 0 AND $paymentMethod == 'Carte Bancaire')
           {



Cela change le status de la commande (erreur paiement -> paiement validé), et crédite le champs total_paid_real de la commande.



Bonjour EnveloppeBulle!

Merci de t'avoir attardé sur ce problème!

Mais dit moi, est-ce que cette modification fait juste changer le statu de la commande à paiement accepté, ou alors il créé une nouvelle commande ? Je te demande ça car je sais que si on a une erreur de paiement, et qu'on change manuellement de status en "Paiement accepté", il ne déduit rien de l'inventaire, donc je ne sais pas si ce problème pourrai se produire avec ta modification?
Link to comment
Share on other sites

Mais je me pose une question!

Quand un paiement est refusé, La commande se valide avec erreur de paiement..... pourquoi ne pas simplement non valider la commande? Cela pourrai causer un problème quelque part? au niveau de la loie peut être?

Car cela éviterai au gens de devoirs reremplir leur panier si il veulent refaire une tentative le lendemain, et nous ca éviterai des numéro de commande inutile, et d'avoir ce problème cité plus haut, qui est corrigé en revanche avec les modifs de EnveloppeBulle...

En fait le seul avantage que je vois d'avoir ces erreurs de paiement sont a des fin de statistique, voir si on a des clients qui ont été transformer en acheteur, mais refuser à cause du paiement.. après ya peut être autre chose que je sais pas...

Link to comment
Share on other sites

  • 2 weeks later...

Salut les p'tits loups,
merci pour le super taf partagé!!!

Perso j'utilise le module proposé sur ce post.
Il fonctionne très bien, suffit de bien tout lire pour que la boutique tourne sans anicroches!
J'ai encore 2 ou 3 trucs à comprendre et paramétrer,

Merci à vous & aux posts fort utiles!

Link to comment
Share on other sites

Salut a tous... j'ai lu toutes les pages concernant EUROINFORMATION et maintenant je bloque sur un message d'erreur de la banque : votre commande a déjà était payée... j'ai supprimé toutes les commandes et j'ai toujours ce message .. si une bonne âme pouvait m'aider ...

Link to comment
Share on other sites

j'ai avancé !!
maintenant je peux payer la commande, le client recoit un mail qui lui dit que la commande est payée. La commande est a l'etat payée.
par contre je recois un mail de la banque me disant :

Erreur 0

REPONSE DE VOTRE CGI DE CONFIRMATION :
Pragma: no-cache
Content-type: text/plain
Version: 1 Document Falsifie 0--6484***+15/01/2010_a_21:04:21+1EUR+3+Commande+1.2open+payetest+
quelqu'un a une idée ... j'ai pas trouvé sur le forum ...

Link to comment
Share on other sites

  • 2 weeks later...

Bonjour,

Si vous cherchez une alternative à ce module. Je peux vous en proposer un qui est compatible avec la version 3 du CM-CIC. Ce module gère les points suivants:

#Compatible 3Dsecure (version 3)
#Gère les erreurs de saisie ou paiement erroné (3D secure, numéro de carte, …)
#Message personnalisé en cas de succès ou d‘échec de paiement
#Documentation complète qui vous guide de A à Z
#Mises à jour et évolutions offertes pour une durée d’un an
#Dernière librairie native de Euro Information
#Gestion multi-langues
#Module en production sur plusieurs boutiques (CM et CIC)
#Prix

[Pas de pub sur ce forum - Edit par Patric]

Link to comment
Share on other sites

  • 2 weeks later...
  • 1 month later...

hello !!!
depuis que je suis passé à la version 1.2.5 j'ai des problemes de commande fantome quand un client paye en CB avec le module Euroinformation, lepaiement arrive bien sur mon compte, mais aucune commande en BO on ne peut voir le panier que dans client et transporteur si c'est un nouveau client. si c'est un client deja inscrit c'est encore plus galere pour retrouver, uniquement possible avec les outils stat.
j'aai vu plusieur personne qui ont ce probleme sur le forum mais sans reponses je m'oriente vers des droits de fichiers chmod en 777 pour tout le module mais je suis pas sur que cela soit bon
si quelqun a une idée ??????
MERCI

Link to comment
Share on other sites

Peut être juste simplement que ton serveur est temporairement inaccessible comme par hasard au mauvais moment quand la banque essais de retourner le message de confirmation... j'ai eu une semaine ou j'ai eu 3 erreur de ce type, mais sans rien changé dans mes config ca s'est rétablie tout seul et depuis je n'ai plus eu de problème.

Pour simplifier le tout j'ai acheté sur prestastore le module qui permet de valider des paniers en commande, je ne mettrait pas de lien vue que la pub est interdite mais tu ne devrai pas avoir de mal à trouver, ce n'est pas obligatoire, mais ca facilite la vie à petit prix.

Uu encore parfois dans le mail que la banque te retourne en te disans que ta commande est validé mais que la réponse du serveur est invalide, si tu regarde bien dans cette email il te joint l'adresse exacte que la banque a faite pour envoyer la réponse a ton serveur, il te suffi donc de cliquer sur ce lien pour valider la commande :)

Link to comment
Share on other sites

bonjour à tous
j'essaie d'utiliser le module en zip au début du post
je suis en version 1.2.5
actuellement en phase de test
configuration
dans la partie configuration je recopie la clé donnée juste au dessus en enlevant les deux premières lettres puisque c'est noté prendre la deuxième partie hexadécimale
je précise que je prends la clé version antérieur à 3.0

Ce qui fonctionne
accès au mode de paiement cic dans mon cas
acceptation du paiement par la banque ci dessous le fichier envoyer par la banque
2010-04-09;*******;19;PA;2010-04-09;18:33:35;749.0;EUR;000000;None;19;rr;1219;oui;Commande
résultat je reçois le paiement de la banque


ce qui ne fonctionne pas
tout le retour vers prestashop
la commande n'apparait pas dans le panier donc pas de mail de confirmation etc

j'ai vu que quelqu'un avait le même soucis mais pas de réponse à ce sujet .
est ce que quelqu'un a des infos pour débuger

merci d'avance à tous

Link to comment
Share on other sites

waouh merci de ta réponse super rapide
étant beginner je me permets une petite question d'éclaircissement
je dois comparer le lien dans la partie config du module nommée page d interface retour
et celui saisie par la banque dans son interface ?

quand je clique sur retour sur le site dans la partie paiement du cic je reviens bien sur le panier.
mais celui ci est vide


merci d'avance
jluc

Link to comment
Share on other sites

  • 2 weeks later...
Bonjour à tous,

Je rencontre exactement le même problème, à savoir :
- lorsqu'un client se trompe lors de la première saisie de ses coordonnées bancaires, j'obtiens un message CGI2 OK
- mais lorsqu'il les saisit pour la 2e fois, j'obtiens une erreur CGI

Le paiement a tout de même bien lieu, d'ailleurs je reçois ce message :
"Nous vous informons que votre interface de retour a emis un accuse de reception INVALIDE et la commande a ete VALIDEE."

tandis que le client reçoit ce message par mail :

"Une erreur est survenue lors du paiement de votre commande.
Vous pouvez accéder au suivi de votre commande et télécharger votre facture dans "Historique des commandes" de la rubrique "Mon compte" sur notre site."

ce qui se répercute sur le backoffice de la boutique par "erreur de paiement" à côté de la commande concernée.

Help!



Bonjour,

comme évoqué précédemment, lors de la phase de paiement via CIC et lorsqu'un mauvais numéro de cb est renseigné, le paiement vient en erreur en bloquant la commande et celle-ci est enregistrée en "Erreur de Paiement" dans le back office (Code retour :Annulation CGI2 : OK).
Après le 2ème essai avec cette fois ci une saisie correct des infos cb on obtient ceci : "Code retour payetest CGI2 : NOT OK" et toujours commande enregistrée en "Erreur de Paiement"

quelqu'un aurait il trouvé une solution ? :roll:

Pascal

ps: Paiement (module euroinformation) En phase de test sur v1.3.0.3
Link to comment
Share on other sites

ça marche de la 1.1.0.5 à la 1.2.5.0... pas essayé pour la 1.3.
Si le pb ne vient pas d'une mauvaise copie du code (j'avoue que ça n'est pas forcément très clair), il faudrait peut-être reprendre la logique et l'adapter au nouveau code.. mais là... je ne vais pas pouvoir faire grand chose dans l'immédiat...

Link to comment
Share on other sites

  • 2 weeks later...
J'ai donné la solution quelques posts avant (page précédente) !

http://www.prestashop.com/forums/viewreply/165905/


Bonjour,

merci pour ta réponse, mais çà ne fonctionne pas sur la v1.3 ;-)

Pascal



Bonjour,

petit UP :exclaim: , car là, je n'arrive pas à le faire fonctionner sur la v1.3 malgré les modifs apportées et c'est dommage !

alors, ne sait on jamais ! peut-être qu'un petit génie passera par là..... ;-)

Pascal
Link to comment
Share on other sites

  • 5 weeks later...

Bonjour à tous,
Je viens de monter une petite boutique Prestashop (Version 1.3.1.1 - 0.258s)
Le module fonctionne pour cette version ?
Est-ce que c'est difficile à mettre en place ? (enfin, je viens de voir le pdf d'instructions à l'install, ça a l'air clair ...)
Merci pour toute info ou conseil...

Link to comment
Share on other sites

  • 2 weeks later...

Bonjour,

pour ma part, le probleme que j'ai eu avec le module euroinformation tel que je l'ai téléchargé dans ce forum, se présentait lorsque (en phase de test) j'effetué un achat avec la mauvaise carte de paiement et que je retentais l'opération avec la bonne carte.
le retour dans ma boutique était une commande avec le statut erreur de paiement.
pas de souci quand je payais avec la bonne carte du premier coup.

j'ai résolu mon probleme en changeant juste une lettre dans le code du fichier order.php

donc la où il est écrit :

// Validation et enregistrement de la commande //
if( strtolower($bruteVars['code-retour'])=='payetest' || strtolower($bruteVars['code-retour'])=='paiement'){
   include_once(dirname(__FILE__).'/euroinformation.php');
   $EI = new EuroInformation();
   $montant = number_format($bruteVars['montant'], 2, '.', '');
   $EI->validateOrder($idcartrecup, _PS_OS_PAYMENT_, $montant, $EI->displayName,'Paiement No '.intval($bruteVars['reference']));
}elseif(strtolower($bruteVars['code-retour'])=='annulation'){
   include_once(dirname(__FILE__).'/euroinformation.php');
   $EI = new EuroInformation();
   $EI->validateOrder($idcartrecup,_PS_OS_ERROR_,0 , $EI->displayName,'Paiement No '.intval($bruteVars['reference']));
}
///////////////////////////////////////////////////



j'ai fait cette modif :

// Validation et enregistrement de la commande //
if( strtolower($bruteVars['code-retour'])=='payetest' || strtolower($bruteVars['code-retour'])=='paiement'){
   include_once(dirname(__FILE__).'/euroinformation.php');
   $EI = new EuroInformation();
   $montant = number_format($bruteVars['montant'], 2, '.', '');
   $EI->validateOrder($idcartrecup, _PS_OS_PAYMENT_, $montant, $EI->displayName,'Paiement No '.intval($bruteVars['reference']));
}elseif(strtolower($bruteVars['code-retour'])=='Annulation'){
   include_once(dirname(__FILE__).'/euroinformation.php');
   $EI = new EuroInformation();
   $EI->validateOrder($idcartrecup,_PS_OS_ERROR_,0 , $EI->displayName,'Paiement No '.intval($bruteVars['reference']));
}
///////////////////////////////////////////////////



c'est à dire que pour le code-retour d'erreur j'ai remplacé "annulation" par "Annulation" donc avec un "A" en majuscule

et ca marche

en espérant que cela vous aide.

Link to comment
Share on other sites

  • 3 weeks later...

Bonjour à tous,

J'ai le même problème que le post ci-dessus...

J'ai télécharger le zip qui est dans les premières pages de ce topic et j'utilise la version 1.2.5.0.
Pour redécrire les symptômes, pas de commande enregistré dans le backoffice et le CGI2 : NOT OK.
Pour information, je suis en mode TEST.

En vous remerciant par avance pour votre aide !!

Bonne journée.

superdje83

Link to comment
Share on other sites

Bonjour à tous,

Je viens de terminer la mise en route de ce module avec le ZIP de la première page bravo à mdi51, et à vous tous !

A partir des sources j'ai modifié deux éléments seulement :

1 le "a" de annulation par un "A" majuscule solution de "beatrice62" trois post au dessus
2 l'adresse de mise en production du credit mutuel
ligne 725 de euroinformation.php
<input type="radio" name="BankServer" value="https://paiement.creditmutuel.fr/paiement.cgi" '.$checkcmprod.'/> Crédit Mutuel Production 

Pour superdje83 et Robertoons

je pense que votre problème vient de l'adresse de réponse de la banque
il faut demander au banquier de mettre en place la réponse sur :

Page Interface Retour :
http://www.votresite.com/modules/euroinformation/order.php

indiqué dans la page de paramètre du module.

Bon courage.

Gégé

Link to comment
Share on other sites

  • 2 weeks later...

Bonjour,

ayant le même problème que Robertoons et superdje83, n'y connaissant pas grand chose,
pourriez-vous me dire si ce bout de code est bon (je suis au CIC):

Serveur bancaire :


<input type="radio" name="BankServer" value="https://ssl.paiement.cic-banques.fr/telepaiement/paiement.cgi" '.$checkcicprod.'/> CIC Production 
<input type="radio" name="BankServer" value="https://ssl.paiement.cic-banques.fr/test/paiement.cgi" '.$checkcictest.'/> CIC Test


<input type="radio" name="BankServer" value="https://www.creditmutuel.fr/telepaiement/paiement.cgi" '.$checkcmprod.'/> Crédit Mutuel Production 
<input type="radio" name="BankServer" value="https://paiement.creditmutuel.fr/test/paiement.cgi" '.$checkcmtest.'/> Crédit Mutuel Test


<input type="radio" name="BankServer" value="https://ssl.paiement.banque-obc.fr/telepaiement/paiement.cgi" '.$checkobcprod.'/> OBC Production 
<input type="radio" name="BankServer" value="https://ssl.paiement.banque-obc.fr/test/paiement.cgi" '.$checkobctest.'/> OBC Test


<input type=hidden name=urlRetour value="http://'.htmlspecialchars($_SERVER['HTTP_HOST'].__PS_BASE_URI__, ENT_COMPAT, 'UTF-8').'modules/euroinformation/order.php" />
<input type=hidden name=urlRetourKO value="http://'.htmlspecialchars($_SERVER['HTTP_HOST'].__PS_BASE_URI__, ENT_COMPAT, 'UTF-8').'order.php" />
<input type=hidden name=urlRetourOK value="http://'.htmlspecialchars($_SERVER['HTTP_HOST'].__PS_BASE_URI__, ENT_COMPAT, 'UTF-8').'my-account.php" />

<input type="submit" name="submitEuroInformation" value="Sauvegarder" class="button" /></center>

</form><br />




ou peut-être que qu'une personne, qui a un module qui fonctionne comme il faut, pourrai le mettre en téléchargement ?
ce dont je la remercie d'avance :-)

merci à tous,

bonne journée

Link to comment
Share on other sites

  • 2 weeks later...

Bonjour à tous,

Après plus d'un an d'absence me revoici (désolé d'ailleur et merci aux personnes qui ont aidé au support)
Je vais commencer à modifier le module avec toutes vos solutions trouvées au différents petits bugs

Si vous avez d'autres idées d'amélioration, n'hésitez pas à m'en faire part
Dès que tout sera fini, je remettrais en page 1 le lien de téléchargement du module à jour

Merci @ tous

Thomas

Link to comment
Share on other sites

bonjour,

comme tout le monde j'ai des soucis depuis la mise en place du 3D secure.
Voilà ma solution provisoire.

Le but :
Client passe commande -> tente de payer -> erreur de paiement -> création de la commande en erreur -> 2ème tentative -> paiement accepté -> valide la commande

Donc je crée une condition , dans le script , si la commande existe déjà et qu'elle est en erreur on la passe en valid et on insert le montant payé.

RESTE A FAIRE : création de la facture et mise à jour de l'inventaire

Quoi qu'il en soit , cette solution permet dans un premier temps de rassurer le client !

La modif à faire est dans le fichier euroinformation/order.php , personnelement je déconseille de toucher à PaymentModule.php qui est un fichier core de prestashop.
Il est préférable de modifier uniquement les fichiers du module euroinformation en prévision de mise à jour de prestashop.

Donc dans order.php , remplacer :

// Validation et enregistrement de la commande (Merci à Ast2001 pour la correction) //
if( strtolower($bruteVars['code-retour']=='payetest' || strtolower($bruteVars['code-retour'])=='paiement'){
   include_once(dirname(__FILE__).'/euroinformation.php');
   $EI = new EuroInformation();
   $montant = number_format($bruteVars['montant'], 2, '.', '');
   $EI->validateOrder($idcartrecup, _PS_OS_PAYMENT_, $montant, $EI->displayName,'Paiement No '.intval($bruteVars['reference']));
}elseif(strtolower($bruteVars['code-retour'])=='Annulation'){
   include_once(dirname(__FILE__).'/euroinformation.php');
   $EI = new EuroInformation();
   $EI->validateOrder($idcartrecup,_PS_OS_ERROR_,0 , $EI->displayName,'Paiement No '.intval($bruteVars['reference']));
}
///////////////////////////////////////////////////



par

// Validation et enregistrement de la commande //

if( strtolower($bruteVars['code-retour'])=='payetest' || strtolower($bruteVars['code-retour'])=='paiement'){
   $idcartrecup = DonneIDCart($bruteVars['reference']);// recup id panier
   $check=Order::getOrderByCartId($idcartrecup);
   $montant = number_format($bruteVars['montant'], 2, '.', '');

   if (!$check==false && OrderHistory::getLastOrderState($check)->id==8){
               /// récupre la dernire écriture selon l'id order where order state=erreur dans la table order_history
               $sql='SELECT  `id_order_history`,`id_employee`,`id_order_state`,`date_add` FROM `'._DB_PREFIX_.'order_history` WHERE  `id_order`='.$check.' ORDER BY `date_add` DESC, `id_order_history` DESC';
               $result = Db::getInstance()->getRow($sql);
               /// on modifie le state order en paiement accepté par une nouvelle écriture et on valide la commande
               $sql2='INSERT INTO`'._DB_PREFIX_.'order_history`(id_employee,id_order,id_order_state,date_add)  VALUES ('.$result['id_employee'].','.$check.',2,NOW());';
               Db::getInstance()->ExecuteS($sql2);

               // Passe la commande en valid=1 dans la table Orders
               $sql3='UPDATE  `'._DB_PREFIX_.'orders` SET  `valid` =  \'1\' WHERE  `'._DB_PREFIX_.'orders`.`id_order` ='.$check.';';
               Db::getInstance()->ExecuteS($sql3);
               // redirige vers history.php //
               // Insert le montant payé de la commande //
               $sql4= 'UPDATE `'._DB_PREFIX_.'orders` SET `total_paid_real` = '.$montant.' WHERE `'._DB_PREFIX_.'orders`.`id_order` = '.$check.';';
               Db::getInstance()->ExecuteS($sql4);
               // On redirige vers l'historique des commandes//
               Tools::redirect('history.php');

           }
   else{
   include_once(dirname(__FILE__).'/euroinformation.php');
   $EI = new EuroInformation();
   $montant = number_format($bruteVars['montant'], 2, '.', '');
   $EI->validateOrder($idcartrecup, _PS_OS_PAYMENT_, $montant, $EI->displayName,'Paiement No '.intval($bruteVars['reference']));
   }
}elseif(strtolower($bruteVars['code-retour'])=='annulation'){
   include_once(dirname(__FILE__).'/euroinformation.php');
   $EI = new EuroInformation();
   $EI->validateOrder($idcartrecup,_PS_OS_ERROR_,0 , $EI->displayName,'Paiement No '.intval($bruteVars['reference']));
}
///////////////////////////////////////////////////




Avis à tout le monde pour améliorer la modif.
Je me demande si il ne vaudrait pas ajouter un fichier au module du type PaymentModule.php que l'on appelerait
en include dans le cas d'une deuxième tentative.

Link to comment
Share on other sites

Apres de nombreux essaye :

Prestashop : 1.3.1.1
Derniere mise a jour du module aout 2010.

Déja l'adresse de paiement Credit Mutuel Est erronée voici la bonne : https://paiement.creditmutuel.fr/paiement.cgi

Ensuite le paiement se fait. CGI2 : OK dans le mail retour de la banque.

Mais pas de commande, et panier toujours rempli. En test et egalement en production !

Link to comment
Share on other sites

Bon et bien je suis revenu sur une ancienne version que je joint a ce post.

Cette version fonctionne avec Prestashop 1.3.1.1 et toute les version antérieures sur un hebergement 1and1 et OVH avec le Crédit Mutuel en test et en production.

J'ai modifié les url du crédit mutuel qui sont donc a jour.

Paiement OK, retour OK, panier vidé, commande créé... Aucun soucis.

euroinformation.zip

Link to comment
Share on other sites

  • 2 weeks later...

Bonjour,
après de nombreuses tentatives, je ne parviens toujours pas à faire fonctionner le module sur prestashop 1.3. En relation avec ma banque depuis près de 2 mois (par intermittence) il semblerai que les données que je possède soient correctes.

Je me tourne donc vers vous car vous êtes mon ultime recours. J'utilise la clef 1.2 car d'après ce que j'ai pu constaté en fouillant dans le code c'est cette version de cryptage qu'utilise le module. Pouriez vous donc m'indiquer comment remplir les différents champs du module car je ne comprend pas comment me servire du générateur HMAC-SHA1.

Merci d'avance pour votre aide précieuse .

Link to comment
Share on other sites

Salut Brisso53,

à tu téléchargé ce fichier du module "abcd_cmcic30©.zip" car il comporte les modifications importantes que Eboriac à apporté, notamment pour l'enregistrement de la commande dans le BO.

à tu communiqué à ta banque la bonne url de retour, ex: www.“nomdetaboutique”.fr/modules/“nomdumodulerenommé”/validation.php

Pascal

Link to comment
Share on other sites

Bonjour
Apres je ne sais combien d'essais je vous demande DE L'AIDE !!!

le module me demande de copier coler le contenu de mon .key a savoir quel que chose comme ca:
VERSION 1 12345678901234567890123456789012345678P0
HMAC-SHA1

or mon fichier est du style :
VERSION 1 12345678901234567890123456789012345678P0
HMAC-MD5

donc ca marche pas :(

y a t'il un module qui supporte le MD5 ? ou une manip pour modifier le module existant?

Merci

Link to comment
Share on other sites

Bonjour.
Quelqu'un aurait-il la gentillesse de m'expliquer comment configurer ce module et m'expliquer clairement quoi faire avec l'outil je ne sais quoi qui commence sérieusement à me taper sur le système !
Je suis énervé, et je m'en excuse mais je n'en peu plus !
J'ai mon XXXXX.key en version 1.2 j'ai la dernière version corrigé du module (téléchargé en première page), j'ai prestashop 1.3 (donc compatible) et j'ai installé mon module. Voilà la base alors s'il vous plais expliquez mois les étapes à suivre. Je suis sur que votre effort ne sera pas vain et qu'il en aidera plus d'un.
Merci

Link to comment
Share on other sites

En plus t'y gagne le 3d-secure


Salut,

juste pour préciser que 3D secure n'est pas pris en compte par le module, c'est votre banquier qui l'active ou non sur votre compte, ainsi, si vous trouvez que cette option vous fait perdre trop de ventes depuis sa mise en place, vous pouvez négocier avec votre banquier pour la retirer.

Personnellement, vendant ce genre de produit je suis de parti pris, mais je ne peux dire qu'une chose, si vous passez par un prestataire qui prend en charge l'installation, il a une obligation de résultat et donc pourra intervenir tout au long de la vie du module pour en corriger les défauts que vous pourriez rencontrer. Bien entendu, cette réflexion englobe tous les prestataire et pas seulement mon activité et s'applique à d'autres prestations que les modules de paiement.
Link to comment
Share on other sites

Je viens volontairement de demander à repasser en 1.2 pour installer ce module gratuit ! Je n'ai malheureusement pas les moyens financier de payer un prestataire.
Pourriez vous m'expliquer la procédure simplement car on me demande coller ma clef ds le premier champ mais je ne peux rien coller ni écrire du tout. Merci

Link to comment
Share on other sites

tu ouvre ta clé avec notepad et tu copie le contenu dans la case du module, a savoir que le formulaire de calcul des clés du module est fourni par euroinformation, donc en cas de soucis pour ta clé le mieux reste de les appeler

"Je n’ai malheureusement pas les moyens financier de payer un prestataire" je ne pense pas qu'une entreprise puisse vivre si elle part de ce principe ... mais ce n'est que mon avis

Link to comment
Share on other sites

Tout d'abord je ne suis que le webmaster d'un ami qui l'aide à créer son entreprise de vêtements. Autrement dit création d'entreprise ET de produits ! Donc comptabilité serrée ! Il ne peut donc pas payer un prestataire. Ceci est son choix et je le comprend.

Que dois-je faire de cette case ? "Clef intermédiaire déduite"
merci

Link to comment
Share on other sites

Oui ... c'est même pas une question de prix je pense c'est une question de mentalité :lol:

Après un module gratuit que tout le monde à bidouillé sur un forum, en cas de pépin avec un piratage de la carte du client, ben à mon avis c'est in the baba pour le vendeur ... mais bon je vais pas poluer le sujet pour ça ... ;)

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.

×
×
  • Create New...