Skip to content
msp3Sberbank
Приём оплаты через Сбербанк для MiniShop3: redirect, callback, чеки 54-ФЗ, одно- и двухстадийная схема, deposit, reverse, refund
  1. Компоненты
  2. msp3Sberbank
  3. Быстрый старт

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

Как принять первый платёж через Сбербанк на сайте с MiniShop3.

Требования

ТребованиеВерсия
MODX Revolution3.0+
PHP8.2+
MiniShop3установлен
pdoTools3.x
Эквайринг Сбербанкалогин -api из вашего договора

Универсальной тестовой пары login/password для всех интеграторов в открытой документации нет. Ключи выдаёт банк после подключения мерчанта.

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

Пакет зашифрован. Без провайдера установка завершится ошибкой Package provider not found.

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

Шаг 2: Ключи API в MODX

  1. Войдите в тестовый личный кабинет мерчанта логином -operator. Карта подключения: чеклист Сбера.
  2. Настройки → API пользователи → пользователь с суффиксом -api → создайте или смените пароль API (показывают ~5 минут, скопируйте сразу).
  3. Настройки → Системные настройки, фильтр msp3sberbank.
  4. Заполните:
    • msp3sberbank_api_url: https://ecomtest.sberbank.ru/ecomm/gw/partner/api/v1/ (со слэшем в конце).
    • msp3sberbank_api_login: логин -api, не -operator.
    • msp3sberbank_api_password: пароль API.

Не используйте старые URL 3dsec.sberbank.ru / securepayments.sberbank.ru. Нужен целевой шлюз ecom.

Подробнее: Системные настройки.

Шаг 3: Callback URL в кабинете Сбербанка

Без callback заказ в MODX не перейдёт в «оплачен» автоматически, если покупатель не вернётся на сайт.

  1. В ЛК мерчанта откройте Настройки → Основные → Callback-уведомления.
  2. Включите callback-уведомления.
  3. Укажите URL (HTTPS, ваш домен): https://ваш-домен.ru/assets/components/msp3sberbank/callback.php
  4. Отметьте операции: для одностадийной минимум deposited; для двухстадийной также approved, reversed, refunded.
  5. Рекомендуется тип подписи симметричный или асимметричный:
    • симметричный токен → msp3sberbank_callback_secret
    • публичный ключ PEM → msp3sberbank_callback_public_key

Детали обработки: Интеграция, callback.

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

Резолвер создаёт два способа:

НазваниеКласс
Оплата через СбербанкMsp3Sberbank\Payment\SberbankPayment
Оплата через Сбербанк (двухстадийная)Msp3Sberbank\Payment\SberbankPreAuthPayment
  1. MiniShop3 → Настройки → Оплаты.
  2. Включите (Активен) нужный способ.
  3. Привяжите способ к доставкам.
  4. Проверьте, что способ доступен на странице оформления заказа.

Шаг 5: Чеки 54-ФЗ

Если в договоре подключена онлайн-касса через банк, включите msp3sberbank_send_order_bundle = «Да» и задайте:

  • msp3sberbank_ffd_version: 1.05 или 1.2
  • msp3sberbank_tax_type: код НДС для всех позиций (tax.taxType)

Компонент передаёт orderBundle в register.do и при двухстадийной схеме в deposit.do. Для фискализации нужен email или телефон покупателя в заказе MiniShop3.

Онлайн-кассу и код группы касс настраивают в СберБизнес или через ТП банка. Без этого шлюз может отклонить bundle даже при корректном JSON.

Шаг 6: Тестовый контур

  1. msp3sberbank_api_url = ecomtest (см. шаг 2).
  2. Учётка -api из вашего тестового договора, не публичное демо.
  3. На время отладки включите msp3sberbank_debug = «Да».
  4. При curl error 60 проверьте сертификаты НУЦ: в пакете есть core/components/msp3sberbank/certs/russian-trusted-chain.pem.

Тестовая карта МИР (актуальный список в OpenAPI ecomtest):

ПолеЗначение
PAN2202 2050 0001 2424
Срок05/35
CVC669

На ecomtest бывают техокна (МСК): примерно 02:00–06:00, 09:00–10:00, 18:00–20:00 в будни.

Шаг 7: Проверка оплаты

  1. Оформите заказ с суммой не меньше 0,01 ₽.
  2. Выберите Оплата через Сбербанк и перейдите к оплате. Откроется форма банка.
  3. После успеха callback выставит заказу статус msp3sberbank_paid_status_id (по умолчанию 2) или ms3_status_paid при paid_status_id = 0.
  4. Проверьте строки [msp3Sberbank] в core/cache/logs/error.log при включённом debug.

Статус не сменился? Проверьте callback URL, HTTPS, ключи -api и FAQ.

Боевой контур

  1. Получите боевые -api / -operator у менеджера банка.
  2. Смените одноразовые пароли на постоянные.
  3. В MODX:
    • msp3sberbank_api_urlhttps://ecommerce.sberbank.ru/ecomm/gw/partner/api/v1/
    • боевые api_login / api_password
  4. В боевом ЛК снова укажите callback URL и подпись.
  5. msp3sberbank_debug = «Нет», контрольный платёж на минимальную сумму.

Что дальше