mavenbird / module-cancelorder
Magento 2 module to allow customers to cancel orders with reasons.
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 1
Open Issues: 0
Language:HTML
Type:magento2-module
pkg:composer/mavenbird/module-cancelorder
Requires
- php: ^7.4 || ^8.1
- magento/framework: ^103.0
- mavenbird/module-core: *
This package is auto-updated.
Last update: 2026-01-08 12:54:01 UTC
README
Lightweight Magento 2 module that adds a frontend "Cancel Order" button on order history and order view pages, a cancel popup with predefined reasons (and "Other"), and a backend configuration to enable/disable the feature.
Features
- Frontend cancel button on customer order history and order view.
- Cancel popup with multiple predefined reasons + "Other".
- AJAX-based cancel request with Magento message feedback.
- Admin configuration under Stores → Configuration → Mavenbird → Cancel Order.
- ACL resource for admin configuration:
Mavenbird_CancelOrder::config.
Requirements
- Magento 2 (tested on 2.4.x)
- PHP and system requirements matching your Magento installation
Installation (manual)
- Copy the module into app/code/Mavenbird/CancelOrder
- Enable and install:
- php bin/magento module:enable Mavenbird_CancelOrder
- php bin/magento setup:upgrade
- php bin/magento cache:flush
- (Optional) If in production mode:
- php bin/magento setup:di:compile
- php bin/magento setup:static-content:deploy -f
Configuration
Admin: Stores → Configuration → Mavenbird → Cancel Order → General Settings
- Enable Cancel Order Feature: Yes/No
ACL: A new ACL resource is provided (etc/acl.xml). Grant the Cancel Order Configuration permission to admin roles that should manage the setting.
Usage
- When enabled, customers see a cancel button on eligible orders.
- Clicking opens a popup to choose a reason or enter a custom reason.
- Cancellation is submitted via AJAX; success/failure messages appear using Magento message framework.
Changelog
See CHANGELOG.md for release notes.
License
See LICENSE.txt bundled with the module or the license URL in module headers.