Prices Changer pour Magento® 2.x
À quelle fréquence devez-vous modifier le prix régulier ou le prix promotionnel d’un groupe de produits ? Avec notre module, vous le faites en quelques clics. Vous filtrez les produits selon n’importe quels attributs pour modifier leurs prix. Le module prend en charge plusieurs formules de modification de prix.
Sécurité
La sécurité de la modification des prix est assurée de deux manières :
1. Toutes les modifications de prix s’effectuent dans une transaction unique. En cas d’erreur, la base de données annule automatiquement les modifications.
2. Avant chaque modification de prix, notre module crée une sauvegarde des prix précédents. En cas d’erreur, vous pouvez à tout moment revenir en arrière.
Types de prix
Le module prend en charge les types de prix suivants :
- Price
- Special Price
- Cost
- Minimum Advertised Price (MSRP)
- Tier Price
- Customizable Options
- Attributs produit de type « Price »
Formules
Formules pour une modification flexible des prix :
- null : supprime le prix du produit.
- 20 : le nombre saisi remplace le prix actuel du produit.
- -20 : le prix du produit est réduit du nombre indiqué.
- +20 : le prix du produit est augmenté du montant indiqué.
- -10% : le prix est réduit du pourcentage indiqué.
- +20% : le prix est augmenté du pourcentage indiqué.
- max20 : nombre avec le préfixe « max » — le prix final est inférieur ou égal à ce nombre.
- min20 : nombre avec le préfixe « min » — le prix final est supérieur ou égal à ce nombre.
Les nombres 20 et 10 servent d’exemple. Dans votre cas, il peut s’agir de n’importe quels nombres.
La formule peut également utiliser d’autres types de prix. Types de prix accessibles : {{price}}, {{special_price}}, {{cost}}, {{msrp}}.
Dans un ensemble, plusieurs formules peuvent être utilisées.
Tous les prix doivent être indiqués dans la devise de base.
Démo
Vous pouvez essayer cette extension pendant 30 jours. Demandez la démo sur cette page avec Demander une démo ; son fonctionnement est expliqué sur Essayez une extension pendant 30 jours.
Exemples
Quelques exemples :
1
price: 80
cost: 50
formula: {{cost}} +150%
result: 125
2
price: 80
cost: 50
formula: {{cost}} +150% max110
result: 110
3
price: 80
formula: -15%
result: 65
| CMS | Magento 2 |
|---|---|
| Compatibilité | 2.4, 2.3 |
| Fonctionnalités |
|
The extension is installed with Composer. Which repository you add depends on where you bought it — the install itself is the same either way.
1. Connect the repository
Bought on extmag.com. Your account page shows the repository address and your personal credentials, together with the two composer config commands to paste. Run them once per project; every extension you own is then available from the same repository.
Bought on the Adobe Commerce Marketplace. The package is served from repo.magento.com, which most stores already have configured. If not, add the access keys from your Adobe account under My Profile -> Access Keys.
2. Install the extension
Run in the project root:
composer require extmag/pricer php bin/magento setup:upgrade php bin/magento cache:flush
Composer resolves the shared Extmag packages the extension depends on, so there is nothing else to require by hand.
Log out and log back into the admin, and the extension is ready.
Trying it before you buy
You can ask for a 30-day demo of this extension and install it exactly as above — same package, same repository, same commands. How demos work.
Installing without Composer
The archive can be unpacked into app/code/Extmag/ instead, but that leaves the extension outside dependency management: its shared packages have to be installed by hand and updates never reach it. Use Composer for any store you run, demo included.
For any question about the installation, please contact our technical support.
-
User Guide User Guide.pdf · 3.0 MBTélécharger
-
Reference Manual Reference Manual.pdf · 425.3 KBTélécharger
-
Installation Guide Installation Guide.pdf · 224.6 KBTélécharger
Prices Changer is run from the Extmag menu in the Adobe Commerce (Magento) admin. A price change is described once as a Replacer Set — which products it matches and what the new prices are — and is then applied by hand or handed to a Schedule. Every write it makes is recorded, and every applied set can be rolled back.
Replacer Sets
- Go to Admin Main Menu -> Extmag -> Prices Changer -> Replacer Sets.

- Click the “Add New Set” button.
- Give the set a title, then switch on the price types it should change and enter a formula for each. Leaving a price type off means the set does not touch it.
- Under Conditions, choose which products the set applies to — any product attribute or category, combined with AND / OR. An empty condition tree means the whole catalog.

- Click “Save and Pre-Apply”. The set is saved in Pending status; nothing is written to the catalog until you apply it or a schedule fires.
A formula is written in the base currency and can be any of:
- 20 — replace the price with that number.
- +20 / -20 — raise or lower the price by a fixed amount.
- +20% / -10% — raise or lower it by a percentage.
- min20 / max20 — clamp the result to a floor or a ceiling.
- null — remove the price from the product.
- {{cost}} +45% min19.99 — build one price out of another. The tokens
{{price}},{{special_price}},{{cost}}and{{msrp}}can all be used, and the parts can be combined.
The set covers Price, Special price, Cost, MSRP, Tier prices, Customizable Options and any attribute of the Price type, each with its own formula.
Applying and rolling back
- On the Replacer Sets grid, open the Select menu on the row and choose Apply.
- Before it writes anything the module dumps the current prices of the matched products, so the change can be undone later. The apply itself runs inside a single database transaction — on error the database restores the previous state on its own.
- To undo an applied set, choose Rollback in the same menu. The prices are restored from that dump.
A set with a schedule attached cannot be applied or rolled back by hand while the schedule is pending or active — detach it or let it finish first, so an operator and the cron never write the same prices at the same time.
Schedules
- Go to Admin Main Menu -> Extmag -> Prices Changer -> Schedules.

- Click the “Add New Schedule” button.
- Choose when it fires — one-time, yearly, monthly, weekly or a custom cron expression — and set the apply date and time. A rollback date is optional: fill it in and the prices return by themselves.
- Pick the timezone the times are read in. Firings are stored in UTC, so a summer-time switch does not move a sale by an hour.
- Attach the schedule to as many sets as you need — from the schedule form, or from the Schedules field on the set. One schedule can drive several sets, and one set can carry several schedules.
Each pair of set and schedule keeps its own state and run history, so a failure on one set does not stop the others. When a firing fails the module can email a chosen list of recipients and post a notification in the admin inbox.
Price Change Log
- Go to Admin Main Menu -> Extmag -> Prices Changer -> Price Change Log.

- Every price write is one row: the product, the store view, the price type and field, the old and the new value, the currency, who made the change and what made it — an admin edit, an import, the REST API, a Pricer apply or a Pricer rollback.
- Price Log Statistics, in the same menu, totals the log by source, by admin user and by SKU, and reports how much storage it occupies.
The log is append-only and is written whether or not the change came from this module, so it answers “who dropped that price and when” for the whole store. A daily cron removes rows older than the retention window you choose.
Configuration
- Go to Admin Main Menu -> Extmag -> Prices Changer -> Configuration.

- Work through the groups, filling in what applies to your store.
The groups cover:
- General — whether the indexes are reset after prices change, and which of them.
- Price Change Log — the master switch, which price types and scalar fields are tracked, and how long rows are kept before the cleanup cron removes them.
- Schedules — the schedule cron switch, how many schedules a tick processes, the default timezone, and the failure notification recipients, template and sender.
- Developer Settings — how the apply pass talks to the database. The defaults suit a production store; the chunked apply mode is there for catalogs above a hundred thousand products, where holding one transaction open for the whole run is not practical.
Sets are aware of the Catalog Price Scope. Under global scope prices are written once for all stores; under website scope a set records the scope it was built for and refuses to apply in another, so a price meant for one website is never written to the rest.
The full field-by-field reference, including the exact configuration paths, is in the Reference Manual supplied with the extension.
2.0.0
Switched server_time template to Escaper helper for output escaping. Reverted CSV import source wording in Price Change Log docs. Hardened inline script rendering via SecureHtmlRenderer in schedule server_time template. Corrected Price Change Log import source description.
1.6.9
Added support Magento 2.4.8-p4 and Adobe Commerce 2.4.8-p4
1.6.8
Refactored code.
1.6.7
Added support Magento 2.4.8-p3 and Adobe Commerce 2.4.8-p3
1.6.6
Added support Magento 2.4.8-p2 and Adobe Commerce 2.4.8-p2
1.6.5
Added support Magento 2.4.8-p1 and Adobe Commerce 2.4.8-p1
Fixed price template validation
1.6.4
Added support Magento 2.4.8 and Adobe Commerce 2.4.8
1.6.3
Fixed a bug with the product attribute with the website scope
1.6.2
Fixed a bug with the default store if prices are not set globally but per website.
1.6.1
Fixed bug with store scopes.
Added support Magento 2.4.7-p5 and Adobe Commerce 2.4.7-p5
1.6.0
Added support Magento 2.4.7-p4 and Adobe Commerce 2.4.7-p4
1.5.9
Added support Magento 2.4.7-p3 and Adobe Commerce 2.4.7-p3
1.5.8
Added support Magento 2.4.7-p2 and Adobe Commerce 2.4.7-p2
1.5.7-1.5.8
Added support Magento 2.4.7-p2 and Adobe Commerce 2.4.7-p2
Added support Magento 2.4.7-p1 and Adobe Commerce 2.4.7-p1
1.5.7
Added support Magento 2.4.7-p1 and Adobe Commerce 2.4.7-p1
1.5.6
Added support Magento 2.4.7 and Adobe Commerce 2.4.7
1.5.5
Added support Magento 2.4.6-p4 and Adobe Commerce 2.4.6-p4
1.5.4
Added support Magento 2.4.6-p3 and Adobe Commerce 2.4.6-p3
1.5.3
Added support Magento 2.4.6-p2 and Adobe Commerce 2.4.6-p2
1.5.2
Added support Adobe Commerce 2.4.6-p1
1.5.1
Support Adobe Commerce (Magento) 2.4.6
Support PHP 8.1
1.5.0
Improved filtering product collection and resetting product indexes.
1.4.4
Added availability to reset all indexes after changing prices.
1.4.3
Fixed the problem with tier prices and option All Websites
1.4.2
Fixed some bugs with XML layout and PHP conditions.
1.4.1
Fixed some minor bugs with Conditions in Price Sets.
1.4.0
Added the ability to change the prices of product attributes with the type "Price"
1.3.0
Fixed some minor bugs.
Changed behavior for Website Prices and Global Prices.
1.2.0
Added the ability to change the prices of custom options
1.1.2
Fixed the PHP warnings
1.1.1
Support Adobe Commerce (Magento) 2.4.5-p1
1.1.0
Added opportunity for bulk changing Tier prices of products
1.0.0
Support PHP 8.1 and Adobe Commerce 2.4.4