Uniteller

Продукт: Shelter Cloud | Уровень: Shelter | Статус: Stable

ID системы: 11

Описание

Интеграция с платёжной системой Uniteller для приёма онлайн-платежей. Поддерживает фискализацию чеков по 54-ФЗ.

Настройка в Shelter Cloud

Параметры учётной записи настраиваются через PrivateSettings:

Параметр Описание
Shop_IDP Идентификатор магазина
Password Пароль для подписи
URL_RETURN URL возврата
URL_RETURN_OK URL успешной оплаты
URL_RETURN_NO URL неуспешной оплаты
CASHIER_NAME Имя кассира
CASHIER_INN ИНН кассира
TAX_MODE Система налогообложения: 0 (ОСН), 1 (УСН доход), 2 (УСН доход-расход), 3 (ЕНВД), 4 (ЕСН), 5 (Патент)
LINE_VAT НДС: 0 (без НДС), 10, 18, 20
Receipt Формировать фискальный чек (true / false)

Конфигурация сервиса (appsettings.json)

Параметр Описание
IPWhiteList Список разрешённых IP для callback. Доступ: отдел разработки

API Endpoints

Платёжная страница

Среда URL
Production https://wpay.uniteller.ru/pay/
Fiscal https://fpay.uniteller.ru/v2/pay/

Callback

URL для callback: https://cloud.shelter.ru/Uniteller/Default.aspx

Алгоритм подписи

Подпись запроса на оплату

Алгоритм: MD5

Signature = MD5(
  MD5(Shop_IDP) + "&" +
  MD5(Order_IDP) + "&" +
  MD5(Subtotal_P) + "&" +
  MD5(Password)
).toUpperCase()

Подпись фискального чека

Алгоритм: SHA256

ReceiptSignature = SHA256(
  SHA256(Shop_IDP) + "&" +
  SHA256(Order_IDP) + "&" +
  SHA256(Subtotal_P) + "&" +
  SHA256(Receipt) + "&" +
  SHA256(Password)
).toUpperCase()

Процесс оплаты

  1. Клиент нажимает «Оплатить»
  2. Получение данных брони и строк чека
  3. Формирование подписи (Signature)
  4. Редирект на wpay.uniteller.ru/pay/
  5. Оплата клиентом
  6. Uniteller отправляет callback
  7. Запись платежа

Параметры запроса на оплату

Параметр Описание
Shop_IDP Идентификатор магазина
Order_IDP Номер заказа
Subtotal_P Сумма платежа
Signature Подпись (MD5)
Currency Валюта (RUB по умолчанию)
Email Email клиента
Comment Комментарий к платежу
Receipt Фискальный чек (Base64 JSON)
ReceiptSignature Подпись чека (SHA256)

Коды систем налогообложения (taxmode)

Код Описание
0 ОСН
1 УСН (Доход)
2 УСН (Доход минус расход)
3 ЕНВД
4 ЕСН
5 Патент

Поддерживаемые валюты

Код Валюта
RUB Российский рубль
USD Доллар США
EUR Евро

Мониторинг (Zabbix)

Health check URL: https://cloud.shelter.ru/Uniteller/

Логирование

Все события логируются в Graylog (channel: Uniteller).

Примеры сообщений при callback

Получен callback:

Оплата: POST /Uniteller/Default.aspx Order_IDP=12345&Subtotal_P=5000.00&Status=Success

Успешная оплата:

Оплата успешно: 100

Ошибка подписи:

Ошибка оплаты: подпись не совпадает

Устранение неполадок

Ошибка «Неверная подпись»

Решение:

  1. Проверьте порядок параметров в подписи
  2. Убедитесь, что все пустые параметры включены
  3. Проверьте кодировку (UTF-8)

Фискальный чек не приходит

Решение:

  1. Проверьте формат JSON чека
  2. Убедитесь, что Receipt закодирован в Base64
  3. Проверьте ReceiptSignature (алгоритм SHA256)

Ошибка получения данных брони

Решение:

  1. Проверьте идентификаторы в URL
  2. Убедитесь, что бронь не аннулирована

Связанная документация