Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

При возвратах платежей по QIWI, выполненных с помощью web-интерфейсов, обычно система АПК Ассист сразу передает на запрос отмены заказа соответствующий успешный статус, однако, в некоторых случаях передается ответ со статусом операции «In Process» (responsecode=AS300). Это связано с задержкой при выдаче результата отмены платежной системой QIWI. Для получения реального результата в этом случае следует отправить дополнительный запрос на получение результатов операций по номеру заказа через несколько минут после запроса на отмену. В случае нескольких отмен результат запроса будет содержать несколько вложенных операций типа 300 (Отмена), имеющих различные значения параметра billnumber в расширенном формате (например, 5700027202722028.3).

...

Пример запроса HTTP POST для отмены оплаты по банковской карте:

Code Block
languagexml
<FORM ACTION="https://<SERVER-NAME>/cancel/cancel.cfm" method="POST">
<INPUT TYPE="hidden" NAME="BillNumber" VALUE="511111100000001">
<INPUT TYPE="hidden" NAME="Merchant_ID" VALUE="Ваш Merchant_ID">
<INPUT TYPE="hidden" NAME="Login" VALUE="Ваш логин">
<INPUT TYPE="hidden" NAME="Password" VALUE="Ваш пароль">
<INPUT TYPE="hidden" NAME="Amount" VALUE="Сумма">
<INPUT TYPE="hidden" NAME="Currency" VALUE="Валюта">
<INPUT TYPE="hidden" NAME="ClientIP" VALUE="IP-адрес">
<INPUT TYPE="hidden" NAME="Language" VALUE="Язык выдачи результата">
<INPUT TYPE="hidden" NAME="Format" VALUE="Формат выдачи результата">
<INPUT TYPE="Submit"></FORM>

Список параметров ответа:

...

Название

...

Значение



...

ordernumber

...

Номер заказа

...

responsecode

...

Код возврата

...

recommendation

...

Рекомендации

...

message

...

Сообщение

...

ordercomment

...

Комментарий

...

orderdate

...

Дата заказа по Гринвичу (GMT)

...

amount

...

Сумма операции

...

currency

...

Валюта операции

...

meantypename

...

Тип платежного средства

...

meannumber

...

Номер платежного средства

...

lastname

...

Фамилия плательщика

...

firstname

...

Имя плательщика

...

middlename

...

Отчество плательщика

...

issuebank

...

Название банка-эмитента

...

Email

...

Email плательщика

...

bankcountry

...

Страна банка-эмитента

...

rate

...

Курс валюты

...

approvalcode

...

Код авторизации

...

meansubtype

...

Подтип платежного средства

...

cardholder

...

Держатель платежного средства

...

cardexpirationdate

...

Срок действия карты

...

ipaddress

...

IP-адрес плательщика

...

protocoltypename

...

Протокол

...

testmode

...

Тестовый режим

...

customermessage

...

Сообщение о результате для покупателя

...

orderstate

...

Cтатус заказа

...

processingname

...

Процессинг

...

operationtype

...

Тип операции

...

billnumber

...

Расширенный формат billnumber

...

orderamount

...

Оригинальная сумма операции

...

ordercurrency

...

Оригинальная валюта операции

...

slipno

...

Номер финансовой транзакции, отправляемый в процессинг

...

packetdate

...

Дата формирования запроса по Гринвичу (GMT)

...

signature

Пример результата запроса отмены платежа или возврата средств в формате XML:

Code Block
languagexml
<?xml version='1.0' encoding='utf-8' standalone='yes'?>
<!DOCTYPE result [
<!ATTLIST result
                 firstcode CDATA #REQUIRED
                 secondcode CDATA #REQUIRED
                 count CDATA #REQUIRED>
<!ELEMENT result (orders?)>
<!ELEMENT orders (order)>
<!ELEMENT order (ordernumber?,
responsecode?, recommendation?, message?, ordercomment?, orderdate?, amount?,
currency?, meantypename?, meannumber?, lastname?, firstname?, middlename?,
issuebank?, email?, bankcountry?, rate?, approvalcode?, meansubtype?,
cardholder?, cardexpirationdate?, ipaddress?,
protocoltypename?, testmode?, customermessage?, 
orderstate?, processingname?, operationtype?, billnumber?, orderamount?,
ordercurrency?, slipno?, packetdate?, signature?, pareq?, acsurl?)>
<!ELEMENT ordernumber (#PCDATA)>
<!ELEMENT responsecode (#PCDATA)>
<!ELEMENT recommendation (#PCDATA)>
<!ELEMENT message (#PCDATA)>
<!ELEMENT ordercomment (#PCDATA)>
<!ELEMENT orderdate (#PCDATA)>
<!ELEMENT amount (#PCDATA)>
<!ELEMENT currency (#PCDATA)>
<!ELEMENT meantypename (#PCDATA)>
<!ELEMENT meannumber (#PCDATA)>
<!ELEMENT lastname (#PCDATA)>
<!ELEMENT firstname (#PCDATA)>
<!ELEMENT middlename (#PCDATA)>
<!ELEMENT issuebank (#PCDATA)>
<!ELEMENT email (#PCDATA)>
<!ELEMENT bankcountry (#PCDATA)>
<!ELEMENT rate (#PCDATA)>
<!ELEMENT approvalcode (#PCDATA)>
<!ELEMENT meansubtype (#PCDATA)>
<!ELEMENT cardholder (#PCDATA)>
<!ELEMENT cardexpirationdate (#PCDATA)>
<!ELEMENT ipaddress (#PCDATA)>
<!ELEMENT protocoltypename (#PCDATA)>
<!ELEMENT testmode (#PCDATA)>
<!ELEMENT customermessage (#PCDATA)>
<!ELEMENT orderstate (#PCDATA)>
<!ELEMENT processingname (#PCDATA)>
<!ELEMENT operationtype (#PCDATA)>
<!ELEMENT billnumber (#PCDATA)>
<!ELEMENT orderamount (#PCDATA)>
<!ELEMENT ordercurrency (#PCDATA)>
<!ELEMENT slipno (#PCDATA)>
<!ELEMENT packetdate (#PCDATA)>
<!ELEMENT signature (#PCDATA)>
<!ELEMENT pareq (#PCDATA)>
<!ELEMENT acsurl (#PCDATA)>]>
<result firstcode="0" secondcode="0" count="1"> 
<orders><order> 
<ordernumber>0001-01</ordernumber>
<responsecode>AS000</responsecode>
<recommendation></recommendation> 
<message>Завершено успешно.</message> 
<ordercomment>тестовый платеж</ordercomment> 
<orderdate>01.01.2018 10:51:53</orderdate> 
<amount>100.00</amount>
<currency>RUB</currency>
<meantypename>VISA</meantypename>
<meannumber>411111****1111</meannumber>
<lastname>Testov</lastname>
<firstname>Test</firstname>
<middlename>Testovich</middlename>
<issuebank>BANK</issuebank>
<email>test@testpost.ru</email>
<bankcountry>Россия</bankcountry> 
<rate>1</rate> 
<approvalcode>F39530</approvalcode>
<meansubtype>Corporate Purchasing Card</meansubtype>
<cardholder>TEST</cardholder>
<cardexpirationdate>12/20</cardexpirationdate>
<ipaddress>10.23.23.23</ipaddress>
<protocoltypename></protocoltypename>
<testmode>1</testmode>
<customermessage>Завершено успешно.</customermessage> 
<orderstate>Canceled</orderstate>
<processingname>Name</processingname>
<operationtype>300</operationtype>
<billnumber>511111100000001.2</billnumber>
<orderamount>100.00</orderamount>
<ordercurrency>RUB</ordercurrency>
<slipno>111111</slipno>
<packetdate>01.01.2018 12:36:31</packetdate> 
<signature></signature>
</order></orders></result>
Warning

Примечание. Поле <slipno> используется только для процессингов UCS, Райффайзенбанк, Мультикарта и Русский стандарт. Возможные значения этого параметра в ответах описаны в справочнике .

Пример результата запроса в формате XML, вернувшего ошибку (неправильный пароль):

Code Block
languagexml
<?xml version="1.0" encoding="utf-8" standalone="yes" ?> 
<!DOCTYPE result [...]> 
<result firstcode="7" secondcode="102" count="0"></result> 

С описанием первого и второго кодов автоматизированных интерфейсов можно ознакомиться в справочнике . Также в справочниках описаны возможные статусы заказа, типы операций, коды возврата и коды валют соответственно. В качестве значения поля <meannumber> возвращаются первые 6 и последние 4 цифры номера карты, остальные цифры скрыты символом *.

Веб-сервис для формата SOAP (wscancel)

...