philou_31 Posted January 23, 2012 Share Posted January 23, 2012 (edited) CE POST NE PEUT S'APPLIQUER AUX VERSIONS 1.5 DE PRESTASHOP Bonjour, Sur les 2 dernières années, nous avons eu à traiter une question récurrente pour les clients utilisant la solution de paiement Payzen. Pourquoi le back office Payzen,ssplus,systempay n'affiche pas le numéro de commande de Prestashop? Question tellement récurrente que nous avons dans la documentation écrit un paragraphe spécifique sur ce sujet. Payzen, comme la plus part des PSP enregistre vos paiements dans son back-office avec le numéro de panier de prestashop et pas le numéro de commande. Du coup, vous pouvez rencontrer les difficultés suivantes : Retrouver une commande sur le back office Prestashop par rapport aux informations du back office Systempay. Retrouver une commande sur le back office Systempay par rapport aux informations du back office Prestashop Fonctionnement de Prestashop Lors du paiement, le numéro de commande n’est généré dans Prestashop qu'au retour du paiement, de fait c’est le numéro de panier que notre module transmet à la plateforme de paiement et enregistre comme numéro de commande dans le back office de la solution de paiement Systempay. Ce n’est donc pas une anomalie du module de paiement fourni par Payzen. Nous avons dans notre documentation écrit un paragraphe spécifique sur ce sujet, tellement la question est récurrente. Exemple : Dans le back-office Prestashop vous visualisez pour la commande un tableau suivant qui n'affiche pas le numéro de panier: Dans le back office Systempay vous visualisez un tableau pour la même commande avec le numéro de panier. Le numéro de commande correspond au numéro de panier généré par Prestashop. Dans cet exemple le numéro de panier transmis par Prestashop est 123 pour la commande 1. Modification du code de Prestashop ( non applicable pour prestashop 1.5 ) Nous vous proposons une modification du code Prestashop pour faire afficher le numéro de panier dans le tableau de commande de Prestashop. Pour cela vous devez ouvrir le fichier suivant : AdminOrders.php ( répertoire admin/tabs) Remplacer le code suivant ( environ ligne 54 à 65 ) foreach ($states AS $state) $statesArray[$state['id_order_state']] = $state['name']; $this->fieldsDisplay = array( 'id_order' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25), 'new' => array('title' => $this->l('New'), 'width' => 25, 'align' => 'center', 'type' => 'bool', 'filter_key' => 'new', 'tmpTableFilter' => true, 'icon' => array(0 => 'blank.gif', 1 => 'news-new.gif'), 'orderby' => false), 'customer' => array('title' => $this->l('Customer'), 'widthColumn' => 160, 'width' => 140, 'filter_key' => 'customer', 'tmpTableFilter' => true), 'total_paid' => array('title' => $this->l('Total'), 'width' => 70, 'align' => 'right', 'prefix' => '<b>', 'suffix' => '</b>', 'price' => true, 'currency' => true), 'payment' => array('title' => $this->l('Payment'), 'width' => 100), 'osname' => array('title' => $this->l('Status'), 'widthColumn' => 230, 'type' => 'select', 'select' => $statesArray, 'filter_key' => 'os!id_order_state', 'filter_type' => 'int', 'width' => 200), 'date_add' => array('title' => $this->l('Date'), 'width' => 35, 'align' => 'right', 'type' => 'datetime', 'filter_key' => 'a!date_add'), 'id_pdf' => array('title' => $this->l('PDF'), 'callback' => 'printPDFIcons', 'orderby' => false, 'search' => false)); parent::__construct(); Par le code suivant : foreach ($states AS $state) $statesArray[$state['id_order_state']] = $state['name']; $this->fieldsDisplay = array( 'id_order' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25), 'id_cart' => array('title' => $this->l('Panier'), 'align' => 'center', 'width' => 25), 'new' => array('title' => $this->l('New'), 'width' => 25, 'align' => 'center', 'type' => 'bool', 'filter_key' => 'new', 'tmpTableFilter' => true, 'icon' => array(0 => 'blank.gif', 1 => 'news-new.gif'), 'orderby' => false), 'customer' => array('title' => $this->l('Customer'), 'widthColumn' => 160, 'width' => 140, 'filter_key' => 'customer', 'tmpTableFilter' => true), 'total_paid' => array('title' => $this->l('Total'), 'width' => 70, 'align' => 'right', 'prefix' => '<b>', 'suffix' => '</b>', 'price' => true, 'currency' => true), 'payment' => array('title' => $this->l('Payment'), 'width' => 100), 'osname' => array('title' => $this->l('Status'), 'widthColumn' => 230, 'type' => 'select', 'select' => $statesArray, 'filter_key' => 'os!id_order_state', 'filter_type' => 'int', 'width' => 200), 'date_add' => array('title' => $this->l('Date'), 'width' => 35, 'align' => 'right', 'type' => 'datetime', 'filter_key' => 'a!date_add'), 'id_pdf' => array('title' => $this->l('PDF'), 'callback' => 'printPDFIcons', 'orderby' => false, 'search' => false)); parent::__construct(); La ligne : 'id_cart' => array('title' => $this->l('Panier'), 'align' => 'center', 'width' => 25), correspond au fait d’ajouter dans le tableau la visualisation du panier : Nouveau fonctionnement Vous visualisez maintenant dans le back office Prestashop le numéro de panier dans le tableau de commande : Dans le back office Payzen vous visualisez: Vous pouvez ainsi facilement retrouver votre commande dans le backoffice Payzen. PRESTASHOP 1.5 Si vous possédez une version 1.5 de prestashop, la modification qui permet d'ajouter le numéro de panier dans le tableau de bord de prestashop est décrite dans la documentation pdf fournie avec le module de paiement de la solution SYSTEMPAY ou PAYZEN ( comprise dans le .ZIP ) Cordialement. L’équipe support Payzen Retrouver cette info sur : http://www.payzen.eu...rder_prestashop Edited December 19, 2012 by philou_31 (see edit history) Link to comment Share on other sites More sharing options...
iorek Posted January 23, 2012 Share Posted January 23, 2012 bonjour, ce post est aussi valable pour les clients Systempay de la banque populaire, puisque c'est la même plateforme. et pour tous les nouveaux clients SPPLUS qui désormais s'appuient sur Systempay. A noter que la solution proposée pourrait être prise en compte dans le coeur de Prestashop C'est simple à aménager et utile. Link to comment Share on other sites More sharing options...
Netnet Posted February 14, 2012 Share Posted February 14, 2012 Très clair, très utile, et très facile, merci beaucoup pour ce post ! Amicalement Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now