Создание платежа по карте
Мы работаем только через POST-запросы
Пользователь оформляет заказ. Заказ выгружается в систему клиента через webhook. Заказу присваивается номер.
Пользователь видит экран подтверждения заказа. Пользователь нажимает кнопку "перейти к оплате"
IMSHOP.IO делает запрос в webhook управления оплатами на создание платежа. В ответ должны быть переданы:
Идентификатор платежа из платежного шлюза
URL для перенаправления пользователя для ввода данных карты (это должен быть URL, выданный платежной системой, а не URL ведущий на сайт)
Регулярное выражение для определения
success
/failure
сценариев по URL, на который платежная система перенаправит пользователя
В мобильном приложении отображается экран оплаты с вводом карты для оплаты
Пользователь вводит данные карты / код 3dsec из смс
Приложение определяет при помощи регулярного выражения, что сценарий оплаты отработал до конца
IMSHOP.IO делает запрос в webhook управления оплатами на проверку статуса оплаты
Система клиента связывается с платежной системой и проверяет оплату. Далее, если оплата не прошла, webhook должен вернуть ошибку. Если платеж успешно принят, система клиента инициирует списывание средств, и возвращает через webhook, что платеж прошел успешно.
IMSHOP.IO помечает заказ как оплаченный
Пример запроса
Описание запроса
command
- запрос на создание оплаты (create
)paymentMethodId
- выбранный покупателем способ оплаты. Берется из ответа webhook получения способов оплатorderUuid
- внутренний номер заказа в IMSHOP.IOorderId
- внешний номер заказа в системе клиентаreturnUrl
- ссылка на возврат в приложение в случае отмены оплаты
Пример ответа
Описание ответа
success
- флаг успехаtrue
/false
paymentId
- идентификатор платежаpaymentUrl
- URL для оплаты мы также поддерживаем передачу нескольких платежных ссылок для случаев, когда оплата производится через приложение банка и необходимо выбрать ссылку в зависимости от установленного приложения. в этом случае список поле необходимо назватьpaymentUrls
и передать в нем список URLsuccessRegex
- регулярное выражение для проверки редиректа на успехfailureRegex
- регулярное выражение для проверки редиректа при не принятой карте
Пример ответа для нескольких ссылок оплаты (в разработке)
После закрытия экрана эквайринга уйдет запрос на проверку статуса платежа
Проверка статуса оплаты
Пример запроса
command
- запрос на проведение платежа и проверку факта списания (capture
)paymentMethodId
- выбранный покупателем способ оплаты. Берется из ответа webhook получения способов оплатpaymentId
- Идентификатор платежа
Пример ответа
success
- флаг успехаtrue
/false
paymentId
- идентификатор платежаpending
- true-запрашиваем повторную проверку оплат/ false- не запрашиваем проверку оплатыpaymentCaptured
- деньги успешно списаныerror
- текст ошибки еслиsuccess
=false
Last updated