Merchant Tools
Under the EU Omnibus Directive, every price reduction must display the lowest price charged during the 30 days before the sale — with fines for stores that don't. This app records your prices, computes that legal reference, and shows it on your product pages. It never changes a price.
You cut a price for the weekend. The law wants "Lowest price in the last 30 days: $7.90" under the sale badge — computed correctly, from real history.
A consumer authority asks how your references were computed. You export the compliance report and hand it over.
Your sale price is above the legal reference — technically not a discount. The app flags it before a customer or regulator does.
Install, add the price line to your theme, and stay compliant: recording, computing, displaying and reporting run by themselves.
Add the Omnibus lowest price block to your product template in the theme editor (and the collection embed if you want the line on product cards too). The overview tells you when the line is live, flags promotions to check, and explains what happens for products with less than 30 days of history — the line shows the lowest price since recording began, with its date, and becomes a full 30-day value automatically.
When a product goes on sale (compare-at price above the selling price), the block shows the reference under the price: the lowest price of the 30 days before the sale started, with its date. It only appears during promotions, follows the selected variant, and is rendered by your theme with zero network calls — it doesn't slow your pages down. Font, size and wording are adjustable in the theme editor.
The Prices page lists what is on sale: price, compare-at, since when, the computed Omnibus reference and the window it comes from. A red badge warns when the sale price is above the reference — information only, nothing is changed in your store; review the sale price or the compare-at and decide.
One line per promotion and per variant: dates, compare-at, sale price, the reference price in force and what changed. Pick a period, export the CSV, file it with your records — if an authority asks, this is what you show.
A typo fixed within 24 hours, a test price, an unpublished product — you can exclude such a price point from the reference, with a reason, dated and logged; the exclusion shows in the compliance report and is reversible. What you can never do is type in a higher reference: the reference is always a price that was actually charged. Declaring a lower price charged elsewhere is always allowed.
The app records a price point each time a variant's price actually changes, then computes the reference according to the Omnibus rule: the lowest price charged in the 30 days before the promotion started (the strict pre-promotion reading; a rolling-window mode is available in the settings). The result is written to metafields — merchant_tools.omnibus_* — which your theme reads directly.
V1 limits, stated plainly: references are computed in your store's currency (no per-market prices yet), and promotions applied by discount code or checkout scripts are not part of the displayed price, so they are not counted.