L’un de mes clients, a récemment eu une modification à effectuer sur sa boutique PrestaShop. Etant revendeur d’objets d’art, il n’avait jusqu’ici pas d’application de la TVA sur ses produits.
Hors, cela vient de changer et il doit désormais appliquer une TVA à 5,5%.
J’ai donc modifier la configuration sur PrestaShop via le Backoffice pour appliquer le taux de TVA, mais, une fois l’activation de l’application de la TVA, deux problèmes apparaissent :
- le taux de TVA par défaut est de 20% (règle de taxe id=1) , alors que l’ont veut une TVA à 5,5% (règle de taxe id=3)
- le calcul du prix se fait depuis le prix HT, soit le champs « price » en base de données. Celui ci conserve l’ancienne valeur et ajoute la taxe pour obtenir le prix TTC. Hors on veut conserver le prix TTC.
Et ces deux informations sont définies sur chacun de ses 1500 produits donc hors de question de modifier manuellement.
Voici les deux requêtes qui m’ont permis de régler le problème en quelques minutes.
UPDATE ps_product SET id_tax_rules_group = 3, price = price / 1.055 WHERE id_tax_rules_group = 1;
UPDATE ps_product_shop SET id_tax_rules_group = 3, price = price / 1.055 WHERE id_tax_rules_group = 1;
Explication:
- Modifier l’id de la règle de taxe (id_tax_rules_group) pour résoudre le premier problème
- Corriger le prix HT par un calcul inversé de TVA (prix / 1+(5,5/100))
- Se limiter aux produits qui avaient la règle de TVA erronée (dans le cas de mon client cela concernait tous les produits, mais selon les boutiques, vous pouvez avoir différentes règles de taxe qui sont appliquées , donc vérifier d’id de la règle de taxe que vous souhaitez modifier)
Voir toutes nos astuces Prestashop
Voir toutes nos astuces MySQL