- MODX 3
- PHP 8.2
- miniShop3
Быстрый старт
Как принять первый платёж через Prodamus на сайте с MiniShop3.
Требования
| Требование | Версия |
|---|---|
| MODX Revolution | 3.0+ |
| MiniShop3 | 1.14.0-beta1 и новее |
| PHP | 8.2+ |
| Кабинет | URL страницы payform и секрет со страницы настроек |
| Сайт | HTTPS на webhook без 301 |
В заказе нужен email или телефон. Без телефона Prodamus покажет предварительную форму.
Шаг 1: Провайдер modstore и установка пакета
- Система → Управление пакетами → Провайдеры → добавьте modstore.pro:
- URL:
https://modstore.pro/extras/ - Email и API-ключ из личного кабинета modstore.pro
- URL:
- Убедитесь, что установлен MiniShop3.
- Управление пакетами → установите msp3Prodamus (в Show Details укажите провайдер modstore.pro).
- Управление → Очистить кэш.
Резолвер создаёт способ Оплата через Prodamus, класс Msp3Prodamus\Payment\ProdamusPayment.
Секрет и URL страницы положите в msPayment.properties (secret или secret_key, payform_url). Если properties пусты, пакет читает системные настройки.
Заказ дешевле 1 копейки пакет на оплату не отправляет.
Откуда брать ключи
Демо-страница описана в шаге 3. Ниже путь для своей платёжной страницы.
URL страницы
msp3prodamus_payform_url это адрес страницы, с которой покупатель платит. Скопируйте его из адресной строки. Обычно это https://имя.payform.ru/.
HMAC считается секретом именно этой страницы. Секрет другой страницы, в том числе демо, к ней не подойдёт.
Секретный ключ
- Войдите на платёжную страницу как владелец. Как войти, Prodamus описывает в инструкции к шагу ниже.
- Нижнее меню: Настройки.
- Скопируйте секретный ключ в
msp3prodamus_secret_key. В properties способа то же значение можно положить вsecretилиsecret_key.
Новый ключ на этой странице не генерируется. Его выдаёт поддержка Prodamus. Поля и кнопка сохранения URL: где найти секрет и URL уведомлений.
msp3prodamus_test_mode = Да только добавляет в ссылку demo_mode=1. Секрет HMAC от этого не меняется.
Если на стороне Prodamus у страницы выключен боевой режим, подпись считают другим ключом, с суффиксом demo. Такой webhook не должен проходить как боевой.
Код sys
msp3prodamus_sys это код вашей интеграции. Его согласуют с поддержкой Prodamus. У всех магазинов одной интеграции код один и тот же.
Без sys пакет не передаёт urlNotification, и Prodamus не примет URL из запроса. Описание параметра: самостоятельная интеграция.
URL уведомлений
На странице Настройки, поле Настройка уведомлений:
https://ваш-домен.ru/assets/components/msp3prodamus/webhook.phpНажмите сохранить. HTTPS, без Basic Auth и без 301. HTTP на *.test часто отвечает 301, и тело POST пропадает.
Переход покупателя на urlSuccess заказ не оплачивает. Оплату подтверждает только webhook с верным заголовком Sign.
Шаг 2: Куда вписать в MODX
- Настройки → Системные настройки, фильтр
msp3prodamus. - Либо properties способа:
payform_url,secretилиsecret_key, при необходимостиsys. Непустые properties перекрывают системные настройки. - Очистите кеш MODX.
Список полей: Системные настройки.
Шаг 3: Демо-страница
https://demo.payform.ru/. Секрет демо-формы лежит в примере кода в статье про самостоятельную интеграцию. Доступ к демо менеджеры Prodamus выдают по запросу.
В MODX для проверки:
msp3prodamus_payform_url:https://demo.payform.ru/msp3prodamus_secret_key: секрет из той статьиmsp3prodamus_test_mode: Да, если нужна ссылка сdemo_mode=1
Шаг 4: Способ оплаты в MiniShop3
- В админке MiniShop3 откройте Настройки → Оплаты.
- Включите Оплата через Prodamus.
- Привяжите способ к сценарию оформления заказа.
Отдельного двухстадийного способа нет.
Шаг 5: Боевой режим
- Своя страница payform и секрет с её страницы Настройки.
msp3prodamus_test_mode= Нет, если не хотитеdemo_mode=1в ссылке.- Код
sys, если уведомление должно уходить на URL из запроса. - URL в поле Настройка уведомлений сохранён.
- Контрольный платёж. Проверьте HTTP 200 и текст
success, попыткуpaid. - Выключите
msp3prodamus_debug.
