MageMe EU Withdrawal | Installation
EU Withdrawal ships in two editions:
- Free — the base module (
MageMe_EUWithdrawal) plus itsMageMe_Coredependency. Published openly; no keys required. - Pro — the free base plus five Pro modules (Annex I proof, magic link, audit trail, evidence pack, receipt verification). Delivered through the MageMe Composer repository; your purchase grants access. See the Pro Version overview.
Both editions install the same two ways: Composer (recommended) or a downloadable ZIP. The Hyvä storefront companions are installed separately — see Hyvä storefront below.
Before you continue, read Legal & Compliance — the module ships AS-IS and the merchant is responsible for compliance verification.
Prerequisites
| Requirement | Supported |
|---|---|
| Magento | 2.4.4 — 2.4.9 (Open Source and Adobe Commerce) |
| PHP | 8.1, 8.2, 8.3, 8.4, or 8.5 |
| MySQL / MariaDB | 8.0 / 10.6+ |
| Themes | Luma (built-in), Hyvä (via companion modules), Breeze (built-in) |
| Multi-store | Fully supported (per-store-view configuration) |
| Server access | SSH to your Magento root |
| Tooling | Composer 2.x for the recommended install path |
| Pro only | Your MageMe Composer repository keys (see account area) |
Free edition
The free base module and MageMe_Core are published on Packagist — no repository configuration and no keys are required.
Method 1: Composer (recommended)
composer require mageme/module-eu-withdrawal
php bin/magento module:enable MageMe_Core MageMe_EUWithdrawal
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento cache:flush
MageMe_Core is pulled in automatically as a dependency.
Method 2: ZIP file
-
Download
MageMe_EUWithdrawal-<version>.zipfrom your account area. It contains bothMageMe_CoreandMageMe_EUWithdrawal. -
Extract it into
app/code/MageMe/(so you end up withapp/code/MageMe/Coreandapp/code/MageMe/EUWithdrawal). -
Enable and upgrade:
php bin/magento module:enable MageMe_Core MageMe_EUWithdrawalphp bin/magento setup:upgradephp bin/magento setup:di:compilephp bin/magento cache:flush
Pro edition
Pro adds five modules on top of the free base. The base and Core still come from Packagist automatically; the five Pro modules come from the MageMe Composer repository.
Method 1: Composer (recommended)
-
Add the MageMe Composer repository in your Magento root. Use your personal keys when prompted — find them in your account area under Composer Repository:
composer config repositories.mageme composer https://repo.mageme.com -
Require the Pro modules (the free base and Core resolve automatically):
composer require \mageme/module-eu-withdrawal-annex-i \mageme/module-eu-withdrawal-audit \mageme/module-eu-withdrawal-evidence \mageme/module-eu-withdrawal-magic-link \mageme/module-eu-withdrawal-receipt-verify -
Enable and upgrade:
php bin/magento module:enable \MageMe_Core MageMe_EUWithdrawal \MageMe_EUWithdrawalAnnexI MageMe_EUWithdrawalAudit MageMe_EUWithdrawalEvidence \MageMe_EUWithdrawalMagicLink MageMe_EUWithdrawalReceiptVerifyphp bin/magento setup:upgradephp bin/magento setup:di:compilephp bin/magento cache:flush
Method 2: ZIP file
- Download
MageMe_EUWithdrawal-Pro-<version>.zipfrom your account area. It containsMageMe_Core, the free base, and all five Pro modules. - Extract it into
app/code/MageMe/. - Enable and upgrade with the same
module:enablecommand as in Method 1, step 3.
Hyvä storefront (optional)
If your storefront runs Hyvä, install the companion modules alongside the edition above. They are not included in the ZIP archives — install them with Composer.
Free + Pro (Packagist, no keys):
composer require mageme/module-eu-withdrawal-hyva
# only if you run Hyvä Checkout instead of Luma checkout:
composer require mageme/module-eu-withdrawal-hyva-checkout
mageme/module-eu-withdrawal-hyva— ports the storefront flow to Tailwind + Alpine.js.mageme/module-eu-withdrawal-hyva-checkout— adds the pre-contract block and digital-content waiver step to Hyvä Checkout.
Pro on Hyvä (MageMe Composer repository):
composer require mageme/module-eu-withdrawal-receipt-verify-hyva
mageme/module-eu-withdrawal-receipt-verify-hyva— re-renders the Pro receipt-verification page for Hyvä themes.
Each companion has its own enable and Tailwind recompile steps. See Hyvä Theme Compatibility for the full instructions and coverage details.
Post-installation
The module is disabled by default. Complete configuration before enabling.
-
In the admin, navigate to Stores → Configuration → MageMe Extensions → EU Withdrawal.
-
Configure at minimum:
- General → Enable Module — leave
Nountil the steps below are done. - Withdrawal Window → Delivery Confirmation Statuses — select the order statuses your store uses to mark a shipment as delivered. The clock starts from the earliest transition into one of these statuses. The Magento default is
complete. - Customer Notifications → Receipt Email → DLQ Alert Recipient — leave blank to fall back to your store's General Contact, or set a dedicated address that should receive permanent-failure alerts.
- General → Enable Module — leave
-
Switch General → Enable Module to
Yesand save. -
Flush cache:
php bin/magento cache:flush
→ Continue with the Quick Start for a 10-minute end-to-end walkthrough, or jump to the full Configuration Reference.
Disable
Disables a module while preserving all data (withdrawal requests, audit log, configuration). Re-enable later with module:enable.
php bin/magento module:disable MageMe_EUWithdrawal
php bin/magento setup:upgrade
php bin/magento cache:flush
To remove the whole Pro edition, list the five Pro modules in the module:disable command as well. Withdrawal records and audit-log rows are retained for the lifetime configured under Privacy & Retention — keep them for the EU consumer-rights statute of limitations (1–3 years depending on Member State, up to 6 years for commercial records) before deleting.
Compatibility
The base module depends on MageMe_Core and Magento Store, Customer, Catalog, Sales, Backend, Config. Each Pro module depends on the free base. If Magento's reCAPTCHA modules are installed, the guest-lookup form integrates with them automatically; without reCAPTCHA the form still works.