Skip to content

Latest commit

 

History

History
153 lines (128 loc) · 15.1 KB

File metadata and controls

153 lines (128 loc) · 15.1 KB

Выплаты на карты зарубежных банков {#foreign_payment_card}

Операция используется для выплаты средств на банковские карты, выпущенные зарубежными банками. Выплата средств в системе QIWI Wallet представляет собой списание средств с авансового депозита агента и зачисление на банковские карты международных платежных систем «Visa International», «MasterCard International Incorporated», эмитированные зарубежными кредитными организациями. Платежная система определяется по номеру карты.

Платежи на карты Visa и MasterCard, выпущенные зарубежными банками, временно остановлены по причине ограничений со стороны платежной системы.

После выполнения запроса платеж начинает жизненный цикл в системе QIWI Wallet. Каждому этапу жизненного цикла соответствует определённый статус платежа. Цикл заканчивается после получения финального статуса платежа. Признак финального статуса указан в списке возвращаемых API статусов платежа.

Если в ответе на запрос выплаты получен нефинальный статус платежа, то для проверки успешного прохождения платежа вы должны периодически (но не чаще одного раза в 10 минут) выполнять запрос проверки статуса платежа до получения успешного или неуспешного финального статуса платежа.

Формат запроса {#foreign-cardpayment-req}

Справка по формату значений тегов и атрибутов XML.

Параметры запроса

<?xml version="1.0" encoding="utf-8"?>
<request>
  <request-type>pay</request-type>
  <terminal-id>123</terminal-id>
  <extra name="password">***</extra>
  <auth>
    <payment>
      <transaction-number>12345678</transaction-number>
      <from>
        <ccy>RUB</ccy>
        <extra name="source_first_name">Иван</extra>
        <extra name="source_last_name">Иванов</extra>
        <extra name="source_address">Можайское шоссе 38-2-46</extra>
        <extra name="source_city">Moscow</extra>
        <extra name="source_country_code">RU</extra>
        <extra name="source_zip_code">121354</extra>
        <extra name="source_resident">0</extra>
        <extra name="source_birthday">16.12.1990</extra>
      </from>
      <to>
        <amount>1115.00</amount>
        <ccy>RUB</ccy>
        <service-id>36655</service-id>
        <account-number>4265111122334411</account-number>
        <extra name="comment">Перевод на карту</extra>
        <extra name="target_card_holder">Petrov Petr</extra>
      </to>
    </payment>
  </auth>
</request>

Внутри тега payment поля с тегом extra могут располагаться в любом порядке

Тег Описание
request Группирующий тег. Дочерние теги содержат параметры платежа.
request-type Тип запроса (идентификатор запроса выплаты: pay)
terminal-id Идентификатор агента в системе QIWI Wallet
extra name="password" Экстра-поле, содержащее пароль для аутентификации в системе QIWI Wallet
auth Группирующий тег, описывает платежные данные
payment Группирующий тег, описывает единичный платеж. В запросе может присутствовать только один тег payment.
transaction-number Номер транзакции платежа в информационной системе агента. Его необходимо использовать при проверке статуса платежа. Номер транзакции и идентификатор terminal-id однозначно определяют платёж в системе QIWI Wallet.
from Группирующий тег, содержит информацию о сумме, полученной агентом от клиента
from/ccy Валюта счета агента, с которого будет произведено списание денежных средств (в качестве значения используется цифровой или буквенный код валюты по ISO 4217)
from/extra name="source_first_name" Имя плательщика
from/extra name="source_last_name" Фамилия плательщика
from/extra name="source_address" Адрес плательщика
from/extra name="source_city" Город адреса плательщика
from/extra name="source_country_code" 2-х буквенный код страны по ISO 3166-1 alpha-2
from/extra name="source_zip_code" Почтовый индекс плательщика
from/extra name="source_resident" Признак резидента (0 – нерезидент, 1 - резидент)
from/extra name="source_birthday" Дата рождения
from/service-id Идентификатор источника (канала) пополнения (необязательный параметр). Параметр используется в случае необходимости разделения потоков пополнения, сохраняя единый баланс агента.
to Группирующий тег, содержит информацию о платеже
to/amount Сумма к зачислению на карту
to/service-id Идентификатор сервиса, на который производится зачисление средств при выплате (константа: 36655)
to/account-number Номер карты Visa / MasterCard (без пробелов) для зачисления средств при выплате. Только карты, эмитированные зарубежными кредитными организациями.
to/ccy Валюта выплаты (только RUB, USD, EUR).
to/extra name="comment" Комментарий к платежу
to/extra name="target_card_holder" Фамилия и имя получателя на латинице в формате LastName FirstName

Формат ответа {#cardpayment-res}

При возникновении сетевых ошибок (например, таймауты при соединении или чтении ответа), HTTP-ошибок (HTTP-статус не равен 200, пустой ответ), некорректных XML-документов (например, c отсутствующими обязательными тегами и/или атрибутами) вы должны перейти к периодическому запросу статуса до получения успешного или неуспешного финального статуса платежа. Поскольку при возникновении данных ошибок информация о статусе платежа не доступна, вы не должны отклонять платёж на своей стороне.

Формат ответа API зависит от того, как сервер обработал запрос:

Если вы не уверены в корректной расшифровке ответа API, обратитесь в Службу поддержки: bss@qiwi.com.

Ответ без ошибок обработки {#cardres_payment}

<?xml version="1.0" encoding="utf-8"?>
<response>
<result-code fatal="false">0</result-code>
<payment status='60' txn_id='6060' transaction-number='12345678' result-code='0' message='Ok' msg='Ok' final-status='true' fatal-error='false' txn-date='02.03.2011 14:35:46'  >
  <from>
    <amount>1115.00</amount>
    <ccy>643</ccy>
  </from>
  <to>
    <service-id>36655</service-id>
    <amount>955.00</amount>
    <ccy>643</ccy>
    <account-number>4111********1123</account-number>
  </to>
</payment>
<balances>
<balance code="428">0.00</balance>
<balance code="643">200.00</balance>
<balance code="840">12.20</balance>
</balances>
</response>

Если запрос обработан корректно, то в ответе возвращаются сведения о платеже в теге <payment>.

Параметры ответа:

Тег Описание Атрибуты
response Группирующий тег ответа. Отсутствуют.
result-code Код ошибки обработки запроса. fatal – логический признак фатальности ошибки обработки запроса в целом.
payment Описание принятого платежа. statusстатус платежа в системе QIWI Wallet;
txn_id – идентификатор транзакции платежа в системе QIWI Wallet. Если не заполнен, платёж не был зарегистрирован из-за временной ошибки. Попробуйте повторить запрос позже;
transaction-number – номер транзакции платежа в информационной системе Контрагента;
result-codeкод ошибки обработки платежа;
message, msg — текстовое описание ошибки;
final-status – логический признак финального статуса платежа;
fatal-error — логический признак фатальности ошибки обработки платежа (фатальная ошибка означает, что повторный запрос с теми же реквизитами приведет к повторению той же ошибки);
txn-date – дата приема платежа в систему QIWI Wallet.
from Группирующий тег, содержит информацию о списанных средствах. Отсутствуют.
from/amount Сумма, списанная со счета Контрагента. Отсутствуют.
from/ccy Валюта счета (в качестве значения используется цифровой или буквенный код валюты по ISO 4217). Отсутствуют.
from/service-id Идентификатор источника (канала) пополнения (необязательный параметр). Параметр используется в случае необходимости разделения потоков пополнения, сохраняя единый баланс агента.
to Группирующий тег, содержит информацию о платеже. Отсутствуют.
to/amount Сумма к зачислению на карту. Отсутствуют.
to/service-id Идентификатор сервиса, на который производится зачисление средств при выплате. Отсутствуют.
to/account-number Номер карты Клиента (маскированный). Отсутствуют.
to/ccy Валюта выплаты (цифровой или буквенный код валюты по ISO 4217). Отсутствуют.
balances Группирующий тег, содержит информацию о балансе всех активных счетов Контрагента в системе QIWI Wallet. Отсутствуют.
balances/balance Текущий баланс единичного счета Контрагента в системе QIWI Wallet code - цифровой код валюты счета (в формате ISO 4217).

Ответ с ошибками обработки {#cardres_tech}

Если сервер не смог обработать запрос на пополнение карты, API возвращает ответ с кодом произошедшей ошибки. В этом случае информация о платеже отсутствует в ответе, поэтому вы должны перейти к периодическому запросу статуса, не отклоняя платёж на своей стороне.

<?xml version="1.0" encoding="utf-8"?>
<response>
  <result-code fatal="false" message="Неизвестная ошибка" msg="Неизвестная ошибка">300</result-code>
</response>

Параметры ответа:

Тег Описание Атрибуты
result-code Код ошибки обработки запроса. fatal – логический признак фатальности ошибки обработки запроса. Фатальность ошибки означает, что повторный запрос с теми же параметрами приведет к повторению той же ошибки. Фатальные ошибки обработки запроса, как правило, вызваны ошибками конфигурирования и требуют ручного вмешательства (обращения в службу поддержки сервиса QIWI Wallet по адресу bss@qiwi.com). При появлении таких ошибок вы можете либо не приостанавливать выполнение повторных запросов, либо приостановить до устранения ошибок конфигурирования;
message, msg - текстовое описание ошибки.