David SCHLAMA Posted August 12, 2019 Share Posted August 12, 2019 Bonjour à tous, Je suis confronté a un soucis, en effet mon client m'indique un soucis remonté par un client. La boutique affiche les prix TTC pour tous les groupes sauf les pros, jusque là pas de soucis le prix est bien HT avec la mention HT a coté du prix (pour les pros), mais il y a un souci pour les clients particulier hors zone européenne en effet pour ces clients là, nous devons aussi afficher les prix HT comme pour les pros, et il ce produit la chose suivante, nous avons les prix HT mais aucune mention HT n'est précisé donc le client n'a aucun moyen de savoir si les prix indiqué sont TTC ou HT. Par exemple en France pour un particulier nous aurons 19.56€TTC sur la fiche produit, a l'inverse pour un pro nous aurons 15.65€HT, maintenant pour un Suisse nous aurons 15.65€ uniquement pas de HT ou TTC Je souhaite corriger cela sur les fiches produits ainsi que sur les listes de produits pour les clients hors zone Europe, car nous avons beaucoup de réclamations de la part des clients non pros et demande le retrait de la taxe alors que le prix est déjà HT Alors j'ai déjà vérifier tous les paramètres en BO concernant les taxes et pays, tester différents solution proposer sur différent forum mais les soucis traité ne concerne pas vraiment ce soucis qui été déjà présent sur Prestashop 1.4 et dont toutes les versions de Prestashop sont concerné. Je vous invite à tester sur votre Prestashop pour ce faire utiliser votre compte client sur votre Prestashop et changer l'adresse de livraison. Donc j'imagine qu'il faut modifier les fichiers product.tpl et product-list.tpl mais quoi et où et comment ? Version Prestashop : 1.6.1.24 Serveur : Cloud Infomaniak Merci pour vos lumières et de votre aide Cordialement David Link to comment Share on other sites More sharing options...
Eolia Posted August 12, 2019 Share Posted August 12, 2019 (edited) Pour chaque pays, vérifier d'abord ce paramètre dans Localisation -> Pays Ensuite contrôlez vos tpl car souvent l'affichage du format de prix est conditionné par la variable $priceDisplay qui correspond au résultat de cette fonction: Product::getTaxCalculationMethod((int)$this->context->cookie->id_customer); qui renvoie soit false, soit 1, soit 2, soit 6, soit.... Mais par défaut Prestashop n'affiche pas ce HT pour les pays sans taxes connue. Il faut donc modifier la classe product (ou faire un override, c'est mieux) de la fonction initPricesComputation en la remplaçant pat ceci: (Modification de la condition else) public static function initPricesComputation($id_customer = null) { if ((int)$id_customer > 0) { $customer = new Customer((int)$id_customer); if (!Validate::isLoadedObject($customer)) { die(Tools::displayError()); } self::$_taxCalculationMethod = Group::getPriceDisplayMethod((int)$customer->id_default_group); $cur_cart = Context::getContext()->cart; $id_address = 0; if (Validate::isLoadedObject($cur_cart)) { $id_address = (int)$cur_cart->{Configuration::get('PS_TAX_ADDRESS_TYPE')}; } $address_infos = Address::getCountryAndState($id_address); if (self::$_taxCalculationMethod != PS_TAX_EXC && !empty($address_infos['vat_number']) && $address_infos['id_country'] != Configuration::get('VATNUMBER_COUNTRY') && Configuration::get('VATNUMBER_MANAGEMENT')) { self::$_taxCalculationMethod = PS_TAX_EXC; } } else { self::$_taxCalculationMethod = Group::getPriceDisplayMethod((int)Configuration::get('PS_UNIDENTIFIED_GROUP')); $cur_cart = Context::getContext()->cart; $id_address = 0; if (Validate::isLoadedObject($cur_cart)) { $id_address = (int)$cur_cart->{Configuration::get('PS_TAX_ADDRESS_TYPE')}; } $address_infos = Address::getCountryAndState($id_address); if (self::$_taxCalculationMethod != PS_TAX_EXC && !empty($address_infos['vat_number']) && $address_infos['id_country'] != Configuration::get('VATNUMBER_COUNTRY') && Configuration::get('VATNUMBER_MANAGEMENT')) { self::$_taxCalculationMethod = PS_TAX_EXC; } else { self::$_taxCalculationMethod = Group::getPriceDisplayMethod(Group::getCurrent()->id); } } } Edited August 12, 2019 by Eolia (see edit history) Link to comment Share on other sites More sharing options...
David SCHLAMA Posted August 12, 2019 Author Share Posted August 12, 2019 Bonjour Eolia, Merci pour vos précieuses lumières, je vais tester cela et reviens vers vous pour dire si ça résout le souci. Cordialement David 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