Skip to content
msp3Prodamus
Приём оплаты через Prodamus для MiniShop3: ссылка payform, webhook Sign, чеки 54-ФЗ
  • MODX 3
  • PHP 8.2
  • miniShop3
  1. Компоненты
  2. msp3Prodamus
  3. Интеграция и сценарии

Интеграция msp3Prodamus

Шаги установки: Быстрый старт. Двухстадийки у Prodamus нет.

Webhook

В кабинете один URL на страницу:

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

HTTPS без Basic Auth и без 301. HTTP на *.test часто отвечает 301.

Prodamus шлёт multipart/form-data. Подпись в заголовке Sign. Пакет считает HMAC-SHA256 по полям уведомления и секрету страницы.

ОтветКогда
HTTP 200, successподпись верна, событие разобрано
HTTP 401, error: signature incorrectневерный секрет или поля
HTTP 400, error: emptyпустое тело

JSON-маршрут ядра MiniShop3 для form POST не подходит.

payment_statusПопытка
Success / successpaid
Order_canceledcancelled
Order_deniedfailed
refund / refunded / order_refundedrefunded

order_num в уведомлении должен совпасть с external_id попытки (тот order_id, который пакет отправил при создании ссылки). order_id в webhook это номер в кабинете Prodamus, пишется в payload.

Если боевой режим страницы выключен на стороне Prodamus, подпись считают другим ключом (суффикс demo). Такой webhook не должен проходить как боевой.

Повторную отправку можно нажать в кабинете: Список платежей → URL-оповещения.

Как проходит оплата

payment_id и external_id это {orderId}-{hex}. Валюта в ответе ядру в верхнем регистре (RUB).

В запрос уходит do=link, корзина products, urlSuccess, urlReturn, _param_msorder (uuid заказа). Если задан sys, пакет добавляет urlNotification на свой webhook.php.

События: msp3ProdamusOnPrepareReceiptItem, msp3ProdamusOnProviderEvent. Секрет и Sign в лог не попадают. Строки лога начинаются с [msp3Prodamus].

Заказ дешевле 1 копейки пакет на оплату не отправляет.

Чеки 54-ФЗ

При включённом msp3prodamus_payment_receipt в каждую позицию products уходят tax, paymentMethod, paymentObject. Товары заказа и доставка, если delivery_cost > 0. Без флага чека в ссылку всё равно уходит список товаров с именем, ценой и количеством.

Вкладка заказа

ДействиеЧто происходит
СинхронизироватьТекст: у Prodamus нет API статуса. Актуальный статус приходит webhook
ВозвратТекст: оформите заявку в кабинете
ОтменитьТекст: покупатель закрывает страницу или ждёт отказ