Skip to content
msp3WebPay
Приём оплаты через WEBPAY для MiniShop3: карта, ERIP, холд, webhook и возврат покупателя
  • MODX 3
  • PHP 8.2
  • miniShop3
  1. Компоненты
  2. msp3WebPay
  3. Быстрый старт

Быстрый старт ​

Требования ​

ТребованиеВерсия
MODX Revolution3.0+
MiniShop31.14.0-beta1 и новее
PHP8.2+
pdoTools3.0.0 и новее
Доступномер магазина, секретный ключ, логин и пароль кабинета
СайтHTTPS на webhook без 301 (требование кабинета WEBPAY)

Примеры номеров магазина из тестов пакета в настройки сайта не копируйте.

Шаг 1: Провайдер modstore и установка пакета ​

  1. Система → Управление пакетами → Провайдеры → добавьте modstore.pro:
    • URL: https://modstore.pro/extras/
    • Email и API-ключ из личного кабинета modstore.pro
  2. Убедитесь, что установлен MiniShop3.
  3. Управление пакетами → установите msp3WebPay (в Show Details укажите провайдер modstore.pro).
  4. Управление → Очистить кэш.

Резолвер создаёт три активных способа:

НазваниеКласс
Оплата через 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.bymsp3webpay_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 ​

  1. Настройки → Системные настройки, фильтр msp3webpay.
  2. Вставьте номер магазина и секрет из тестового кабинета.
  3. После сохранения: Управление → Очистить весь кеш.

Список полей: Системные настройки.

Шаг 3: URL уведомления ​

В кабинете WEBPAY укажите:

text
https://ваш-домен.ru/assets/components/msp3webpay/webhook.php

HTTPS без 301. В заявке на оплату пакет сам передаёт wsb_notify_url на этот адрес. Адрес в кабинете всё равно задайте.

Покупатель возвращается на return.php. Эта страница статус заказа не ставит.

Шаг 4: Способ оплаты в MiniShop3 ​

  1. В админке MiniShop3 откройте Настройки → Оплаты.
  2. Включите Оплата через WebPay (карта), Оплата через WebPay (ERIP) или Оплата через WebPay (двухстадийная).
  3. Привяжите способ к доставке.

Шаг 5: Боевой режим ​

  1. Замените msp3webpay_store_id на боевой номер из письма менеджера.
  2. Задайте секрет в боевом кабинете billing.webpay.by: Настройки → Компания.
  3. Выключите msp3webpay_test. Страница оплаты будет payment.webpay.by.
  4. Пропишите webhook из шага 3.
  5. Оплата должна уходить с домена, который указан в договоре. Поддомен WEBPAY считает отдельным сайтом.
  6. Выключите msp3webpay_debug.

Холд не делает заказ оплаченным, пока не спишете его во вкладке заказа.