Augmenter les prix en masse + gestion des arrondis

  • Posts: 321
  • Thank you received: 16
  • Hikashop Business
2 days 14 hours ago #370698

-- HikaShop version -- : 6.1.1
-- Joomla version -- : 5.4.3
-- PHP version -- : 8.2

Bonjour,

Je dois augmenter tous les prix d'une boutique, disons de 1%, en arrondissant les prix TTC au dixième d'euro (j'ai deux taux de TVA), et ceci à partir d'une date donnée (si possible).
J'ai vu qu'il était possible (recommandé ?) d'utiliser une action de masse pour cela, qui agit sur le prix HT.
En gros j'aurai donc besoin, dans mon action de masse, de :

  1. filtrer par taux de TVA (prenons 20% pour l'exemple)
  2. multiplier par 1.01 > muliplier par 1.2 > arrondir au dixième > diviser par 1.2
1️⃣Quelle action permettrait cela ?

Par ailleurs aux précédents changements de prix (que j'avais fait produit par produit), j'avais indiqué une date de début et donc j'ai conservé les anciens prix (je ne sais pas trop l'utilité mais c'est un autre sujet).
2️⃣Cette action de masse va-t-elle agir sur les anciens prix aussi ou uniquement le dernier valide ?

3️⃣Enfin dernière question, y a-t-il une autre façon préconisée pour mes besoins (du style exporter les produits, modifier les prix et les réimporter) ?

Merci et bon we
Pierre

Please Log in or Create an account to join the conversation.

  • Posts: 85232
  • Thank you received: 13912
  • MODERATOR
1 day 23 hours ago #370701

Bonjour,

Pour augmenter tous vos prix de 1% tout en arrondissant le prix TTC au dixième d'euro, la méthode la plus adaptée serait de passer par un export/import CSV via les actions de masse (menu Système > Actions de masse > Produit).

Voici la procédure recommandée :

1. Créez une action de masse de type "produit" avec un filtre pour sélectionner les produits concernés (par exemple par catégorie, ou tous les produits publiés).
2. Ajoutez une action "Export CSV" en incluant les colonnes product_code et price_value_with_tax (prix TTC). Exécutez l'export.
3. Dans le fichier CSV, modifiez les prix TTC : multipliez par 1.01 puis arrondissez au dixième (dans un tableur, la formule serait =ROUND(prix * 1.01, 1)).
4. Réimportez le CSV via une action de masse avec le filtre "Import CSV". Le système recalculera automatiquement le prix HT à partir du prix TTC en fonction du taux de TVA configuré sur chaque produit.

Alternativement, si vos produits ont tous le même taux de TVA (par exemple 20%), vous pouvez utiliser l'action "Modifier les valeurs" sur le champ price_value avec une opération SQL du type :
ROUND(price.price_value * 1.01 * 1.2, 1) / 1.2
Cela multipliera le prix HT par 1.01, calculera le TTC (×1.2), arrondira au dixième, puis reconvertira en HT (÷1.2). Mais cette approche ne fonctionne que si tous les produits ont le même taux de TVA.

Concernant vos questions sur les prix historiques : l'action de masse modifiera tous les prix associés aux produits sélectionnés, y compris ceux avec des dates de début/fin. Il n'y a pas de filtre sur les dates de prix dans les actions de masse. Si vous souhaitez ne modifier que le prix actif, l'approche CSV est préférable car vous pouvez choisir quelles lignes modifier dans le tableur avant de réimporter.

Enfin, pour la gestion de l'historique des prix : si vous n'avez pas besoin de consulter les anciens tarifs, il n'est pas nécessaire de conserver les anciens prix avec des dates de début. Vous pouvez simplement modifier le prix existant.

The following user(s) said Thank You: Pi_R

Please Log in or Create an account to join the conversation.

  • Posts: 321
  • Thank you received: 16
  • Hikashop Business
1 day 19 hours ago #370703

Bonjour nicolas,

Merci pour cette réponse claire à toutes mes questions.
C'est effectivement la syntaxe de l'opration SQL

ROUND(price.price_value * 1.01 * 1.2, 1) / 1.2
que je cherchais à connaître, même si mes prix n'ont pas tous la même TVA, car je pensais filtrer selon cette TVA.
Mais la méthode de l'export/import CSV semble finalement plus pratique à mettre en oeuvre, je vais pouvoir me pencher dessus.

Bon dimanche

The following user(s) said Thank You: nicolas

Please Log in or Create an account to join the conversation.

  • Posts: 321
  • Thank you received: 16
  • Hikashop Business
1 day 13 hours ago #370706

Re,
Alors j'ai fait quelques essais d'export CSV avec les paramètres indiqués, et je rencontre un petit souci :

  • pour les variantes que j'ai configurées avec une TVA "comme le produit parent", c'est leur prix HT qui apparaît dans le "price_value_with_tax" du fichier CSV.
  • Et pour les produits dont j'ai gardé un historique de leurs anciens prix, ils apparaissent au autant d'exemplaires que de prix conservés (mais avec la même valeur "prix_1|prix_2|etc...")

Please Log in or Create an account to join the conversation.

  • Posts: 85232
  • Thank you received: 13912
  • MODERATOR
23 hours 4 minutes ago #370709

Bonjour,

Concernant le premier point (prix HT affiché dans price_value_with_tax pour les variantes), le problème vient probablement de la configuration de la zone de taxation principale dans HikaShop.

Quand l'export CSV s'exécute depuis l'administration, le système n'a pas d'adresse client pour déterminer la zone de taxation. Il utilise donc la "zone de taxation principale" configurée dans Système > HikaShop > Configuration > onglet Principal > section Taxation. Si cette zone n'est pas configurée (ou ne correspond pas à une zone pour laquelle des règles de taxation existent), le calcul de TVA retourne 0 et le prix TTC affiché est identique au prix HT.

Ce problème touche en réalité tous les produits, pas seulement les variantes. Mais comme vos produits principaux n'ont probablement pas de prix dans la table des prix (les prix sont sur les variantes uniquement), ils n'apparaissent pas dans l'export des prix et vous ne pouvez donc pas constater le problème sur ceux-ci.

Vérifiez que la zone de taxation principale est bien configurée sur "France" (ou la zone appropriée à votre boutique) et relancez l'export, les prix TTC devraient alors être correctement calculés.

Concernant le second point (produits dupliqués), normalement chaque produit/variante ne devrait apparaître qu'une seule fois dans l'export, avec les différents prix concaténés avec | dans la colonne price_value. Pourriez-vous nous donner plus de détails sur la configuration de votre action de masse, notamment les filtres utilisés ? Si vous avez utilisé un filtre sur une colonne de prix (par exemple price_value), cela pourrait expliquer la duplication car ce filtre génère une jointure avec la table des prix qui peut multiplier les lignes.

Please Log in or Create an account to join the conversation.

  • Posts: 321
  • Thank you received: 16
  • Hikashop Business
21 hours 26 minutes ago #370718

Bonjour,

J'ai l'impression que ma zone de taxation était correcte :



D'autre part j'ai ceci :


et enfin au niveau des catégories de taxes j'ai cela, et c'est peut-être ici le hic avec la 3ème ?


En effet pour l'export, j'avais filtré en évitant les produits principaux à 0€.

Attachments:

Please Log in or Create an account to join the conversation.

  • Posts: 85232
  • Thank you received: 13912
  • MODERATOR
17 hours 34 minutes ago #370720

Bonjour,

Quelle est la "catégorie de taxe" appliqué sur le produit pour lequel vous faites votre test d'export ?
Est-ce que la zone France métropolitaine est bien dans la liste des sous zones de la zone Europe ?

Please Log in or Create an account to join the conversation.

  • Posts: 321
  • Thank you received: 16
  • Hikashop Business
8 hours 21 minutes ago #370734

Bonjour,

- La catégorie de taxe est "réduite" ou "normale" selon les produits lors de mon test.
- La France est bien une sous zone de l'Europe dans mes paramètres.

J'ai vu que j'avais la devise sur "aucun" pour la France, donc je l'ai mise sur €, je ne sais pas si ça change quelque chose vu que je n'ai pas d'autres devises sur le site, mais bon...

Mais surtout j'ai enlevé le filtre sur les colonne de prix (price_value) qui éliminait les produits à 0€ et j'ai l'impression que là j'obtiens bien les TTC pour tous les produits (et sans lignes dupliquées), donc je vais pouvoir travailler dessus.
Merci.

Please Log in or Create an account to join the conversation.

Time to create page: 0.087 seconds
Powered by Kunena Forum