La liste des commandes du back office PrestaShop (1.7.7+) repose sur la grille Symfony — pratique par défaut, mais souvent trop pauvre pour la logistique, le support ou la compta. Order Grid Pro masque les colonnes inutiles, ajoute des champs optionnels (téléphone, suivi, miniature, poids, extrait de message, ISO devise, règles panier, etc.) et mémorise l’ordre des colonnes par glisser-déposer, avec une configuration en onglets. Le module s’appuie uniquement sur les hooks officiels de la grille, sans modification du cœur, pour des mises à jour plus sereines.









Le module PrestaShop Order Grid Pro optimise la gestion des commandes pour les versions 1.7.7 à 9.x. Il permet de personnaliser l'affichage de la liste des commandes en masquant les colonnes superflues et en ajoutant des informations essentielles comme le téléphone client, les numéros de suivi, les miniatures de produits, et les codes ISO des devises. Grâce à son interface de glisser-déposer, réorganisez facilement les colonnes pour adapter la grille aux besoins spécifiques de vos équipes logistiques, support et finance. De plus, il offre un changement de statut en ligne pour les versions antérieures à PrestaShop 8.0, sans modifier le cœur du système, garantissant une meilleure efficacité et une mise à jour stable.
À partir de PrestaShop 1.7.7, l'écran des commandes du back-office repose sur la Symfony Grid . La mise en page par défaut suffit pour une démo — jusqu'à ce que l'entrepôt veuille les numéros de suivi sur la même ligne, le support le dernier message du fil sans ouvrir dix onglets, et la finance les codes ISO des devises sans passer par Excel. Order Grid Pro s'appuie sur les hooks officiels d'extension de la grille : masquer les colonnes core superflues , activer des champs complémentaires (téléphone, miniatures, poids du panier, extraits de fil de discussion, etc.), ordre des colonnes par glisser-déposer et, sur les anciennes versions, un flux optionnel de changement de statut en ligne . Aucune modification du cœur.

Chaque équipe lit les commandes différemment : la logistique sur les numéros de suivi et transporteurs, le support sur le téléphone et le dernier message du fil sans passer d'onglet en onglet, le merchandising sur une miniature produit à côté de la référence, la finance sur les boutiques multidevises et les codes ISO à côté des totaux.
La grille du cœur reste volontairement sobre : elle ne devine pas votre processus. Patcher dans /src ou surcharger les gabarits du thème est fragile — chaque petite mise à jour PrestaShop finit en conflit de fusion.
Order Grid Pro reste dans la surface d'extensions supportée : il modifie la définition de la grille, le query builder Doctrine et les données de ligne hydratées via les mêmes hooks que PrestaShop documente pour les extensions de liste des commandes. Vous configurez tout depuis Modules → Order Grid Pro , enregistrez par section, rechargez Commandes et affinez.
Chaque interrupteur correspond à un identifiant de colonne du cœur dans la fabrique de grille des commandes. Avec Masquer = Oui le module retire cet objet colonne avant le rendu. Si votre édition PrestaShop n'a jamais enregistré cette colonne, l'interrupteur ne fait pas de mal : la configuration reste portable entre 1.7, 8.x et 9.x.
Compléments principaux (téléphone, suivi, miniature de première ligne, statut rapide hérité) plus une bibliothèque entière de champs d'analyse : e-mail, ville, code postal, nombre de lignes, nom du premier produit, poids estimé du panier, extrait du dernier message client, module de paiement, âge en jours, type de compte, numéros facture / bon de livraison, devise ISO, noms des règles panier appliquées — le tout désactivé par défaut pour n'activer que ce que votre budget SQL permet.
Faites glisser les colonnes natives et celles du module dans l'interface de configuration. La liste reflète ce qui est actuellement visible sur la grille (en respectant les masquages et les extras activés). L'enregistrement écrit du JSON nettoyé ; le module le fusionne avec la définition en direct pour que les actions de masse, références et pile personnalisée restent dans l'ordre auquel vous avez formé l'équipe.
Les colonnes entrent, sortent et se réordonnent sans toucher au PHP du cœur.
Le module inspecte la ColumnCollection , retire les identifiants masqués, injecte des instances DataColumn optionnelles (et des colonnes spécialisées lorsque la plateforme les fournit, comme les miniatures HTML) et réordonne le tout selon votre séquence enregistrée. Comme cela s'exécute au moment de la définition, les exports et vues CSV héritent de la même structure que celle affichée à l'écran.
Ne projeter que le SQL requis par les colonnes activées.
Les champs optionnels sont implémentés comme fragments SELECT contrôlés : des sous-requêtes pour comptages, extraits, poids et métriques similaires ne sont ajoutées que lorsque l'interrupteur correspondant est activé. L'empreinte par défaut reste ainsi proche du cœur, tout en permettant d'empiler des analyses plus poussées quand le matériel le permet.
Les projections lourdes sont expliquées dans le texte de configuration du module pour que l'équipe comprenne les compromis (par exemple le poids estimé utilise la masse du produit parent, pas le détail par déclinaison).
Mise en forme des cellules, libellés et changement de statut AJAX optionnel.
hookActionOrderGridDataModifier normalise l'affichage : poids en kilogrammes, indicateurs invité lisibles, troncature sûre des extraits de fil et miniature HTML lorsque la grille le permet. Sur PrestaShop inférieur à 8.0 vous pouvez activer Changement de statut rapide : le module injecte un menu déroulant compact dans la liste des commandes et achemine les mises à jour via l'onglet masqué AdminMyordergridproAjax avec les droits adéquats — idéal lorsque la colonne native reste en texte brut.
Sur PrestaShop 8+ la grille du cœur inclut déjà des contrôles de statut interactifs dans la plupart des builds. Laissez l'option héritée désactivée pour éviter une interface en double, sauf si vous en avez vraiment besoin pour des comparaisons sur un environnement de préproduction.
La configuration du module utilise les onglets de navigation Bootstrap avec trois instances HelperForm isolées — chaque onglet s'enregistre séparément ( Masquer des colonnes , Nouvelles colonnes , Ordre des colonnes ). En tête, un bloc guide explique le comportement de la grille Symfony, la compatibilité et une stratégie de déploiement (petit pas, enregistrer, revoir les commandes, itérer).

Chaque carte ci-dessous correspond à un interrupteur dans l'onglet Masquer des colonnes . Avec Masquer = Oui vous retirez cette colonne de la seule définition de la grille Symfony : commandes, adresses et historique en base restent intacts. Si votre build n'a jamais enregistré cet identifiant, l'interrupteur n'a aucun effet visible (la configuration reste portable entre 1.7 / 8 / 9).
id_order ID commande Clé primaire numérique de la commande dans PrestaShop ( orders.id_order ) : la référence interne utilisée depuis la liste pour ouvrir une commande, lier les factures ou faire correspondre les charges API.
reference Référence La référence publique de commande (souvent alphanumérique) affichée au client sur les confirmations et utile pour un rapprochement visuel dans les CRM — distincte de l'ID numérique.
new Nouveau client Indicateur « nouveau client » selon les règles PrestaShop. Masquez-le s'il n'apporte rien à votre flux ou si vous avez déjà cette information ailleurs.
customer Client Nom affiché du client (et comportement du lien de la grille du cœur) pour le compte qui a passé la commande — en général prénom, nom ou format défini dans la boutique.
company Société Champ société / organisation depuis le contexte d'adresse de la commande en B2B ; utile pour la vente en gros. Sur une vitrine purement B2C la colonne est souvent vide — masquez-la.
total_paid_tax_incl Total (TTC) Total payé toutes taxes comprises, tel que formaté par la grille du cœur : ce qui a été facturé pour le panier, la livraison et les taxes selon les règles d'affichage de la boutique.
payment Paiement Libellé lisible du mode de paiement choisi au tunnel (virement, nom du module carte, etc.) — aligné sur le détail de commande.
osname Statut Le nom du statut de commande courant selon vos états (en attente de paiement, expédié, etc.) — l'étiquette reconnue par l'équipe, indépendamment des couleurs du thème.
date_add Date Horodatage de création de la commande ( orders.date_add ) — lorsque le panier est devenu un enregistrement commande en base ; utile pour le tri et les lectures type SLA.
country_name Pays de livraison Nom du pays de livraison via la jointure adresse / pays utilisée par la grille du cœur : utile pour la conformité export et les zones transporteurs en un coup d'œil.
shop_name Boutique Nom de la boutique multiboutique pour le contexte d'origine de la commande — essentiel en multiboutique ; masquable sur une seule boutique où la colonne n'apporte rien.
carrier_name Transporteur Libellé du transporteur ou du mode de livraison choisi pour la commande — le même que vous validez dans les règles d'expédition et les filtres du poste d'emballage.
L'onglet Nouvelles colonnes regroupe les compléments principaux (téléphone, suivi, miniature, statut hérité) et les champs d' analyse étendue . Chaque interrupteur ajoute une projection contrôlée ou réutilise des données déjà chargées par la requête du cœur — rien n'est écrit tant que l'équipe n'utilise pas d'actions BO séparées (sauf le changement de statut AJAX hérité optionnel, qui respecte les droits de changement d'état).
mog_customer_phone Téléphone client (adresse de livraison) Meilleur numéro disponible depuis l'adresse de livraison : mobile ( phone_mobile ) s'il est renseigné, sinon ligne fixe ( phone ). La requête commandes du cœur joint déjà l'alias d'adresse : colonne légère, idéale pour les centres d'appel qui composent sans ouvrir chaque commande.
mog_tracking_numbers Numéros de suivi Concatène chaque numéro de suivi non vide sur les lignes order_carrier de la commande. Valeurs séparées par des virgules pour que les envois fractionnés (plusieurs colis) restent visibles dans une seule cellule. Désactivez si vous saisissez rarement les suivis et préférez un tableau plus étroit.
mog_product_thumb Image de couverture du premier produit Aperçu ~48 px de l'image de couverture de la première ligne de commande (plus petit id_order_detail ). Lorsque HtmlColumn est disponible (typique à partir de PrestaShop 8+), la cellule affiche un vrai ; sur les grilles plus anciennes le module peut n'exposer que l'identifiant d'image pour continuer à vérifier quel SKU a porté la vente.
mog_live_meta Aide statut (colonne masquée, BO hérité) Avec Changement de statut rapide sur PrestaShop inférieur à 8.0, le module injecte une méta-cellule compacte avec data-order et les identifiants de statut pour que le JavaScript affiche une liste déroulante à côté du texte visible. Ce n'est pas une colonne « export » : sur 8+ avec contrôle Symfony interactif, laissez l'option désactivée.
mog_customer_email E-mail client Projette l'adresse e-mail sur l'entité customer — la même jointure que PrestaShop utilise déjà pour la grille. Pratique en B2B pour coller dans un CRM ou un ticket sans ouvrir la fiche client.
mog_delivery_city Ville de livraison Champ city depuis l'alias d'adresse de livraison. Associez-le au code postal lorsque la seule colonne pays ne suffit pas pour l'expédition ou l'acheminement transporteur.
mog_delivery_postcode Code postal de livraison Code postal depuis l'adresse de livraison — ce que les outils d'étiquettes et les API transporteurs demandent en général à côté du nom.
mog_order_lines_count Nombre de lignes de commande Compte combien de lignes order_detail appartiennent à la commande = nombre de lignes SKU distinctes, pas la somme des quantités — utile pour repérer les paniers multi-lignes face aux achats sur une seule ligne.
mog_first_product_name Nom du premier produit Nom de produit localisé pour la ligne order_detail la plus précoce (tri par ID de ligne). Aide lorsque la référence est peu claire mais que vous devez savoir quel SKU a porté la vente.
mog_cart_weight_kg Poids estimé du panier Approxime la masse expédiée en additionnant quantité × poids parent product.weight par ligne. Les poids des déclinaisons ne sont pas ventilés — valeur indicative, pas pour une facturation transport légale. L'interface affiche les kilogrammes à trois décimales si la somme brute est supérieure à zéro.
mog_thread_snippet Dernier message client Jusqu'à 140 caractères du customer_message le plus récent lié à un customer_thread qui pointe vers la commande. L'HTML est retiré et les entités échappées pour qu'un collage depuis le formulaire de contact ne casse pas la grille.
mog_payment_module Code du module de paiement Valeur technique orders.module — le même identifiant machine que sous Modules → Paiement. Idéal pour rapprocher les encaissements ou comparer l'adoption des passerelles.
mog_order_age_days Ancienneté de la commande (jours) Journées entières de 24 h entre orders.date_add et le « maintenant » de la base via TIMESTAMPDIFF — pratique pour les vues SLA ou relancer les virements non payés.
mog_account_type Type de compte Libellé lisible issu de customer.is_guest après hydratation — sépare comptes enregistrés et commandes invité pour la segmentation sans ouvrir la fiche client.
mog_invoice_number Numéro de facture Affiche invoice_number déjà présent dans le jeu de données commande du cœur — la finance lit la séquence fiscale à côté de la référence sans export (vide tant qu'aucune facture n'existe).
mog_delivery_number Numéro de bon de livraison Reflète delivery_number depuis la ligne commande — rapprochez bons de livraison ou identifiants d'expédition sans ouvrir chaque commande.
mog_currency_iso Devise de la commande (ISO) iso_code depuis la jointure devise existante (ex. EUR, USD, PLN). En boutique multidevise, repérez les lignes à rapprocher en change lorsque le symbole n'apparaît pas dans le gabarit de grille par défaut.
mog_cart_rule_names Règles panier appliquées Agrège les noms localisés de chaque règle panier persistée sur la commande (catalogue, bons, promos livraison offerte, etc.). Valeurs DISTINCT et tri alphabétique pour une lecture prévisible dans une seule cellule.
Paquet module PrestaShop standard. Aucun override des classes ou gabarits du cœur. Les colonnes optionnelles s'appuient sur les mêmes capacités MySQL/MariaDB que les sous-requêtes (même socle que les boutiques modernes). Architecture ciblée sur les grilles de commandes Symfony introduites depuis 1.7.7+ .
actionOrderGridDefinitionModifier , actionOrderGridQueryBuilderModifier , actionOrderGridDataModifier , actionAdminControllerSetMedia (ressources de statut héritées sur AdminOrders). AdminMyordergridproAjax expose des points de terminaison JSON sécurisés pour les mises à jour de statut en ligne sur les builds héritées. 








Ce module automatise l'optimisation de votre interface de gestion des commandes. En personnalisant les colonnes et leur ordre, il facilite l'accès instantané aux informations cruciales. Gagnez en efficacité et fluidité, transformant chaque session de traitement en une tâche rapide et ciblée, sans effort superflu.
Optimisez la gestion de vos commandes avec Order Grid Pro pour des livraisons accélérées et un service client impeccable. Une meilleure organisation du back-office se traduit par une satisfaction client accrue et des achats répétés, stimulant directement vos ventes.
Avec 15 ans d'expérience PrestaShop, nous avons identifié les besoins cruciaux de gestion. Order Grid Pro est le fruit de cette connaissance approfondie : il optimise l'organisation de vos commandes en personnalisant colonnes et ordre, offrant une efficacité que seule une longue expertise peut garantir.
Ce module permet une personnalisation poussée de votre interface de gestion des commandes. Organisez les colonnes et définissez leur ordre d'affichage pour créer une vue parfaitement adaptée à vos exigences opérationnelles et améliorer l'efficacité de votre boutique.
Avec Order Grid Pro, son code source est entièrement accessible. Cela vous donne la liberté totale de personnaliser, d'étendre et d'adapter les colonnes et l'ordre de votre liste de commandes, permettant des intégrations sur mesure et une flexibilité inégalée pour votre boutique.
Avec une licence perpétuelle, le module Order Grid Pro est vôtre pour toujours. Les mises à jour régulières, disponibles pendant une période initiale, assurent sa compatibilité continue avec PrestaShop, garantissant l'accès aux dernières améliorations et une gestion optimale de vos commandes.