credit-cardWorkflow payment

При использовании платёжной системы MartPay существуют определённые ограничения на приём платежей. Ключевая особенность заключается в том, что зачисление средств на расчётный счёт происходит не сразу: на этапе обработки банк имеет право отменить ранее инициированную транзакцию.

Подобные ситуации возникают нечасто, однако именно этот механизм используется мошенниками. Они инициируют платёж, средства временно отображаются в приложении мерчанта, после чего банк отзывает транзакцию и возвращает деньги плательщику. За это время злоумышленники успевают вывести средства из приложения, что приводит к финансовым потерям для мерчанта.

Предлагаемый процесс обхода ограничений

Для снижения рисков, связанных с возможной отменой транзакций, применяется поэтапная схема подтверждения платежей.

  1. Создание платёжной ссылки

При формировании платёжной ссылки ордер в нашей системе не создаётся при вызове метода: POST https://api.martpay.net/api/v2/pis/payment

На данном этапе заказ отсутствует в системе и имеет статус NOT_FOUND.


  1. Инициация платежа

После того как пользователь переходит в платёжную систему, транзакция получает статус IN_PROGRESS.


  1. Частичное подтверждение платежа

После получения уведомления от Банка об успешном прохождении транзакции устанавливается статус ACCEPTED_SETTLEMENT_IN_PROCESS. Одновременно с этим отправляется webhook с информацией об обновлении статуса транзакции.

На этом этапе разрешено зачисление средств на баланс пользователя и в приложение мерчанта, однако отправка товаров и вывод средств пока недоступны.

ACCEPTED_SETTLEMENT_IN_PROCESS — транзакция может перейти в CANCELED, при этом средства возвращаются на банковский счёт пользователя.


  1. Полное подтверждение платежа

После получения окончательного подтверждения успешного проведения транзакции статус меняется на COMPLETED, а webhook-уведомление отправляется повторно.

❗️Важно❗️

triangle-exclamation

Последнее обновление