Методы API¶
API предназначен для приёма платежей в рамках продукта Приём платежей через кредитные организации.
Проверка статуса абонента в информационной системе провайдера и получение дополнительных параметров платежа без регистрации платежа в системе провайдера¶
При получении запроса провайдер:
- проверяет наличие в своей информационной системе абонента с указанным идентификатором;
- при необходимости возвращает дополнительные параметры для показа плательщику. Эти параметры могут быть затем переданы в дополнительных реквизитах платежа в последующих запросах.
Параметры запроса¶
Параметр | Описание |
---|---|
command | Обязательный параметр. Идентификатор типа запроса: запрос на получение дополнительных данных платежа для абонента. Всегда равен getInfo |
account | Обязательный параметр. Уникальный идентификатор абонента в информационной системе провайдера (номер лицевого счета, телефона, логин и т.д.). Строка, содержащая буквы, цифры и спецсимволы, длиной до 200 символов. Перед отправкой провайдеру идентификатор проходит проверку корректности в соответствии с регулярным выражением, которое предоставляет провайдер при подключении |
ccy | Обязательный параметр. Код валюты в формате ISO 4217 |
prv_id | Внутренний идентификатор провайдера в информационной системе QIWI. Целое число |
sum | Сумма операции. Число с двумя знаками в дробной части, разделитель целой и дробной частей — точка |
data1,data2,…,dataN | Дополнительные параметры, передаваемые провайдеру. Формат имени и значения параметров указывается провайдером |
Параметры ответа¶
В ответе интерфейс провайдера должен вернуть XML-документ с блоком <response>
и следующими тегами:
Тег | Описание |
---|---|
result | Обязательный параметр. Код ошибки. В случае, если платеж разрешен, возвращается 0 |
comment | Текстовый комментарий от провайдера |
fields | Тег с информацией об абоненте или об операции |
fields.field1, …, fields.fieldN | Параметры, содержащие информацию |
fields.field1.type, …, fields.fieldN.type | Тип параметра. Возможно использование следующих типов параметров:disp – информация для отображения клиенту при совершении платежа (по умолчанию, если тип не указан) |
fields.field1.name, …, fields.fieldN.name | Имя параметра. Если не указано, присваивается имя disp1 ,..,dispN (в соответствии с порядковым номером тега fieldN ) |
Примеры¶
Проверка статуса абонента в информационной системе провайдера и получение дополнительных параметров платежа с регистрацией платежа в системе провайдера¶
При получении запроса провайдер:
- проверяет наличие в своей базе абонента с указанным идентификатором;
- выполняет внутренние проверки идентификатора и суммы платежа в соответствии с принятой логикой пополнения лицевых счетов через платежные системы;
- при необходимости возвращает дополнительные параметры для показа плательщику. Эти параметры могут быть затем переданы в дополнительных реквизитах платежа в последующих запросах.
Обратите внимание
В информационной системе провайдера не должно содержаться двух успешно проведенных платежей с одним и тем же идентификатором платежа txn_id
. При получении запроса с уже существующим в информационной системе провайдера txn_id
, провайдер должен вернуть результат обработки предыдущего запроса.
Параметры запроса¶
Параметр | Описание |
---|---|
command | Обязательный параметр. Идентификатор типа запроса: проверить счет абонента. Всегда равен check |
txn_id | Обязательный параметр. Идентификатор платежа в информационной системе QIWI. В информационной системе провайдера не должно содержаться двух успешно проведенных платежей с одним и тем же идентификатором платежа. При получении запроса с txn_id , уже существующим в информационной системе провайдера, провайдер должен вернуть результат обработки предыдущего запроса. |
account | Обязательный параметр. Идентификатор абонента в информационной системе провайдера |
sum | Обязательный параметр. Сумма операции. Число с двумя знаками в дробной части, разделитель целой и дробной частей — точка |
ccy | Обязательный параметр. Код валюты в формате ISO 4217 |
prv_id | Внутренний идентификатор провайдера в информационной системе QIWI. Целое число |
data1, data2,…, dataN | Дополнительные параметры, передаваемые провайдеру. Формат имени и значения параметров указывается провайдером |
Параметры ответа¶
В ответе интерфейс провайдера должен вернуть XML-документ, содержащий блок <response>
со следующими тегами:
Тег | Описание |
---|---|
osmp_txn_id | Обязательный параметр. Идентификатор транзакции в информационной системе QIWI (txn_id из запроса) |
result | Обязательный параметр. Код ошибки. В случае, если платеж разрешен, возвращается 0 |
comment | Текстовый комментарий от провайдера |
fields | Тег с информацией об абоненте или об операции |
fields.field1, …, fields.fieldN | Параметры, содержащие информацию |
fields.field1.type, …, fields.fieldN.type | Тип параметра. Возможно использование следующих типов параметров:disp – информация для отображения клиенту при совершении платежа (по умолчанию, если тип не указан) |
fields.field1.name, …, fields.fieldN.name | Имя параметра. Если не указано, присваивается имя disp1 ,..,dispN (в соответствии с порядковым номером тега fieldN ) |
Примеры¶
Подтверждение платежа¶
При получении запроса провайдер пополняет баланс абонента на указанную сумму.
Обратите внимание
В информационной системе провайдера не должно содержаться двух успешно проведенных платежей с одним и тем же идентификатором платежа txn_id
. При получении запроса с уже существующим в информационной системе провайдера txn_id
, провайдер должен вернуть результат обработки предыдущего запроса.
Параметры запроса¶
Параметр | Описание |
---|---|
command | Обязательный параметр. Идентификатор типа запроса: пополнить баланс абонента. Всегда равен pay |
txn_id | Обязательный параметр. Идентификатор платежа в информационной системе QIWI. В информационной системе провайдера не должно содержаться двух успешно проведенных платежей с одним и тем же идентификатором платежа. При получении запроса с txn_id , уже существующим в информационной системе провайдера, провайдер должен вернуть результат обработки предыдущего запроса. |
txn_date | Обязательный параметр. Дата операции в формате YYYYMMDDHHMMSS |
account | Обязательный параметр. Идентификатор абонента в информационной системе провайдера |
sum | Обязательный параметр. Сумма операции. Число с двумя знаками в дробной части, разделитель целой и дробной частей — точка |
ccy | Обязательный параметр. Код валюты в формате ISO 4217 |
prv_id | Внутренний идентификатор провайдера в информационной системе QIWI. Целое число |
data1, data2,…, dataN | Дополнительные параметры, передаваемые провайдеру. Формат имени и значения параметров указывается провайдером |
Параметры ответа¶
В ответе интерфейс провайдера должен вернуть XML-документ, содержащий блок <response>
со следующими тегами:
Тег | Описание |
---|---|
osmp_txn_id | Обязательный параметр. Идентификатор транзакции в информационной системе QIWI (txn_id из запроса) |
prv_txn | Обязательный параметр. Уникальный номер операции пополнения баланса абонента (в информационной системе провайдера) |
sum | Обязательный параметр. Сумма платежа, переданная провайдеру. Число с двумя знаками в дробной части, разделитель целой и дробной частей — точка |
result | Обязательный параметр. Код ошибки. В случае успешной регистрации платежа result=0 |
comment | Текстовый комментарий от провайдера |
fields | Тег с информацией об абоненте или об операции |
fields.field1, …, fields.fieldN | Параметры, содержащие информацию |
fields.field1.type, …, fields.fieldN.type | Тип параметра. Возможно использование следующих типов параметров:disp – информация для отображения клиенту при совершении платежа (по умолчанию, если тип не указан);info – информация для сохранения в информационной системе QIWI |
fields.field1.name, …, fields.fieldN.name | Имя параметра. Если не указано, присваивается имя disp1 ,..,dispN (в соответствии с порядковым номером тега fieldN ) |