Sell by weight, length, area or volume on PrestaShop 8.2 and 9.x: amount field with quick amounts and live total, exact decimal stock and real shipping weight. No overrides.
- PS 9
- PS 8.2
- Classic
- Hummingbird
by Kavio Labs · for PrestaShop 8.2 and 9.x
EU withdrawal button ("Withdraw from contract here" with a two-step statement, Confirm withdrawal, an instant acknowledgement e-mail and an Orders > Withdrawals register), the official EU legal guarantee notice per language at checkout (also the 9.2 one-page checkout), GARAN producer guarantee labels, the Omnibus lowest price of the 30 days before a reduction and GPSR product safety information, for PrestaShop 8.2 and 9.x. Every text editable per language, hooks only, no overrides.
EU withdrawal button ("Withdraw from contract here" with a two-step statement, Confirm withdrawal, an instant acknowledgement e-mail and an Orders > Withdrawals register), the official EU legal guarantee notice per language at checkout (also the 9.2 one-page checkout), GARAN producer guarantee labels, the Omnibus lowest price of the 30 days before a reduction and GPSR product safety information, for PrestaShop 8.2 and 9.x. Every text editable per language, hooks only, no overrides.
PrestaShop 8.2 - 9.x
One module for the EU consumer-law information your shop has to show, built for PrestaShop 8.2 and 9.x:
Not legal advice. The module helps you display the information and provide the functions described in EU consumer law. All texts are templates you can change. Rules differ between countries (wording of the button, period lengths, longer national guarantees, exceptions); check them for the countries you sell to and ask a lawyer about your texts.

kveuconsumerkit-1.0.0.zip.The module adds Orders > Withdrawals, a Withdrawal card on the order page, an EU Consumer Law Kit section in the product page's Modules tab and product safety fields on the brand form.

Settings follow the shop context selected at the top of the back office (all shops, a group or one shop). Price history and withdrawals are kept per shop; the register lists the shops of the current context.
Upload the new package the same way (Module Manager > Upload a module). Settings, the register and the price history are kept.
Uninstalling removes the settings, hooks and the menu entry. The withdrawal register, price history and product / brand data stay in the database (statements may have to be kept as evidence) unless you switch on Withdrawal > Delete the register and product data when uninstalling first. Export the register as CSV before deleting it.
Modules > Module Manager > EU Consumer Law Kit > Configure
| Setting | Default | Notes |
|---|---|---|
| Withdrawal period | 14 days | Starts when the order first reaches a "delivered" status; ends at the end of the last day |
| Statuses that mean "delivered" | Delivered | Until then the period is open |
| Order statuses that can be withdrawn | paid, processing, shipped, delivered | Unpaid or cancelled orders get no button |
| Order status after a withdrawal | keep | Otherwise the order moves to this status; a private order message with the reference is always added |
| Accept statements after the period | On | Late statements are stored and flagged "after the period"; Off = the form refuses them with the end date |
| Allow withdrawal of selected items | On | Whole order, or items and quantities |
| Footer strip on every page | On | "Withdraw from contract here" + "Legal guarantee" above the theme footer |
| Account and order pages | On | Link in My account and a button on orders that can still be withdrawn (also guest order tracking) |
| Optional reasons | 5 reasons | Never required; empty = no question |
| Notify | shop e-mail | Staff notice for each statement (comma-separated addresses) |
| Delete data on uninstall | Off | Keeps the register by default |

| Setting | Default | Notes |
|---|---|---|
| Period | 30 days | At least 30 days under Art. 6a |
| Calculation | before the reduction | Or a rolling period including today |
| Consecutive reductions count as one | On | Progressive reductions keep the price before the first reduction |
| Not enough history yet | regular price | Or show nothing; the history starts on installation |
| Show on product lists | On | Category, search, brand, prices drop and module lists |
The history is recorded per shop for the default customer group, tax excluded in the default currency, and shown with the tax and currency of the visitor. Reductions are PrestaShop specific prices; ones that start or end on their own date are back-dated by the daily sweep.
One column per store language. Empty fields use the default English text (shown in grey). Placeholders: {email}, {price}, {days}, {years}.

Product safety fields: legal name, postal address, e-mail or contact page, website, "manufacturer is established outside the EU" and the responsible person in the EU (name, address, e-mail).

Enter the key from your Kavio Labs account. Without a valid licence the withdrawal button, statement, acknowledgement e-mail and register keep working; the guarantee notice, GARAN badge, lowest-price line and product-safety section are hidden on the storefront, and item-level withdrawal and CSV export are switched off.


A card above the order button with the legal guarantee notice (opens full size) and a reminder of the withdrawal button.

Linked from the withdrawal pages: the Annex I(B) model form with your shop name, address and e-mail, for customers who prefer e-mail or post.
No software can promise that. The module provides the functions and displays described in the EU rules and lets you adapt every text. Check the national rules of the countries you sell to and ask a lawyer about your wording. This is not legal advice.
From the European Commission ("Practical guidelines and high-resolution vector files for the EU notice and label", link on the Guarantee & GARAN tab), in every EU language. Upload it unchanged and in colour, one image per store language.
The producer offering the commercial guarantee of durability fills in the years, brand and model identifier. Ask your supplier for the file; if you sell your own brand, you are the producer. Upload it in the product page's Modules tab.
Yes, per store language on the Texts tab. Keep it unambiguous; many countries publish an official wording for "Withdraw from contract here" and "Confirm withdrawal".
No. The withdrawal button, statement, acknowledgement e-mail and register always work, so customers are never left without the function. The other storefront displays need a valid licence.
By default the statement is accepted and flagged "after the period" so you can decide. You can switch this off; the form then says that the period has ended.
From the order history: the first time the order reached one of the "delivered" statuses. Until then the period is open.
No. It records the statement, informs you and the customer and shows the refund deadline. Refund with PrestaShop as usual (partial refund / credit slip) and set the withdrawal to Refunded.
The history starts on installation. Until 30 days of history exist, the module shows the regular price before the reduction (or nothing, if you choose). Reductions that start or end on a date are back-dated to that date.
The default customer group of the shop. The line is shown to every visitor with their own tax display and currency.
It uses standard PrestaShop hooks (footer, product price block, product additional info, checkout, customer account, order details) and its own scoped styles. It is tested with Classic and Hummingbird, and with the 9.2 one-page checkout.
Yes. Configure Advanced Parameters > E-mail. A failed send is shown in the register with a Resend acknowledgement button; the statement is stored either way.
Buy with confidence
Every release is installed and run on these versions before it ships.
Updates and support are included in the price. The product keeps working afterwards; renewing is optional.
How licensing worksIf it is not what you expected, tell us within 30 days and we refund the order.
Refund policyCard payments are processed by Stripe. Your card number never reaches our server.
Ask a pre-sales questionSold by Kavio Labs Software Limited, registered in England and Wales No. 17532441. About us
More for PrestaShop
Sell by weight, length, area or volume on PrestaShop 8.2 and 9.x: amount field with quick amounts and live total, exact decimal stock and real shipping weight. No overrides.
Shoppers propose a price per item; the shop accepts, counters or declines, or rules answer at once. The agreed price is a one-time specific price for that customer's cart.
Text and monogram personalization with a live preview on the product image, 12 fonts, fixed or per-character fees and a printable production sheet.