Coupons
Купоны с процентными и фиксированными скидками, лимитами использования и периодами действия для корзин и заказов в Payload ecommerce.
Установка
pnpm add payload-coupons Описание
Плагин добавляет купоны со скидками в магазин на Payload ecommerce. Создаётся коллекция `coupons` с поддержкой процентов и фиксированных сумм, ограничением области действия (вся корзина, отдельные товары, категории), исключениями товаров и категорий, минимальной и максимальной суммой корзины в разрезе валют, периодом действия и лимитами использования (общий и на покупателя). Скрытая коллекция `coupon-redemptions` хранит по одному документу на каждый факт применения купона. К коллекциям корзин и заказов добавляются поле `discount` и поле `total`, так что в корзине сохраняется `subtotal` рядом со итоговой суммой с учётом скидки. Все суммы хранятся целыми числами в минорных единицах, без чисел с плавающей точкой. Проценты указываются в базисных пунктах, а распределение по строкам корзины считается через `BigInt`, поэтому части всегда сходятся к общей сумме и ни одна строка не получает больше, чем положено. Плагин работает с `@payloadcms/plugin-ecommerce` и любыми коллекциями для корзин и заказов, с переопределением slug для корзин, заказов, товаров, вариантов, категорий и покупателей. Поля связей добавляются только для тех коллекций, которые есть в конфиге: если в магазине нет коллекции `categories`, в купонах просто не будет области действия по категориям, а не сломанная конфигурация. Доступны три REST-эндпоинта: `POST /coupons/validate` проверяет код применительно к корзине без его использования, `POST /carts/:id/apply-coupon` привязывает код, а `POST /carts/:id/remove-coupon` снимает его. Если код нельзя использовать, ответ содержит стабильный машинно-читаемый код причины (`EXPIRED`, `MINIMUM_NOT_MET`, `USAGE_LIMIT_REACHED`, `CUSTOMER_LIMIT_REACHED`, `NO_ELIGIBLE_ITEMS` и другие). Фронтенд должен ориентироваться на этот код, а не на текст. При создании заказа плагин фиксирует использование купона и связывает его с заказом. Опция `refuseOrderOnInvalidCoupon` может выбрасывать ошибку вместо сохранения заказа без скидки. Расчётная логика экспортируется как `computeDiscount`, `allocate`, `percentageOf` и `toBasisPoints`, а `normalizeCode` приводит код к верхнему регистру и обрезает пробелы так же, как плагин, чтобы фронтенд мог показать распределение скидки ещё до сохранения корзины. Пакет не имеет runtime-зависимостей и кастомных админ-компонентов, поэтому остаётся стабильным при обновлениях Payload. Требуется Payload 3.50 или новее (peer-диапазон `>=3.50 <4`) и Node 20 или выше.
О пакете
- Имя пакета
payload-coupons- Последняя версия
1.0.1- Размер
- 64 кБ
- Лицензия
- MIT
- Загрузок в неделю
- 4
- Последняя публикация
- 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.
Stock Alerts
Отправляет письмо при падении остатков товара или варианта ниже порога, с поддержкой бэкордера и публичным полем статуса.
Shipping Rates
Добавляет зоны доставки, расчет стоимости и endpoint для quoted в магазинах на @payloadcms/plugin-ecommerce.
Похожие плагины
Ещё в категории «Коммерция»Product Reviews
Плагин добавляет в Payload v3 коллекцию reviews с оценкой от 1 до 5, модерацией статусов и данными aggregateRating для Google.
Stripe
Связывает коллекции Payload с ресурсами Stripe, обрабатывает webhook-события и проксирует вызовы API.
Tpay E-commerce Payment Adapter
Платёжный адаптер Tpay для @payloadcms/plugin-ecommerce: BLIK, банковские переводы и карты с проверкой вебхуков и учётом склада.
Google Merchant Center Ecommerce Integration
Синхронизируйте продукты из Payload CMS с Google Merchant Center.