- MODX 3
- PHP 8.2
- miniShop3
Быстрый старт
Требования
| Требование | Версия |
|---|---|
| MODX Revolution | 3.0+ |
| MiniShop3 | 1.14.0-beta1 и новее |
| PHP | 8.2+ |
| pdoTools | 3.0.0 и новее |
| Доступ | номер магазина, секретный ключ, логин и пароль кабинета |
| Сайт | HTTPS на webhook без 301 (требование кабинета WEBPAY) |
Примеры номеров магазина из тестов пакета в настройки сайта не копируйте.
Шаг 1: Провайдер modstore и установка пакета
- Система → Управление пакетами → Провайдеры → добавьте modstore.pro:
- URL:
https://modstore.pro/extras/ - Email и API-ключ из личного кабинета modstore.pro
- URL:
- Убедитесь, что установлен MiniShop3.
- Управление пакетами → установите msp3WebPay (в Show Details укажите провайдер modstore.pro).
- Управление → Очистить кэш.
Резолвер создаёт три активных способа:
| Название | Класс |
|---|---|
| Оплата через WebPay (карта) | Msp3WebPay\Payment\WebPayPayment |
| Оплата через WebPay (ERIP) | Msp3WebPay\Payment\WebPayEripPayment |
| Оплата через WebPay (двухстадийная) | Msp3WebPay\Payment\WebPayTwoStagePayment |
Откуда брать ключи
| Что | Откуда | В MODX |
|---|---|---|
Номер магазина (wsb_storeid) | Письмо менеджера WEBPAY после регистрации | msp3webpay_store_id |
| Логин и пароль кабинета | То же письмо. Тестовый кабинет: sandbox.webpay.by. Боевой: billing.webpay.by | msp3webpay_api_username, msp3webpay_api_password |
| Секретный ключ | Задаёте сами. Путь из документации WEBPAY: Настройки → Компания | msp3webpay_secret_key |
Кабинеты: среда разработки.
В поле кабинета WEBPAY нельзя ставить &. Пакет это правило не проверяет. Пакет подписывает заявку и проверяет webhook ключом из properties (secret_key или secret), иначе msp3webpay_secret_key.
Для списания холда, отмены и возврата пакет входит в кабинет отдельно. Без логина и пароля кнопки во вкладке заказа не работают.
В properties способа можно положить store_id, secret_key, secret, api_username, api_password, currency, test. Непустые properties перекрывают системные настройки в оплате, webhook, списании, отмене и возврате.
Валюта: BYN, USD, EUR или RUB. Это ожидание WEBPAY. Пакет отправит любое значение из настройки или properties. После установки msp3webpay_test уже включена (true) и выбирает хост страницы оплаты. Для боя выключите её на шаге 5. Ключ msp3webpay_test_mode из старого резолвера пакет не читает и песочницу не включает.
Шаг 2: Куда вписать в MODX
- Настройки → Системные настройки, фильтр
msp3webpay. - Вставьте номер магазина и секрет из тестового кабинета.
- После сохранения: Управление → Очистить весь кеш.
Список полей: Системные настройки.
Шаг 3: URL уведомления
В кабинете WEBPAY укажите:
https://ваш-домен.ru/assets/components/msp3webpay/webhook.phpHTTPS без 301. В заявке на оплату пакет сам передаёт wsb_notify_url на этот адрес. Адрес в кабинете всё равно задайте.
Покупатель возвращается на return.php. Эта страница статус заказа не ставит.
Шаг 4: Способ оплаты в MiniShop3
- В админке MiniShop3 откройте Настройки → Оплаты.
- Включите Оплата через WebPay (карта), Оплата через WebPay (ERIP) или Оплата через WebPay (двухстадийная).
- Привяжите способ к доставке.
Шаг 5: Боевой режим
- Замените
msp3webpay_store_idна боевой номер из письма менеджера. - Задайте секрет в боевом кабинете billing.webpay.by: Настройки → Компания.
- Выключите
msp3webpay_test. Страница оплаты будетpayment.webpay.by. - Пропишите webhook из шага 3.
- Оплата должна уходить с домена, который указан в договоре. Поддомен WEBPAY считает отдельным сайтом.
- Выключите
msp3webpay_debug.
Холд не делает заказ оплаченным, пока не спишете его во вкладке заказа.
