Montant global du panier sans taxe avec PHP 7 et Magento 1.9


Passant à PHP 7 et magento 1.9 pour l’hébergement et les versions de mes boutiques, j’ai remarqué un bug plutôt génant dans le panier.

Si vous utiliser l’éco-participation sur vos produits (FPT), la liste des produits et la fiche produit affichent bien le bon montant du produit (prix du produit TTC + taxe inclus), mais en ajoutant le produit au panier, le montant global du panier est faux. Il manque le montant de cette éco-participation.

On le voit bien avec le sous-total qui est inférieur au total TTC.

Plutôt génant non ?

Et vous savez le pire ? C’est que ce bug n’apparait qu’en PHP 7 ! Passez à PHP 5 et vous verrez que ce bug a disparu. C’est à n’y rien comprendre.

 

Voici donc la solution pour remédier à cela. Continuer à lire … « Montant global du panier sans taxe avec PHP 7 et Magento 1.9 »

Montant minimum de commande TTC


De base, le montant minimum de commande, lorsqu’on le renseigne dans l’admin ( système > configuration > ventes ), surveille le sous total HT du panier.

C’est à dire qu’il faudrait renseigner votre montant minimum fixé en HT en admin pour que cela marche correctement.

Seulement il y a un problème, si comme moi vous devez gérez plusieurs taux de tva, la saisie du montant HT n’a plus de sens. Il fallait donc trouver un moyen pour que le montant minimum de commande soit basé sur du TTC au lieu du HT mais qu’en plus il surveille le montant global.

Nous allons donc devoir surcharger le Core, pour éviter d’y toucher directement :

  • dupliquer le fichier « Address.php » situé dans App > Code > Core > Mage > Sales > Model > Quote
  • le coller dans App > Code > Local > Mage > Sales > Model > Quote (arborescence à créer manuellement)
  • Ouvrir le fichier et modifier à la ligne 1025
     if ($this->getBaseSubtotalWithDiscount() < $amount) { 

    par

     if ($this->getBaseGrandTotal() < $amount) { 

getBaseGrandTotal étant ici le total ttc du panier.

Testé et approuvé sur magento 1.7