1. Документация
Rahmat: Интеграция приложений
  • Документация
    • Общие сведения
    • Обзор интеграции
    • Пользовательские сценарии
    • Техническая схема интеграции
    • API-методы
    • Тестирование и запуск
    • Опросник для подключения и запуска
  1. Документация

Обзор интеграции

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

Схема процесса оплаты
Для интеграции с платформой Rahmat Партнер должен:
1.
Предоставить формат Deeplink для перехода на страницу оплаты в мобильном приложении Партнера.
2.
Реализовать в мобильном приложении экран оплаты, на котором Пользователь сможет выбрать карту или счет и подтвердить операцию.
3.
После успешного списания или холдирования денежных средств отправить Callback в Rahmat с результатом платежа.
4.
Предоставить API-методы для:
получения информации о транзакции;
возврата платежа;
сверки транзакций;
приема фискальной ссылки.
5.
При поддержке ScanPay предоставить API-метод для списания денежных средств по QR- или штрихкоду, сформированному в приложении Партнера.
6.
Поддержать два сценария обработки QR-кодов Rahmat:
оплату инвойса без открытия WebView;
открытие платежной страницы Rahmat в WebView.

Deeplink#

Deeplink используется для перехода на экран оплаты в мобильном приложении Партнера. Адрес, формат и набор параметров Deeplink согласовываются с Партнером.
При переходе по ссылке на мобильном устройстве должно открываться приложение Партнера с экраном подтверждения платежа. Пользователь выбирает карту или счет и подтверждает операцию.
Дополнительная информация:
Android App Links;
iOS Universal Links.
Партнер должен предоставить Deeplink в двух форматах:
1.
Universal Link или App Link со схемой https.
2.
Ссылка с собственной URI-схемой, например partner-app://payment.
Rahmat может передавать в Deeplink следующие параметры:
ПараметрОписаниеОбязательность
Сумма платежаСумма, которую необходимо списать с Пользователя (по умолчанию в тыййнах)Да
ID транзакции RahmatУникальный идентификатор платежа в системе RahmatДа
return_urlСсылка для возврата Пользователя в Rahmat после завершения платежаДа
Дополнительные идентификаторы ПартнераДополнительные параметры интеграции, например merchant_id или service_idПо согласованию
Конкретные названия параметров и единица измерения суммы определяются API Партнера.
Пример формирования Deeplink для Click:
Пример приведен для Click. Формат Deeplink, названия параметров и формат суммы могут отличаться для других Партнеров.

Страница оплаты#

Партнер должен реализовать в мобильном приложении страницу оплаты, на которой Пользователь сможет:
увидеть наименование торговой точки;
проверить сумму платежа;
выбрать карту или счет;
подтвердить операцию.
Для отображения дополнительной информации, например наименования мерчанта, логотипа и MCC, необходимо использовать данные, полученные методом проверки платежа в Rahmat.
Пример страницы оплаты:
Пример страницы оплаты
После завершения платежа Партнер должен отобразить результирующую страницу с информацией об успешной операции или ошибке.
На странице успешной оплаты должна присутствовать кнопка «Вернуться», открывающая переданный Rahmat параметр return_url во внешнем браузере.
Пример страницы успешной оплаты:
Пример страницы успешной оплаты

Сканирование QR-кода в приложении#

Для сканирования QR-кодов Rahmat, из содержимого QR-кода необходимо извлечь URL и проверить его перед дальнейшей обработкой.
Разрешенные домены:
app.rhmt.uz;
l.rhmt.uz;
l.multicard.uz;
link.multicard.uz;
tips.multicard.uz.
Проверка должна выполняться по точному значению host URL. Нельзя проверять домен только по наличию подстроки в адресе.
Поддерживаются два сценария.

Сценарий 1. Оплата инвойса без открытия WebView#

Если ссылка соответствует формату:
https://app.rhmt.uz/invoice/{invoice_uuid}
оплату можно провести без открытия WebView.
Пример:
https://app.rhmt.uz/invoice/d5485789-ee4b-11f0-9a1b-00505680eaf6
Партнер должен:
1.
Извлечь {invoice_uuid} из URL.
2.
Запросить информацию об инвойсе методом «Проверка платежа в Rahmat», передав полученное значение в поле invoice_uuid.
3.
Проверить статус инвойса.
4.
Если статус равен draft, отобразить экран оплаты и предложить Пользователю подтвердить операцию.
5.
После успешного списания отправить Callback в Rahmat.
При обработке ответа необходимо учитывать следующее:
оплачивать можно только инвойс в статусе draft;
для списания необходимо использовать сумму из поля total_amount;
значение поля id необходимо передать в Callback как rahmat_trans_id;
если инвойс не найден или имеет другой статус, списание выполнять нельзя — Пользователю необходимо показать ошибку.

Сценарий 2. Открытие платежной страницы в WebView#

Если ссылка не соответствует формату динамического инвойса, ее необходимо открыть в WebView.
При открытии страницы приложение Партнера должно передать заголовок User-Agent, содержащий название и версию приложения, операционную систему и ее версию.
Пример:
На странице Rahmat Пользователь при необходимости выбирает сумму, размер чаевых или другие параметры и нажимает кнопку «Оплатить».
После этого Rahmat перенаправляет Пользователя по согласованному Deeplink. Приложение Партнера должно обработать переход, открыть страницу оплаты и предложить Пользователю подтвердить операцию.
Modified at 2026-08-24 09:59:53
Previous
Общие сведения
Next
Пользовательские сценарии
Built with