URL сервисов оплаты
- Для работы с QiwiPay WPF необходимо делать редирект покупателя на URL:
Возможны два сценария платежа:
- Одношаговый – операция
sale
- Двухшаговый – операция
auth
-{amp}gt; операцияcapture
Как правило, двухшаговый сценарий используется в том случае, когда ТСП проводит проверку возможности оказания услуги после факта оплаты. Т.к. после операции auth и до совершения операции capture можно сделать операцию reversal, которая не является финансовой.
Для операции sale также можно делать операцию reversal, но только до конца дня и не для всех банков-эквайеров. Подробности надо уточнять у своего менеджера при подключении.
Чтобы точно понимать какой тип операции можно делать необходимо запросить статус транзакции и действовать в соответствие с таблицей статусов.
Для операции инициации рекаррингового платежа также существует два сценария:
- Одношаговый – операция
recurring_init_sale
- Двухшаговый – операция
recurring_init_auth
-{amp}gt; операцияcapture
С точки зрения наличия полей в запросе, все операции идентичны. Отличаются лишь коды операций.
Технология 3DS
Операция покупки может быть проведена через QiwiPay с использованием технологии 3DS, если по карте необходима 3DS-аутентификация.
Диаграмма функционирования 3DS на примере операции с использованием способа QiwiPay WPF.
Проверка статуса платежа по чеку
Контроль по чеку поможет отследить местонахождение денег можно на сайте .
Выполните следующие действия:
- Зайдите .
- Опустите страницу до конца.
- Перейдите в раздел «Помощь».
- Нажмите на вкладку «Проверить свои платежи на терминале».
- Введите инфо, которое вы записали ранее.
- Проверьте прием денег.
Первым и приоритетным способом узнать статус платежа в системе КИВИ является онлайн-проверка по чеку. Для того чтобы понять, на какой стадии находятся положенные деньги, нужно зайти на официальный сайт сервиса.
В верхнем правом углу странички выбираем ссылку «Помощь» и переходим в соответствующий раздел.
Верхние две иконки на новооткрывшейся странице и являются способами проверить статус платежа. Выбираем метод онлайн, для этого нажимаем на иконку или заголовок «Проверьте свой платеж на терминале».
Чтоб быстро проверить местонахождение ваших средств система предлагает ввести реквизиты и сведения, которые присутствуют в чеке, полученном при совершении оплаты наличными в терминале КИВИ.
Вся информация о других платежах, совершаемых онлайн (оплата услуг, товаров, погашение штрафов, кредитов, переводы средств и прочие) доступны в соответствующем разделе «Отчеты» Visa QIWI Wallet.
Форма для проверки прохождения платежа требует указания следующих данных:
- терминал – номер устройства, через которое были уплачены наличные;
- дата платежа в формате ДД.ММ.ГГГГ, которую можно выбрать на всплывающем календаре;
- номер телефона, то есть кошелька КИВИ, на который предназначались средства;
- код операции.
Разобраться с введением данных очень просто, так как прямо рядом с формой указан пример стандартного чека, выдаваемого терминалами сервиса. На нем в онлайн-режиме подсвечивается необходимая для ввода строка, сразу после установки курсора в соответствующую ячейку формы.
После ввода всех необходимых сведений следует нажать кнопку «Проверить». Система проанализирует прохождение средств по вашему платежу и выдаст результат, в котором будет понятно, на какой стадии «зависли» деньги и замечено ли какое-то их движение.
Если чек отсутствует
Если терминал не выдал квитанцию, либо вы его потеряли, то поиск платежа немного затруднится. Вам необходимо позвонить в службу поддержки QIWI или владельца аппарата. Важно: Ускорению процесса поиска помогут максимально точные сведения об осуществленной транзакции. Их можно продиктовать оператору по телефону, чтобы подтвердить свои действия.
Как посмотреть статус платежа:
- Выберите службу поддержки ресурса.
- Перейдите в раздел терминалы.
- Кликните на поле «Проблема с платежом через терминал — нет чека».
- Введите имеющуюся информацию.
Перед обязательными строчками для заполнения стоят звездочки. Форму рекомендуется заполнить максимально детально, чтобы специалист мог просмотреть поступление денег.
Если вы осуществляли платёж через терминал или иными способами, можно обратиться в поддержку в режиме онлайн. Для этого на сайте заполняете специальную форму. Она будет несколько больше предыдущей. Потребуется указать:
- номер сотового телефона;
- дату;
- сумму;
- другие контакты;
- поставщика услуги;
- терминал;
- номер транзакции и т. д.
Актуальным будет вопрос, как узнать номер терминала Киви, если это невозможно сделать по чеку. Можно позвонить владельцу аппарата или нажать на стартовой странице терминала на «I».
Авторизация
Для передачи запросов в QiwiPay API требуется авторизация. Авторизация выполняется методом валидации клиентского сертификата, который выдается ТСП и должен использоваться при каждом запросе к API.
Проверка онлайн-платежей
Узнать статус платежа, который был совершен с личного кошелька или мобильного приложения, можно во вкладке «История», где сохраняются параметры зачисления. Финансовая площадка предлагает пройти особую онлайн-проверку, позволяющую отслеживать передвижения денег.
Загрузка …
Операция покупки
Запрос
{"opcode":5,"merchant_site":99,"txn_id":"172001","sign":"bb5c48ea540035e6b7c03c8184f74f09d26e9286a9b8f34b236b1bf2587e4268"}
{"txn_id":172001,"txn_status":3,"txn_type":2,"txn_date":"2017-03-09T17:16:06 00:00","error_code":0}
Запрос
{"opcode":6,"merchant_site":99,"txn_id":181001,"amount":"700","sign":"bb5c48ea540035e6b7c03c8184f74f09d26e9286a9b8f34b236b1bf2587e4268"}
{"txn_id":182001,"txn_status":3,"txn_type":4,"txn_date":"2017-03-09T17:16:06 00:00","error_code":0,"amount":700}
Запрос
{"opcode":7,"merchant_site":99,"txn_id":181001,"amount":"700","sign":"bb5c48ea540035e6b7c03c8184f74f09d26e9286a9b8f34b236b1bf2587e4268"}
{"txn_id":182001,"txn_status":3,"txn_type":3,"txn_date":"2017-03-09T17:16:06 00:00","error_code":0,"amount":700}
Запрос
{"opcode":20,"merchant_uid":"10001","merchant_site":555,"card_token":"4d5b363e-a116-35f5-e053-6751080ac38e","txn_id":182001,"amount":"4678.50","currency":643,"card_name":"cardholder name","order_id":"order1231231","cf1":"cf1","cf2":"cf2","cf3":"cf3","cf4":"cf4","cf5":"cf5","callback_url":"http://domain.tld/callback_service","success_url":"http://domain.tld/success","decline_url":"http://domain.tld/decline","product_name":"Выплата выигрыша","sign":"bb5c48ea540035e6b7c03c8184f74f09d26e..........................."}
Параметр | Условие | Тип данных | Описание |
---|---|---|---|
opcode | Обязательно | integer | Код операции (20) |
merchant_site | Обязательно | integer | Идентификатор сайта ТСП |
pan | Условно обязательно | string(19) | Номер банковской карты |
card_token | Условно обязательно | string(40) | Токен карты |
txn_id | Условно обязательно | integer | Идентификатор транзакции (для контроля максимальной суммы выплаты) |
amount | Обязательно | string(20) | Сумма операции |
currency | Обязательно | integer | Валюта суммы операции в цифровом формате согласно ISO 4217 |
sign | Обязательно | string(64) | Контрольная сумма переданных параметров |
card_name | Условно обязательно | string(64) | Имя Покупателя, как указано на карте (латинские буквы) |
order_id | Условно обязательно | string(256) | Уникальный номер заказа в системе ТСП |
cf1 | Опционально | string(256) | Поля для ввода произвольной информации, дополняющей данные по операции. Например – описание услуг ТСП. |
cf2 | Опционально | string(256) | Поля для ввода произвольной информации, дополняющей данные по операции. Например – описание услуг ТСП. |
cf3 | Опционально | string(256) | Поля для ввода произвольной информации, дополняющей данные по операции. Например – описание услуг ТСП. |
cf4 | Опционально | string(256) | Поля для ввода произвольной информации, дополняющей данные по операции. Например – описание услуг ТСП. |
cf5 | Опционально | string(256) | Поля для ввода произвольной информации, дополняющей данные по операции. Например – описание услуг ТСП. |
product_name | Опционально | string(256) | Описание услуги которую получает Плательщик. |
merchant_uid | Опционально | string(64) | Уникальный идентификатор Покупателя в системе ТСП. |
callback_url | Опционально | string(256) | URL отправки callback |
{"txn_id":172001,"txn_status":3,"txn_type":8,"txn_date":"2017-03-09T17:16:06 00:00","error_code":0,"pan":"411111******1111","amount":4678.50,"currency":643,"auth_code":"2G4923"}
Параметр | Тип данных | Описание |
---|---|---|
txn_id | integer | Идентификатор транзакции |
txn_status | integer | Статус транзакции |
txn_type | integer | Тип транзакции |
txn_date | YYYY-MM-DDThh:mm:ss±hh:mm | Дата транзакции в формате ISO8601 с временной зоной |
error_code | integer | Код ошибки работы системы |
pan | string(19) | Номер карты |
amount | decimal | Сумма выплаты |
currency | integer | Валюта суммы списания в цифровом формате согласно ISO 4217 |
auth_code | string(6) | Код авторизации |
Запрос
{"opcode":30,"merchant_site":99,"order_id":"41324123412342","sign":"bb5c48ea540035e6b7c03c8184f74f09d26e9286a9b8f34b236b1bf2587e4268"}
Параметр | Условие | Тип данных | Описание |
---|---|---|---|
opcode | Обязательно | integer | Код операции (30) |
merchant_site | Обязательно | integer | Идентификатор сайта ТСП |
txn_id | Опционально | integer | Идентификатор транзакции |
order_id | Опционально | string(256) | Уникальный номер заказа в системе ТСП |
sign | Обязательно | string(64) | Контрольная сумма переданных параметров |
{"transactions":[{"error_code":0,"txn_id":3666050,"txn_status":2,"txn_type":2,"txn_date":"2017-03-09T17:16:06 00:00","pan":"400000******0002","amount":10000,"currency":643,"auth_code":"181218","merchant_site":99,"card_name":"cardholder name","card_bank":"","order_id":"41324123412342"},{"error_code":0,"txn_id":3684050,"txn_status":3,"txn_type":4,"txn_date":"2017-03-09T17:16:09 00:00","pan":"400000******0002","amount":100,"currency":643,"merchant_site":99,"card_name":"cardholder name","card_bank":""},{"error_code":0,"txn_id":3685050,"txn_status":3,"txn_type":4,"txn_date":"2017-03-19T17:16:06 00:00","pan":"400000******0002","amount":100,"currency":643,"merchant_site":99,"card_name":"cardholder name","card_bank":""}],"error_code":0}
Параметр | Тип данных | Описание |
---|---|---|
txn_id | integer | Идентификатор транзакции |
txn_status | integer | Статус транзакции |
txn_type | integer | Тип транзакции |
txn_date | YYYY-MM-DDThh:mm:ss±hh:mm | Дата транзакции в формате ISO8601 с временной зоной |
error_code | integer | Код ошибки работы системы |
pan | string(19) | Номер карты Покупателя в формате 411111**1111 |
amount | decimal | Сумма списания |
currency | integer | Валюта суммы списания в цифровом формате согласно ISO 4217 |
auth_code | string(6) | Код авторизации |
eci | string(2) | Индикатор E-Commerce операции |
card_name | string(64) | Имя Покупателя, как указано на карте (латинские буквы) |
card_bank | string(64) | Банк-эмитент карты |
order_id | string(256) | Уникальный номер заказа в системе ТСП |
ip | string(15) | IP-адрес Покупателя |
string(64) | E-mail Покупателя | |
country | string(3) | Страна Покупателя в формате 3-х буквенных кодов согласно ISO 3166-1 |
city | string(64) | Город местонахождения Покупателя |
region | string(6) | Регион страны формате геокодов согласно ISO 3166-2 |
address | string(64) | Адрес местонахождения Покупателя |
phone | string(15) | Контактный телефон Покупателя |
cf1 | string(256) | Поля для ввода произвольной информации, дополняющей данные по операции. Например – описание услуг ТСП. |
cf2 | string(256) | Поля для ввода произвольной информации, дополняющей данные по операции. Например – описание услуг ТСП. |
cf3 | string(256) | Поля для ввода произвольной информации, дополняющей данные по операции. Например – описание услуг ТСП. |
cf4 | string(256) | Поля для ввода произвольной информации, дополняющей данные по операции. Например – описание услуг ТСП. |
cf5 | string(256) | Поля для ввода произвольной информации, дополняющей данные по операции. Например – описание услуг ТСП. |
product_name | string(256) | Описание услуги которую получает Плательщик. |
Завершение 3DS аутентификации
После успешного прохождения 3DS аутентификации, ТСП необходимо отправить запрос для завершения проверки.
{"opcode":2,"merchant_site":99,"pares":"eJzVWFevo9iyfu9fMZrzaM0QjWHk3tIiGptgooE3cgabYMKvv3jvTurTc3XOfbkaJMuL............","txn_id":"172001"}
Параметр | Условие | Тип данных | Описание |
---|---|---|---|
opcode | Обязательно | integer | Код операции (2) |
merchant_site | Обязательно | integer | Идентификатор сайта ТСП |
pares | Обязательно | string(4096) | Результат верификации Покупателя |
txn_id | Обязательно | integer | Идентификатор транзакции |
sign | Обязательно | string(64) | Контрольная сумма переданных параметров |
{"txn_id":172001,"txn_status":3,"txn_type":1,"txn_date":"2017-03-09T17:16:06 00:00","card_token":"4d5b363e-a116-35f5-e053-6751080ac38e","card_token_expire":"2018-02-27T21:00:00 00:00","error_code":0,"pan":"411111******1111","issuer_name":"QIWI BANK (JSC)","issuer_country":"RUS","amount":4678.50,"currency":643,"auth_code":"2G4923","eci":"5"}
Параметр | Тип данных | Описание |
---|---|---|
txn_id | integer | Идентификатор транзакции |
txn_status | integer | Статус транзакции |
txn_type | integer | Тип транзакции |
txn_date | YYYY-MM-DDThh:mm:ss±hh:mm | Дата транзакции в формате ISO8601 с временной зоной |
card_token | string(40) | Токен карты (если функционал токенизации включен для данного сайта) |
card_token_expire | YYYY-MM-DDThh:mm:ss±hh:mm | Срок истечения токена карты (если функционал токенизации включен для данного сайта) |
error_code | integer | Код ошибки работы системы |
pan | string(19) | Номер карты Покупателя |
issuer_name | string(40) | Название банка эмитента |
issuer_country | string(3) | Страна банка эмитента |
amount | decimal | Сумма списания |
currency | integer | Валюта суммы списания в цифровом формате согласно ISO 4217 |
auth_code | string(6) | Код авторизации |
eci | string(2) | Индикатор E-Commerce операции |