PHPackages                             aropixel/sylius-stock-alert-plugin - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Mail &amp; Notifications](/categories/mail)
4. /
5. aropixel/sylius-stock-alert-plugin

ActiveSylius-plugin[Mail &amp; Notifications](/categories/mail)

aropixel/sylius-stock-alert-plugin
==================================

Get notifed when your product stock reaches a certain treshold

v0.2.4(5y ago)661MITPHPPHP ^7.3

Since Sep 17Pushed 5y ago1 watchersCompare

[ Source](https://github.com/aropixel/SyliusStockAlertPlugin)[ Packagist](https://packagist.org/packages/aropixel/sylius-stock-alert-plugin)[ RSS](/packages/aropixel-sylius-stock-alert-plugin/feed)WikiDiscussions master Synced 2d ago

READMEChangelog (8)Dependencies (24)Versions (10)Used By (0)

 [ ![Aropixel logo](https://avatars1.githubusercontent.com/u/14820816?s=200&v=4) ](http://www.aropixel.com/)

Sylius Stock Alert Plugin
=========================

[](#sylius-stock-alert-plugin)

### Get notifed when your product stock reaches a certain treshold

[](#get-notifed-when-your-product-stock-reaches-a-certain-treshold)

Table of contents
-----------------

[](#table-of-contents)

- [Presentation](#presentation)
- [Installation](#installation)
- [Usage](#usage)
- [License](#license)

Presentation
------------

[](#presentation)

Once the plugin is installed and configured, you'll be able to define in the admin a stock treshold for each product and / or taxonomy. When inventory levels fall below this threshold (wether with a new order, a stock modification in the admin or a stock treshold modification), notifications will be displayed in the admin dashboard and also sent by emails. Custom notifier can also be implemented easily.

Installation
------------

[](#installation)

In a sylius application :

- Install the plugin : `composer require aropixel/sylius-stock-alert-plugin`

If the plugin is not registered in the config/bundles.php file, register it by adding:

```
Aropixel\SyliusStockAlertPlugin\AropixelSyliusStockAlertPlugin::class => ['all' => true],

```

- Create a aropixel\_sylius\_stock\_alert.yaml in the config folder and import the plugin configuration:

```
imports:
    - { resource: "@AropixelSyliusStockAlertPlugin/Resources/config/app/config.yml" }

```

- Make sure the sylius mailer plugin is configured (in your config/sylius\_mailer.yaml file)
- If you need the emails stock alert, enable it and configure it in the aropixel\_sylius\_stock\_alert.yaml (you can multiple recipients for the emails alerts):

```
aropixel_sylius_stock_alert:
    mail_stock_notifier:
        enabled: true
        recipients: ['david@aropixel.com']

```

- use the ProductVariantTrait in your productVariant Entity

```
...
use Aropixel\SyliusStockAlertPlugin\Entity\ProductVariantTrait as AropixelSyliusStockAlertProductVariantTrait;
...

/**
 * @ORM\Entity
 * @ORM\Table(name="sylius_product_variant")
 */
class ProductVariant extends BaseProductVariant
{
    use AropixelSyliusStockAlertProductVariantTrait {
        AropixelSyliusStockAlertProductVariantTrait::__construct as private __stockAlertTraitConstruct;
    }

    public function __construct()
    {
        $this->__stockAlertTraitConstruct();
        parent::__construct();
    }

...
}

```

- Use the TaxonTrait in your Taxon Entity

```
...
use Aropixel\SyliusStockAlertPlugin\Entity\TaxonTrait as AropixelSyliusStockAlertTaxonVariantTrait;
...

**
 * @ORM\Entity
 * @ORM\Table(name="sylius_taxon")
 */
class Taxon extends BaseTaxon implements Comparable
{
 use AropixelSyliusStockAlertTaxonVariantTrait;
...
}

```

- run the migrations

```
php bin/console doctrine:migrations:diff
php bin/console doctrine:migrations:migrate

```

- install the assets:

`php bin/console assets:install`

Usage
-----

[](#usage)

You can define stock treshold in the product admin ("stock" tab), but also in the taxonomies of the product. The stock treshold in the product have the highest priority: if it's defined, it will not be overrided by the stock treshold of the taxonomy. If the stock treshold of the product is not defined, the plugin will look in all the taxonomies of the product, compare them all and keep only the lowest (the most restrictive stock treshold of the taxonomies).

Everytime the stock or stock treshold changes, the plugin updates the dashboard notifications.

Everytime an order is completed, the plugin will look for all the notifiers implemented (by default only the email notifier), and send the associated notification. The Email notifier is the only one implemented by default in the plugin. If you want to implements other notifier (like SMS etc), you just need to create a class that extends the Aropixel\\SyliusStockAlertPlugin\\StockNotifier\\StockNotifierInterface and implement the sendNotification() method. Your method will be automatically called.

License
-------

[](#license)

Aropixel Blog Bundle is under the [MIT License](LICENSE)

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

8

Last Release

2057d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/4610384?v=4)[Joël Gomez Caballe](/maintainers/kbyjoel)[@kbyjoel](https://github.com/kbyjoel)

---

Top Contributors

[![davidroberto](https://avatars.githubusercontent.com/u/12612695?v=4)](https://github.com/davidroberto "davidroberto (23 commits)")

---

Tags

syliussylius-plugin

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/aropixel-sylius-stock-alert-plugin/health.svg)

```
[![Health](https://phpackages.com/badges/aropixel-sylius-stock-alert-plugin/health.svg)](https://phpackages.com/packages/aropixel-sylius-stock-alert-plugin)
```

###  Alternatives

[bitbag/mailchimp-plugin

MailChimp plugin for Sylius.

4463.9k](/packages/bitbag-mailchimp-plugin)[synolia/sylius-mail-tester-plugin

Mail Tester Plugin.

14142.2k1](/packages/synolia-sylius-mail-tester-plugin)[odiseoteam/sylius-mailchimp-plugin

Plugin for Sylius to add Mailchimp ecommerce features

1015.2k](/packages/odiseoteam-sylius-mailchimp-plugin)[webgriffe/sylius-akeneo-plugin

Plugin allowing to import products data from Akeneo PIM to your Sylius store.

2477.8k](/packages/webgriffe-sylius-akeneo-plugin)[webgriffe/sylius-table-rate-shipping-plugin

Provides table rate shipping calculator.

1490.4k](/packages/webgriffe-sylius-table-rate-shipping-plugin)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
