magepsycho / magento2-discountlimit

magepsycho/magento2-discountlimit

Magento 2 Discount Amount Limiter

magento2-module Compatibility: 2.4.7 Code Quality: Fail Tests: N/A Security: Pass OSL-3.0

Magento 2 Discount Limiter

Magento 2 Discount Limiter

Packagist Version
Packagist Downloads
Supported Magento Versions
License

Overview

Magento 2 Discount Limiter allows setting the maximum discount amount (upper limit) for a percentage-based cart rule.

Store owners run different promotional activities to attract customers and grow sales.
One of the discounts they often want to use is percentage-based but with some limits.
For example: Get 10% OFF but up to 50$ only.

By default, Magento doesn't have such a feature of setting the maximum amount of discount (upper limit) in the cart rule.
But with this extension, you are all set to go.

Key Features

  • Option to enable/disable the extension as per store
  • Option to set the maximum amount discount

Feature Highlights

Limit Discount Amount

With this extension, the store admin can set the upper limit (maximum discount) for any percentage-based cart rule.

Some use cases:

  • Flat 10% OFF, up to 50$
  • 10% OFF for first order, up to 25$
  • etc.

M2 Discount Limiter - Cart Rule Edit Page

M2 Discount Limiter - Storefront Cart Page

🛠️ Installation

1 Using Composer (Preferred)

composer require magepsycho/magento2-discountlimit

2 Using Modman

modman init
modman clone [email protected]:MagePsycho/magento2-discount-amount-limiter.git

3 Using Zip File

  • Download the Extension Zip File
  • Extract & upload the files to /path/to/magento2/app/code/MagePsycho/DiscountLimit/

After installation by either means, activate the extension with following steps

  1. Enable the module
php bin/magento module:enable MagePsycho_DiscountLimit --clear-static-content
php bin/magento setup:upgrade
  1. Flush the store cache
php bin/magento cache:flush
  1. Deploy static content - in Production mode only
rm -rf pub/static/* var/view_preprocessed/*
php bin/magento setup:static-content:deploy
  1. Go to Admin > MARKETING > Discount Limiter > Manage Settings

Live Demo:

Changelog

Version 1.0.0 (2022-01-24)

  • Initial Release.

Authors

  • Raj KB Twitter Follow

Contributors

Contributors

To Contribute

Any contribution to the development of Magento 2 Discount Limiter is highly welcome.
The best possibility to provide any code is to open a pull request on GitHub.

Need Support?

If you encounter any problems or bugs, please create an issue on GitHub.

Please visit our store for more FREE / paid extensions OR contact us for customization / development services.

No changelog yet

The vendor hasn't published a changelog. Tagged releases appear in the Versions tab.

Versions
Version Stability QA Status Compatibility Released
1.0.1 stable Fail Magento 2.4.7 Details 2022-10-05 14:10:03
1.0.0 stable Not tested Not yet tested Details 2022-02-11 10:53:23

No dependencies declared

This package's composer.json doesn't declare any required, suggested, replaced, or conflicting packages.

Compatibility

Each Magento release line is installed on its supported PHP versions, then the module is built (DI compilation + static-content deploy) and its unit and integration suites are run. The matrix shows the lines and PHP versions the module is confirmed to install and run on. Code-quality results further down (phpstan, phpcs, …) are reported separately and never affect compatibility.

Compatibility matrix (Magento × PHP)
Magento PHP 8.2 PHP 8.3 PHP 8.4 PHP 8.5
2.4.7 Pass Pass
2.4.8 Pass Fail di error
2.4.9 Fail di error Fail di error

Code Quality - Static Tests

Checks run directly against the module's source code, independent of any Magento or PHP version: coding standards (phpcs), mess detection (phpmd), copy-pasted code (cpd), PHP cross-version compatibility, composer.json validity, and a security audit of its declared dependencies. Each runs once.

Static code-quality results
Tool Status Findings Summary
PHPCS Fail 49 1 error, 48 warnings (ruleset: Magento2) — 40 auto-fixable with phpcbf
PHPMD Warning 4 4 rule violations (UnusedFormalParameter:3, IfStatementAssignment:1)
Cpd Pass 0
Composer validate Info 1 valid; 1 advisory note (composer validate --strict)
Composer audit Pass 0

Code Quality - PHPStan

PHPStan type-checks the module's PHP against a real Magento install (so framework and core-module symbols resolve) at the configured gate level. Because the available symbols differ between releases, it runs separately for each Magento and PHP version. The grid below shows the result for each pairing; select one to see its findings. This never affects compatibility.

PHPStan results by Magento and PHP version
Magento PHP 8.2 PHP 8.3 PHP 8.4 PHP 8.5
2.4.7 Pass Pass
2.4.8 1 2
2.4.9 2 2

Tests

Unit and integration suites, run for each applicable Magento and PHP version. A test failure speaks to the module's behaviour, not its compatibility with a Magento line, so it is reported here separately and never reddens the compatibility matrix.

Unit tests

Unit tests results by Magento and PHP version
Magento PHP 8.2 PHP 8.3 PHP 8.4 PHP 8.5
2.4.7 N/A N/A
2.4.8 N/A N/A
2.4.9 N/A N/A

Integration tests

Integration tests results by Magento and PHP version
Magento PHP 8.2 PHP 8.3 PHP 8.4 PHP 8.5
2.4.7 N/A N/A
2.4.8 N/A N/A
2.4.9 N/A N/A

More from magepsycho

View vendor
Make it pay

Turn an existing module into recurring revenue.

If you already maintain a Magento 2 module on GitHub or GitLab, listing it on Packagento takes about five minutes. We mirror your tags, handle distribution signing, and route paid licenses through Stripe Connect, so you can keep shipping the way you already do.