Stock Alerts

Отправляет письмо при падении остатков товара или варианта ниже порога, с поддержкой бэкордера и публичным полем статуса.

Сообщество 1 1/нед MIT v1.0.0

Установка

pnpm add payload-stock-alerts

Описание

Плагин отслеживает остатки в коллекциях товаров и вариантов и отправляет одно письмо в момент перехода уровня через пороговое значение вниз. Он написан для работы вместе с `@payloadcms/plugin-ecommerce`, но совместим с любой коллекцией, где есть поле `inventory`. Уведомление срабатывает один раз на каждое пересечение порога: при отправке записывается дата в `lowStockNotifiedAt`, а когда остаток снова поднимается выше порога, флаг сбрасывается, что позволяет заново отследить следующее падение. Поскольку официальный плагин ecommerce списывает остатки через `payload.db.updateOne` после подтверждения заказа, а этот вызов обходит хуки коллекций, плагин дополнительно вешает хук `afterChange` на коллекцию заказов. При создании заказа он вычисляет текущий остаток минус количество из строк заказа и уведомляет по этому предсказанному уровню. Хук `beforeValidate` запрещает отрицательный остаток при записях через Payload, но не может заблокировать прямой апдейт в БД от официального плагина, поэтому продажа все еще может опустить сток ниже нуля. В этом случае плагин вернет статус `out-of-stock`. Виртуальное поле `stockStatus` (`in-stock`, `low-stock`, `out-of-stock`, `backorder`) добавляется в каждый документ товара и варианта, чтобы витрина показывала статус бэкордера без дополнительного запроса. Под `/api/stock-alerts` открыты два REST-эндпоинта: `GET /low-stock` возвращает свежий список товаров с низким остатком, а `POST /check` сканирует коллекции и отправляет уведомления для всех, кто ниже порога и еще не помечен. Оба защищены проверкой `isAdmin`, которая по умолчанию проверяет роль `admin`. Письма уходят через `payload.sendEmail`, поэтому плагин использует почтовый адаптер, уже настроенный в проекте. Собственного почтового модуля нет, runtime-зависимостей тоже. Для переопределения на уровне товара доступны поле `lowStockThreshold` и чекбокс `allowBackorder`, а пробелы заполняются настройками на уровне магазина.

О пакете

Имя пакета
payload-stock-alerts
Последняя версия
1.0.0
Размер
36 кБ
Лицензия
MIT
Загрузок в неделю
1
Последняя публикация
21 авг. 2026 г.

Ещё от Poseidonas

Профиль автора

Barcodes

Добавляет штрихкоды Code 128, EAN-13 и QR в коллекции товаров Payload с печатью этикеток и опциональными кнопками в админке.

AI Manager

Плагин Payload для автогенерации товарных описаний, заголовков, атрибутов и переводов через Claude, ChatGPT, Gemini или Kimi с пропуском уже сгенерированного контента.

EU VAT

Рассчитывает НДС ЕС для магазинов на Payload и записывает разбивку по каждому заказу: ставки, реверсивный заряд, проверку VIES и отчёт OSS.

Stock Reservation

Проверяет наличие варианта и цену до оплаты, резервирует остатки до подтверждения и закрывает пробелы чекаута в официальном плагине Payload ecommerce.

Shipping Rates

Добавляет зоны доставки, расчет стоимости и endpoint для quoted в магазинах на @payloadcms/plugin-ecommerce.

Shipping Classes

Добавляет поля веса, размеров и класса доставки в коллекции товаров и вариантов Payload с каноническим хранением в граммах и миллиметрах.