Skip to main content

MageMe EU Withdrawal | Installation

EU Withdrawal ships in two editions:

  • Free — the base module (MageMe_EUWithdrawal) plus its MageMe_Core dependency. 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

RequirementSupported
Magento2.4.4 — 2.4.9 (Open Source and Adobe Commerce)
PHP8.1, 8.2, 8.3, 8.4, or 8.5
MySQL / MariaDB8.0 / 10.6+
ThemesLuma (built-in), Hyvä (via companion modules), Breeze (built-in)
Multi-storeFully supported (per-store-view configuration)
Server accessSSH to your Magento root
ToolingComposer 2.x for the recommended install path
Pro onlyYour 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.

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

  1. Download MageMe_EUWithdrawal-<version>.zip from your account area. It contains both MageMe_Core and MageMe_EUWithdrawal.

  2. Extract it into app/code/MageMe/ (so you end up with app/code/MageMe/Core and app/code/MageMe/EUWithdrawal).

  3. Enable and upgrade:

    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

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.

  1. 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
  2. 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
  3. Enable and upgrade:

    php bin/magento module:enable \
    MageMe_Core MageMe_EUWithdrawal \
    MageMe_EUWithdrawalAnnexI MageMe_EUWithdrawalAudit MageMe_EUWithdrawalEvidence \
    MageMe_EUWithdrawalMagicLink MageMe_EUWithdrawalReceiptVerify
    php bin/magento setup:upgrade
    php bin/magento setup:di:compile
    php bin/magento cache:flush

Method 2: ZIP file

  1. Download MageMe_EUWithdrawal-Pro-<version>.zip from your account area. It contains MageMe_Core, the free base, and all five Pro modules.
  2. Extract it into app/code/MageMe/.
  3. Enable and upgrade with the same module:enable command 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.

  1. In the admin, navigate to Stores → Configuration → MageMe Extensions → EU Withdrawal.

  2. Configure at minimum:

    • General → Enable Module — leave No until 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.
  3. Switch General → Enable Module to Yes and save.

  4. 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.