После приема оплаты от клиента или при невозможности совершить платеж FreedomPay вызывает Result URL магазина и передает на него методом Request Method информацию о результате платежа.
При получении данного запроса мерчант должен произвести необходимые действия для передачи товара или услуги покупателю, в случае если платеж был успешным. Если
pg_can_reject равно 1 и мерчант не может принять платеж (например, бронь на билеты истекла), он обязан ответить со статусом
rejected, и FreedomPay отзовет платеж. В этом случае поле
pg_description из ответа мерчанта показывается пользователю как причина отказа.
Result URL на стороне мерчанта должен быть общедоступным, без авторизации.
Если сервер мерчанта недоступен в момент вызова
Result URL или ответ от сервера был не со статусом 200, FreedomPay будет предпринимать повторные попытки его вызвать каждые полчаса в течение 2 часов, даже если время жизни счета
pg_lifetime истечет.
Если первая попытка вызова Result URL оказалась неуспешной, то платеж не отменяется, и в последующих вызовах
Result URL не позволяет магазину отказаться от платежа.
Магазин должен быть готов к тому, что Result URL будет вызван повторно для одного и того же платежа. Ответы на повторные вызовы должны совпадать с первоначальным ответом, даже если время жизни транзакции
pg_lifetime истекло.
Ответ на result_url от мерчанта
Статус
rejected может быть возвращен мерчантом только в случае, когда во входящем запросе от гейта был указан параметр
pg_can_reject равный
1, в противном случае, вне зависимости от ответа мерчанта, платеж будет считаться совершенным. Если мерчант отказался от платежа (ответил rejected), покупатель перенаправляется на
Failure URL, иначе – на
Success URL.
- ok - платеж принят
- rejected - отказ от платежа случае если pg_can_reject равен 1
- error - ошибка в интерпретации данных
URL запроса
POST {{result_url}}