Razorpay Adapter

Платежный адаптер для @payloadcms/plugin-ecommerce, добавляющий Razorpay: создание заказа, проверка оплаты, запись транзакций.

Сообщество 0 7/нед v1.0.2

Установка

pnpm add @codenik/payload-razorpay

Описание

Адаптер подключает Razorpay к официальному плагину коммерции Payload. Он реализует интерфейс PaymentAdapter, который ожидает @payloadcms/plugin-ecommerce, и регистрируется в `ecommercePlugin({ payments: { paymentMethods: [razorpayAdapter({...})] } })` рядом с другими провайдерами. Метод `initiatePayment` вызывает Orders API Razorpay, создает заказ и сохраняет его идентификатор вместе с плоским снимком корзины в Payload-транзакции. Идентификатор возвращается на фронтенд. После завершения оплаты в Razorpay Checkout метод `confirmOrder` получает данные платежа через SDK Razorpay, проверяет статус `captured`, затем создает заказ в Payload, помечает корзину как купленную и обновляет статус транзакции на `succeeded`. Для вебхуков регистрируется эндпоинт `POST /webhooks`, но его обработчик заглушен: возвращает 200 и не проверяет подпись Razorpay, поэтому серверная сверка через вебхуки не настроена. Серверный адаптер принимает `publishableKey` и `secretKey`, а клиентский хелпер `razorpayAdapterClient` получает `publishableKey`. Для открытия модального окна чекаута на фронтенде README рекомендует отдельную библиотеку `react-razorpay`, так как сам адаптер отвечает только за серверный жизненный цикл. Пакет поставляется в ESM-формате с типами TypeScript и рассчитан на Node.js 20+ и Next.js 15+. Для работы нужны payload ^3.85.1, @payloadcms/plugin-ecommerce ^3.85.1 и react ^19.

О пакете

Имя пакета
@codenik/payload-razorpay
Последняя версия
1.0.2
Размер
35 кБ
Загрузок в неделю
7
Последняя публикация
6 авг. 2026 г.