UniRate

Плагин Payload CMS v3 для интеграции с API курсов валют и НДС UniRate: четыре серверных эндпоинта и поле выбора валюты.

Сообщество 0 6/нед MIT v0.1.0

Установка

pnpm add payload-plugin-unirate

Описание

Плагин добавляет в Payload CMS v3 четыре серверных GET-эндпоинта по пути `/api/unirate`: получение курса, конвертация суммы, список поддерживаемых валют и ставки НДС. Ключ API хранится только на сервере и не передается в браузер. Клиент обращается к вашим эндпоинтам Payload, а не к UniRate напрямую. Подключение выполняется через массив `plugins` в `payload.config.ts`. Ключ передается в опции `apiKey` или через переменную окружения `UNIRATE_API_KEY`. Остальные опции: `baseUrl` (по умолчанию `https://api.unirateapi.com`), `disabled` и `timeoutMs` (по умолчанию 30000). Если ключ не задан, эндпоинты возвращают `503` вместо ошибки при запуске. Ошибки UniRate мапятся на HTTP-статусы 400, 401, 403, 404, 429, 502. Плагин экспортирует хелпер `currencyField`: это поле `select` с предзаполненным списком стандартных кодов валют ISO-4217. Список можно переопределить или получить актуальные данные через `/api/unirate/currencies`. Это удобно, например, для указания валюты цены товара. Также доступны `UniRateClient` и типизированные классы ошибок (`AuthenticationError`, `RateLimitError`, `ProRequiredError`), чтобы вызывать API напрямую из хуков или кастомных эндпоинтов. Бесплатный тариф включает курсы, конвертацию, список валют и НДС. Исторические данные и временные ряды требуют подписки Pro. У плагина нулевые зависимости на этапе выполнения (payload устанавливается как peer), он написан на TypeScript и протестирован с помощью vitest. Требуется Payload 3.0.0 или новее и Node 18.20 или новее.

О пакете

Имя пакета
payload-plugin-unirate
Последняя версия
0.1.0
Размер
49 кБ
Лицензия
MIT
Загрузок в неделю
6
Последняя публикация
29 июл. 2026 г.

Похожие плагины

Ещё в категории «Поля»

Shared plugin tooling

Dev-зависимость с общими конфигами lint, форматирования, TypeScript, сборки, тестовой БД и релиза для плагинов Payload.

JSON Form Builder

Редактирует json-поле Payload как обычные админ-поля и строит форму в выдвижной панели без миграций.

Menus

Добавляет коллекцию `menus` в Payload CMS для управления навигацией сайта с вложенными элементами, ссылками на коллекции, произвольными URL, иконками и картинками предпросмотра.

Icon Picker

Добавляет поле выбора иконок для Payload CMS с поддержкой поиска и SVG.

Barcodes

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

Shipping Classes

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