# Price Evidence Dossier > Browser-local checker for announced price reductions under the EU 30-day lowest price rule (Directive 98/6/EC Article 6a, added by the Omnibus Directive (EU) 2019/2161), built for Black Friday 2026. Users load a price-history CSV and a planned-sale CSV; the page computes the lawful prior price per SKU, flags wrong "was" prices and percentages (CJEU C-330/23 Aldi Süd), reports history gaps, handles progressive reductions, and exports a hash-chained, ECDSA-signed JSON evidence file plus a printable HTML report. No data leaves the browser. Workflow aid, not legal advice. Rules checked 2026-10-12 (rules version 2026-10-12.2). Author: Adam Hale ## Pages - [Checker](https://pricecheck.adamhaleworks.workers.dev/): the tool, CSV format, FAQ - [30-day lowest price rule for Black Friday](https://pricecheck.adamhaleworks.workers.dev/guide/30-day-lowest-price-rule-black-friday/): worked examples with sources - [Omnibus Directive price reductions by country](https://pricecheck.adamhaleworks.workers.dev/guide/omnibus-directive-price-reduction/): France, Germany, Austria, Netherlands, Poland, Italy, Spain, and the UK position - [Verify an evidence file](https://pricecheck.adamhaleworks.workers.dev/verify/): hash chain and signature check, file format - [Bulk licence](https://pricecheck.adamhaleworks.workers.dev/bulk/): free up to 25 SKUs per run; bulk licence not on sale yet - [Sources, method, privacy and limits](https://pricecheck.adamhaleworks.workers.dev/sources/) ## Guides in national languages - [Preisangabenverordnung: 30-Tage-Regel für Black Friday (§ 11 PAngV)](https://pricecheck.adamhaleworks.workers.dev/de/preisangabenverordnung-30-tage-black-friday/) (de-DE): Germany, PAngV § 11, in German - [Preisauszeichnungsgesetz (§ 9a PrAG): 30-Tage-Regel am Black Friday](https://pricecheck.adamhaleworks.workers.dev/at/preisauszeichnungsgesetz-30-tage-black-friday/) (de-AT): Austria, PrAG § 9a, in Austrian German - [Black Friday: laagste prijs van de afgelopen 30 dagen (art. 5a)](https://pricecheck.adamhaleworks.workers.dev/nl/laagste-prijs-30-dagen-black-friday/) (nl-NL): Netherlands, Besluit prijsaanduiding producten art. 5a, in Dutch - [Najniższa cena z 30 dni na Black Friday: art. 4 ustawy (Omnibus)](https://pricecheck.adamhaleworks.workers.dev/pl/najnizsza-cena-z-30-dni-black-friday-omnibus/) (pl-PL): Poland, ustawa o informowaniu o cenach towarów i usług art. 4, in Polish, examples in PLN - [Prezzo più basso degli ultimi 30 giorni per il Black Friday](https://pricecheck.adamhaleworks.workers.dev/it/prezzo-piu-basso-30-giorni-black-friday/) (it-IT): Italy, Codice del consumo art. 17-bis, in Italian - [Precio más bajo de los últimos 30 días en Black Friday (art. 20)](https://pricecheck.adamhaleworks.workers.dev/es/precio-mas-bajo-30-dias-black-friday/) (es-ES): Spain, Ley 7/1996 art. 20, in Spanish - [Black Friday : prix de référence et règle des 30 jours (L112-1-1)](https://pricecheck.adamhaleworks.workers.dev/fr/prix-de-reference-30-jours-black-friday/) (fr-FR): France, Code de la consommation art. L112-1-1, in French ## Rules modelled - EU baseline for every EU/EEA country: prior price = lowest price applied in at least the 30 days before the reduction, in the sale country's local time; earlier promotions count; per sales channel; percentages from the prior price. - National options verified from official texts: Germany (DE, PAngV § 11); Austria (AT, PrAG § 9a); Netherlands (NL, Besluit prijsaanduiding producten art. 5a); Poland (PL, Ustawa o informowaniu o cenach towarów i usług, art. 4); Italy (IT, Codice del consumo art. 17-bis); France (FR, Code de la consommation art. L112-1-1); Spain (ES, Ley 7/1996 art. 20). - United Kingdom (Great Britain): indicators only, no verdict (DMCC Act 2024 s.226; CMA guidance has no fixed period). ## Code (no server API) - https://pricecheck.adamhaleworks.workers.dev/js/engine.js: analyse({history, sales, settings}) with tables from parseCsv(); ES module, no dependencies, runs in browsers and Node.js 22+ - https://pricecheck.adamhaleworks.workers.dev/js/parse.js, https://pricecheck.adamhaleworks.workers.dev/js/rules.js, https://pricecheck.adamhaleworks.workers.dev/js/evidence.js (buildDossier, verifyDossier) - Samples: https://pricecheck.adamhaleworks.workers.dev/samples/price-history.csv, https://pricecheck.adamhaleworks.workers.dev/samples/planned-sale.csv