izico Posté 5 Avril 2006 Posté 5 Avril 2006 Salut Sur un de nos sites sous oscommerce nous venons de mettre en place la solution de paiement sécurisé Paybox. Nous rencontrons un souci sur la validation de certaines commandes qui ne s'enregistrent pas suite au paiement. Il faut que nous utilisions la méthode de paybox dites de l'url http et la contrib oscommerce que nous avons ne marche pas a ce niveau la. Nous avons une erreur systematique a l'appel de cet url. Si quelqu'un a une solution pour régler ce souci, je suis preneur
dièse Posté 6 Avril 2006 Posté 6 Avril 2006 Bonjour, Pour ce genre de problème je crois que le mieux est d'appeler le support technique . Sinon pourrais-tu préciser ce qu'est le méthode dîte de l'url http ? Normalement il me semble que les connexions aux serveurs de paybox se font par socket.
izico Posté 6 Avril 2006 Auteur Posté 6 Avril 2006 J'ai contacté le support mais a part te confirmer qu'il y a un souci, il ne donne aucun element de reponse. L'url http permet en fait de valider la commande directement entre le serveur paybox et le serveur de la boutique, au lieu de passer par le navigateur du client ce qui fait que si le client se deconnecte ou ferme sa fenetre après la validation du paiement la commande est validé directement de serveur a serveur.
bshop Posté 11 Avril 2006 Posté 11 Avril 2006 Izico, nous sommes en train d'intégrer paybox pour un client (effectivement pas de module qui tienne la route dispo) , je te tiens au courant de l'avancée des travaux et te transmettrai le module si tu le souhaites.
izico Posté 11 Avril 2006 Auteur Posté 11 Avril 2006 Merci Bshop, je suis effectivement interressé si tu peux me l'envoyer
marcOSC Posté 2 Mai 2006 Posté 2 Mai 2006 bonjour je renceontre le même proble avec url http sur paybox Bshop, je suis aussi interressé par votre module si tu peux me l'envoyer
bshop Posté 23 Mai 2006 Posté 23 Mai 2006 Bonjour a tous, désolé pour le retard mais en ce moment les heures sont comptées. voici donc le module Modifié pour Paybox, moyennant un minimum de paramétrages il devrait fonction sur de nombreuses boutiques même si en général nous faisons pas mal de changements par rapport à un osco de base... Liste des modifications 1 - Une des plus importantes est celle de passer les variables de IBS en PBX. 2 - Le module que l'on trouvait en install était bien paramétrable en admin mais les variables n'étaient pas utilisées dans le module, d'ou la modification de ces deux lignes <?php/* $Id: paybox.php,v 1.1.1.1 2003/10/16 22:27:32 vince Exp $ Contribution d'origine by Emmanuel Alliel <manu_AT_maboutique.biz> Modification Businesshop - 05-2006 osCommerce, Open Source E-Commerce Solutions [url="http://www.oscommerce.com"]http://www.oscommerce.com[/url] Copyright © 2003 osCommerce Released under the GNU General Public License*/ class paybox { var $code, $title, $description, $enabled;// class constructor function paybox() { global $order; $this->code = 'paybox'; $this->title = MODULE_PAYMENT_PAYBOX_TEXT_TITLE; $this->description = MODULE_PAYMENT_PAYBOX_TEXT_DESCRIPTION; $this->sort_order = MODULE_PAYMENT_PAYBOX_SORT_ORDER; $this->enabled = ((MODULE_PAYMENT_PAYBOX_STATUS == 'True') ? true : false); if ((int)MODULE_PAYMENT_PAYBOX_ORDER_STATUS_ID > 0) { $this->order_status = MODULE_PAYMENT_PAYBOX_ORDER_STATUS_ID; } if (is_object($order)) $this->update_status(); $this->form_action_url = MODULE_PAYMENT_PAYBOX_CGI; }// class methods function update_status() { global $order; if ( ($this->enabled == true) && ((int)MODULE_PAYMENT_PAYBOX_ZONE > 0) ) { $check_flag = false; $check_query = tep_db_query("select zone_id from " . TABLE_ZONES_TO_GEO_ZONES . " where geo_zone_id = '" . MODULE_PAYMENT_PAYBOX_ZONE . "' and zone_country_id = '" . $order->billing['country']['id'] . "' order by zone_id"); while ($check = tep_db_fetch_array($check_query)) { if ($check['zone_id'] < 1) { $check_flag = true; break; } elseif ($check['zone_id'] == $order->billing['zone_id']) { $check_flag = true; break; } } if ($check_flag == false) { $this->enabled = false; } } } function javascript_validation() { return false; } function selection() { return array('id' => $this->code, 'module' => $this->title); } function pre_confirmation_check() { return false; } function confirmation() { return false; } function process_button() { global $order; $process_button_string = tep_draw_hidden_field('PBX_MODE', '1') . tep_draw_hidden_field('PBX_SITE', MODULE_PAYMENT_PAYBOX_PBX_SITE) . tep_draw_hidden_field('PBX_RANG', MODULE_PAYMENT_PAYBOX_PBX_RANG) . tep_draw_hidden_field('PBX_IDENTIFIANT', MODULE_PAYMENT_PAYBOX_PBX_IDENTIFIANT) . tep_draw_hidden_field('PBX_TOTAL', $order->info['total'] * 100) . tep_draw_hidden_field('PBX_DEVISE', '978') . tep_draw_hidden_field('PBX_CMD', tep_session_id()) . tep_draw_hidden_field('PBX_PORTEUR', $order->customer['email_address']) . tep_draw_hidden_field('PBX_RETOUR', tep_session_name().':R;trans:T;auto:A;tarif:M;abonnement:B;pays:Y;erreur:E') . tep_draw_hidden_field('PBX_ANNULE', tep_href_link(FILENAME_CHECKOUT_PAYMENT, 'payment_error=' . $this->code, 'NONSSL', true)) . tep_draw_hidden_field('PBX_REFUSE', tep_href_link(FILENAME_CHECKOUT_PAYMENT, 'payment_error=' . $this->code, 'NONSSL', true)) . tep_draw_hidden_field('PBX_EFFECTUE', tep_href_link(FILENAME_CHECKOUT_SUCCESS, '', 'SSL', false)) . tep_draw_hidden_field(tep_session_name(), tep_session_id()) . tep_draw_hidden_field('options', 'test_status=' . $test_status . ',dups=false,cb_post=true,cb_flds=' . tep_session_name()); return $process_button_string; }/*// param de test// site : 1999888// rang : 99// identifiant : 2// Attention Pas de retour URL HTTP sur la boutique de demo, dans ce cas mettre PBX_EFFECTUE à FILENAME_CHECKOUT_PROCESS// carte test : 1111222233334444// validité : postérieure// crypt : 123*/ function before_process() { global $HTTP_POST_VARS; if ($HTTP_POST_VARS['valid'] == 'true') { if ($remote_host = getenv('REMOTE_HOST')) { if ($remote_host != 'paybox.com') { $remote_host = gethostbyaddr($remote_host); } if ($remote_host != 'paybox.com') { tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, tep_session_name() . '=' . $HTTP_POST_VARS[tep_session_name()] . '&payment_error=' . $this->code, 'SSL', false, false)); } } else { tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, tep_session_name() . '=' . $HTTP_POST_VARS[tep_session_name()] . '&payment_error=' . $this->code, 'SSL', false, false)); } } } function after_process() { return false; } function get_error() { global $HTTP_GET_VARS; if (isset($HTTP_GET_VARS['message']) && (strlen($HTTP_GET_VARS['message']) > 0)) { $error = stripslashes(urldecode($HTTP_GET_VARS['message'])); } else { $error = MODULE_PAYMENT_PAYBOX_TEXT_ERROR_MESSAGE; } return array('title' => MODULE_PAYMENT_PAYBOX_TEXT_ERROR, 'error' => $error); } function check() { if (!isset($this->_check)) { $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_PAYMENT_PAYBOX_STATUS'"); $this->_check = tep_db_num_rows($check_query); } return $this->_check; } function install() { tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Enable Paybox Module', 'MODULE_PAYMENT_PAYBOX_STATUS', 'True', 'Activer ce module Paybox ?', '6', '1', 'tep_cfg_select_option(array(\'True\', \'False\'), ', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('PBX_SITE', 'MODULE_PAYMENT_PAYBOX_PBX_SITE', '1999888', 'PBX_SITE fournit par Paybox', '6', '2', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('PBX_RANG', 'MODULE_PAYMENT_PAYBOX_PBX_RANG', '99', 'PBX_RANG fournit par Paybox', '6', '3', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('PBX_IDENTIFIANT', 'MODULE_PAYMENT_PAYBOX_PBX_IDENTIFIANT', '2', 'PBX_IDENTIFIANT fournit par Paybox', '6', '3', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('CGI Path', 'MODULE_PAYMENT_PAYBOX_CGI', 'http://www.maboutique.biz/cgi-bin/paybox.cgi', 'Chemin de votre module CGI fournit par Paybox', '6', '4', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Sort order of display.', 'MODULE_PAYMENT_PAYBOX_SORT_ORDER', '0', 'Sort order of display. Lowest is displayed first.', '6', '0', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('Payment Zone', 'MODULE_PAYMENT_PAYBOX_ZONE', '0', 'If a zone is selected, only enable this payment method for that zone.', '6', '2', 'tep_get_zone_class_title', 'tep_cfg_pull_down_zone_classes(', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, use_function, date_added) values ('Set Order Status', 'MODULE_PAYMENT_PAYBOX_ORDER_STATUS_ID', '0', 'Set the status of orders made with this payment module to this value', '6', '0', 'tep_cfg_pull_down_order_statuses(', 'tep_get_order_status_name', now())"); } function remove() { tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')"); } function keys() { return array('MODULE_PAYMENT_PAYBOX_STATUS','MODULE_PAYMENT_PAYBOX_PBX_IDENTIFIANT', 'MODULE_PAYMENT_PAYBOX_PBX_SITE', 'MODULE_PAYMENT_PAYBOX_PBX_RANG', 'MODULE_PAYMENT_PAYBOX_CGI', 'MODULE_PAYMENT_PAYBOX_ZONE', 'MODULE_PAYMENT_PAYBOX_ORDER_STATUS_ID', 'MODULE_PAYMENT_PAYBOX_SORT_ORDER'); } }?>
yollo Posté 29 Août 2006 Posté 29 Août 2006 Bonjour à tous, il me reste quelques questions, j'ai peut etre sauté quelque chose dans la mesure ou on peut pas tester sur le site paybox, si j'intègre le code fournit par Bshop dois je modifier checkout_process.php pour que les commandes soient bien validées grace au contenu de PBX_RETOUR ? Merci de m'éclairer
Angelart Posté 5 Janvier 2007 Posté 5 Janvier 2007 Salut à tous et bonne année ! Je viens d'integrer ce code pour reinstaller paybox sur ma version d'Oscommerce mais j'ai tjs le meme souci et la meme erreur quand je valide le panier pour le paiement avec paybox PAYBOX INPUT ERROR (code -3) voila la seule chose que je peux voir et personne ne sait pourquoi Ni Amen (mon hébergeur) Ni Paybox pourtant je renseigne bien tous les champ dans l'admin sur le module paybox. Alors ou est le souci ? Ca fait 2 jour que je galere avec ca Merci de m'aider si vous le voulez bien Cordialement, Angelart
Dan Posté 5 Janvier 2007 Posté 5 Janvier 2007 Selon le manuel de PayBox... Une fois installé, le module doit pouvoir sexécuter directement à travers ladresse Internet sur votre navigateur (par exemple : -http://www.maboutique.com/cgi-bin/module.cgi). A lexécution, vous devriez avoir un message du type « paybox input error code (-3) » : cela signifie que le module sest bien exécuté (lerreur étant seulement dû à labsence des variables à référencer).
Angelart Posté 5 Janvier 2007 Posté 5 Janvier 2007 Oui effectivement j'ai testé de cette meme facon et j'ai bien l'erreur (code -3) mais le souci est que j'ai la meme erreur quand j'effectue une commande sur ma boutique a la validation du panier pour le paiement au moment de la redirection sur le site paybox pour le paiement je tombe sur une page blanche, la meme que quand je teste mon module CGI Chez paybox ils me disent que je dois avoir des champ obligatoire non renseignés comme le PBX_CMD ou le PBX...... Ils me disent qu'il y a 8 ou 9 varialbles a renseigner et qu'il doit m'en manquer Pourtant j'ai pris le code se trouvant sur le forum Dans l'ancienne version de la contrib PayBox on voyait apparaitre les numero renseignés dans l'admin de osc quand on ouvrait le paybox.php mais maintenant on ne les voit plus Ou paybox va chercher c variables que l'on renseignent ?
yuzin Posté 18 Janvier 2007 Posté 18 Janvier 2007 Bonjour, Je viens d'arriver sur ce forum avec le même problème d'url http de paybox. Le site de ma compagne artiste peintre http://www.joseeleroux.com était conçu sur un modèle 4D (une boutique 4DBK exactement) il est maintenant sur un modèle oscommerce. Paybox fonctionne mais, si le client ne clique pas sur "retour" la commande n'est pas transmise, le paiement a cependant fonctionné. Paybox demande de lui fournir une URL HTTP qui ne peut pas être "CHECKOUT_PROCESS.php car ce fichier contient des redirections, dixit paybox. Il faudrait un script php (ou autre langage) qui correspondrait à celui écrit en langage 4D que voici: <!--#4DBKVarSet/VT10=4DBKHttpPostParms/SessionID-->SessionID:<!--#4DBKVar/VT10--><!--#4DBKVarSet/VT11=4DBKHttpPostParms/auto-->Autorisation:<!--#4DBKVar/VT11-->//Client : <!--#4DBKField/CusEmail-->//Commande : <!--#4DBKOrderCode-->//Panier : <!--#4DBKSelectionSet/B--><!--#4DBKRecordSet/1--><!--#4DBKLoop/VL45,1,4DBKSelectionSize--><!--#4DBKIf(4DBKRecordExists)--> [<!--#4DBKField/T01--> - <!--#4DBKField/C01--> - Prix :<!--#4DBKField/PrCustomerINV.EUR,### ### ##0,00-->]<!--#4DBKEndIf--><!--#4DBKRecordNext/1--> <!--#4DBKEndLoop/VL45--><!--#4DBKIf("4DBKVar/VT11"#"")-->// Numro de transaction valide: on peut valider la commande<!--#4DBKVarSet/VL10=2--><!--#4DBKOrderPaymentSet/CB--><!--#4DBKMail/info_AT_joseeleroux.com,4DBKField/CusEmail,Votre commande,orderform.html,htm--><!--#4DBKMail/4DBKField/StoreShopEmail,4DBKField/StoreShopEmail,nouvelle commande,orderform.html,htm--><!--#4DBKOrderValidate--><!--#4DBKOrderClear--><!--#4DBKElse-->// Numro de transaction invalide: la commande n'est pas valide<!--#4DBKEndIf--><br>// send response to gateway<!--#4DBKHttpPostResponse/OK--> Je n'ai aucune compétence pour traduire ce script pour oscommerce. C'est l'adresse de ce fichier qu'il faut fournir à Paybox, et qui lui permet de signaler un paiement. Cordialement yuzin
Angelart Posté 18 Janvier 2007 Posté 18 Janvier 2007 Il faut leur vonner le lien "checkout_success.php" et le texte de cette page tu peux le changer dans includes/language/french/checkout_success.php en editant le fichier dans un traitement de texte par exemple ou dreamweaver. Enfin je crois que c'est ca.... car aprés la validation du paiement du dois revenir sur ta boutique pour signaler aux clients que le paiement c bien passé. Sinon quelle version d'osc as tu ?
yuzin Posté 18 Janvier 2007 Posté 18 Janvier 2007 Bonjour, J'ai la version ms2. Monserveur de courrier est en panne, j'ai des essais en cours qui n'aboutissent pas A=
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant