Download the PHP package magendoo/magendoowithdrawal without Composer

On this page you can find all versions of the php package magendoo/magendoowithdrawal. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package magendoowithdrawal

Magendoo Withdrawal Function

EU Article 11a (Directive (EU) 2023/2673) withdrawal function for PrestaShop.

Article 11a, inserted into the Consumer Rights Directive 2011/83/EU by Directive (EU) 2023/2673, requires every B2C shop that concludes distance contracts online to offer a "withdrawal function": a statutory two-step withdraw/confirm flow with a guaranteed acknowledgment of receipt on a durable medium, and a record of the request. The obligation applies from 19 June 2026.

This module implements that function end to end: a storefront statement flow, a receipt-only acknowledgment email, a back-office grid and workflow, and a full audit trail — with no foreign key from the compliance record to the order, so the record survives even if the order is later deleted.

Screenshots

Storefront: start / lookup Storefront: withdrawal statement form
Storefront: review before confirming Storefront: success page with reference
Acknowledgment-of-receipt e-mail Back office: Withdrawal Requests grid
Back office: request detail and workflow

Features

Installation

Requires PHP 8.1+ and PrestaShop 9.0.0 or above. The module is distributed through Packagist as magendoo/magendoowithdrawal (type: prestashop-module).

1. Get the module into modules/magendoowithdrawal

Composer-managed PrestaShop project (recommended). PrestaShop core does not place prestashop-module packages on its own, so use PrestaShop's official composer-script-handler in your shop's root composer.json:

Then run composer install from the shop root; the handler downloads the package and unpacks it into modules/magendoowithdrawal/. The shipped vendor/ (the module's own PSR-4 autoloader) is included in the release archive, so no extra Composer step is needed inside the module.

Manual, without Composer. Download the release archive from Packagist/GitHub and extract it so the tree lives at modules/magendoowithdrawal/ (the folder name must be exactly magendoowithdrawal), or upload that ZIP through Modules -> Module Manager -> Upload a module in the back office.

2. Enable it

Or from the back office: Modules -> Module Manager, search "Magendoo Withdrawal Function", click Install.

Installation creates two tables (ps_withdrawal_request, ps_withdrawal_request_item), registers the displayFooter, displayCustomerAccount, displayOrderDetail and actionFrontControllerSetMedia hooks, seeds the configuration defaults below, and adds the Withdrawal Requests tab under Sales (formerly Orders) in the back-office menu.

Configuration

Open Modules → Module Manager, find the module, and click Configure. The screen is organised into four sections, backed by these Configuration keys:

General

Presentation

Notifications

Privacy & anti-abuse

Two more keys exist but are not on the form: MAGENDOOWITHDRAWAL_CRON_TOKEN (a random token generated at install, used to authorise the cron endpoint) and MAGENDOOWITHDRAWAL_BO_LINK (a cached, token-less back-office deep link, captured the first time an administrator opens the grid, used to build the link inside merchant-notification e-mails).

The Withdrawal Requests grid and workflow live at Sales → Withdrawal Requests in the back office.

Cron

The configuration screen displays the exact URL to schedule, built from the module's own token:

Hitting it (e.g. every 5 minutes from an external scheduler) retries any pending acknowledgment e-mails up to MAGENDOOWITHDRAWAL_ACK_MAX_ATTEMPTS attempts and runs the retention anonymiser against MAGENDOOWITHDRAWAL_RETENTION_DAYS. The request must present the correct token (hash_equals) or it is rejected with 403 Forbidden.

Architecture

Testing

This runs the 77-test unit suite under tests/Unit/ (pure domain logic — Eligibility, StatusMachine, WithdrawalStatus, Labels, OrderStateAnchor, RateLimiter, SubmissionData — no database or PrestaShop bootstrap required).

tests/Integration/ contains additional scripts (repository, entity write-path, acknowledgment sender, anonymiser, front-office smoke tests) that exercise the module against a running PrestaShop install with a live database and a mail catcher; they are not part of the default phpunit.xml.dist test suite and require that environment to be booted first.

License

Released under the Open Software License 3.0 (OSL-3.0), matching the license declared in composer.json.


All versions of magendoowithdrawal with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package magendoo/magendoowithdrawal contains the following files

Loading the files please wait ...