InSales подключается не плагином, а небольшим сервисом-посредником на Node.js: магазин отправляет покупателя на его адрес, сервис создаёт платёж в MulenPay, а после оплаты сам проводит транзакцию по заказу в InSales.
Как устроен поток
- Покупатель оформляет заказ и выбирает способ оплаты MulenPay.
- InSales перенаправляет его на адрес
/payments/payвашего сервиса с параметрами заказа. - Сервис создаёт платёж в MulenPay и перенаправляет покупателя на страницу оплаты.
- После оплаты MulenPay отправляет уведомление на
/webhooks/mulenpay. - Сервис создаёт транзакцию по соответствующему заказу в InSales.
Связь платежа с заказом держится на идентификаторе заказа InSales — он передаётся в поле uuid при создании платежа.
Что нужно для запуска
- Сервер с Node.js 18 или новее, доступный из интернета по HTTPS.
- Доступы к API MulenPay: ключ, идентификатор магазина и секрет для подписи.
- Доступы к API InSales: домен магазина, ключ и пароль приложения.
Что учесть
Сервис — отдельное приложение, а не расширение магазина: его нужно где-то держать и следить за доступностью. Если он ляжет, покупатели не смогут перейти к оплате, а уведомления об уже прошедших платежах не дойдут до заказов.
Для сценариев попроще посмотрите платёжный API напрямую или платёжные ссылки — они не требуют своего сервера.