| Правильная ссылка на эту статью: |
Интерфейс X1
Интерфейс X1. Выписывание счета от одного участника (магазина, ресурса) другому участнику (покупателю).¶
Кипер, подписывающий запросы, должен иметь персональный аттестат или выше.
- URL для передачи запроса с авторизацией по ключам WM Keeper WinPro - https://w3s.web.money/asp/XMLInvoice.asp
(при возникновении проблем с сертификатом сервера, можно обращаться по альтернативному URL https://w10s.webmoney.ru) - URL для передачи запроса с авторизацией по ключам WM Keeper WebPro - https://w3s.wmtransfer.com/asp/XMLInvoiceCert.asp
(при возникновении проблем с сертификатом сервера, можно обращаться по альтернативному URL https://w10s.wmtransfer.com) - метод - POST
- формат запроса:
<w3s.request>
<reqn></reqn>
<wmid></wmid>
<sign></sign>
<invoice>
<orderid></orderid>
<customerwmid></customerwmid>
<storepurse></storepurse>
<amount></amount>
<desc></desc>
<address></address>
<period></period>
<expiration></expiration>
<onlyauth></onlyauth>
<lmi_shop_id></lmi_shop_id>
</invoice>
</w3s.request>
- параметры запроса:
| название | назначение | примечание |
| reqn | номер запроса | целое без знака, макс. количество цифр - 18; всегда должен быть больше номера предыдущего запроса на выписывание счета!!! Максимальное значение данного типа данных 999999999999999999 |
| wmid | WMID подписавшего запрос | используется только при авторизации с ключами WM Keeper WinPro. 12 цифр. Допускаются любые разделители между цифрами |
| sign | подпись запроса | формируется из параметров: orderid+customerwmid+storepurse+amount+desc+address+period+expiration+reqn используется только при авторизации с ключами WM Keeper WinPro |
| invoice | параметры выписываемого счета | |
| invoice\orderid | номер счета | номер счета в системе учета магазина; целое число без знака не больше 999999999999999 |
| invoice\customerwmid | WMID покупателя | |
| invoice\storepurse | кошелек для оплаты | номер кошелька, на который необходимо оплатить счет |
| invoice\amount | сумма счета | число с плавающей точкой (разделитель - .(точка) ) и для десяти с половиной может выглядеть так: 10.5; незначащие нули в конце и точка, если число целое, должны отсутствовать, например, 10.50 - не верно, 10.5 - верно, 9. - не верно, 9 - верно) |
| invoice\desc | описание товара или услуги | произвольная строка от 0 до 255 символов; пробелы в начале или конце не допускаются, кодировка win-1251 |
| invoice\address | адрес доставки товара | произвольная строка от 0 до 255 символов; пробелы в начале или конце не допускаются |
| invoice\period | срок протекции сделки | максимально допустимый срок протекции в днях; при оплате счета целое число от 0 до 120; если 0 - протекция сделки при оплате счета не разрешена. При выписке счета для получения средств на WMD-кошелек – максимальный срок возврата кредита в днях. |
| invoice\expiration | срок оплаты счета | максимально допустимый срок оплаты в днях; целое число от 0 до 120; если 0 - срок оплаты не определен |
| invoice\onlyauth | учитывать разрешение получателя | если 0 - выписка счета будет выполняться без учета разрешает ли получатель выписывать ему счета; 1 - выписка счета будет выполняться только если получатель разрешает выписывать ему счета (в противном случае код возврата - 35). Получатель может запретить выписывать себе счета в двух случаях. В первом, если отправитель является корреспондентом получателя счета и получатель явно в свойствах корреспондента (раздел ограничения) запретил ему выписывать счета и во-втором, если отправитель не является корреспондентом и получатель запретил всем неавторизованным (не являющимся его корреспондентами) выписывать ему счета. |
| invoice\lmi_shop_id | номер магазина | Данный параметр обязателен к указанию только для агрегаторов (сервисы посредники осуществляющие прием платежей в пользу третьих лиц). В данном поле агрегаторы обязаны передавать регистрационный номер магазина в каталоге Мегасток http://www.megastock.ru/ в пользу которого осуществляется прием данного платежа |
- формат ответа:
<w3s.response>
<reqn></reqn>
<retval></retval>
<retdesc></retdesc>
<invoice id="n1" ts="n2">
<orderid></orderid>
<customerwmid></customerwmid>
<storepurse></storepurse>
<amount></amount>
<desc></desc>
<address></address>
<period></period>
<expiration></expiration>
<state>0</state>
<datecrt></datecrt>
<dateupd></dateupd>
</invoice>
</w3s.response>
- параметры ответа:
| название | назначение | примечание |
| reqn | номер запроса | |
| retval | код выполнения | 0 - запрос выполнен успешно (остальные значения в таблице код выполнения запроса) |
| retdesc | расшифровка кода выполнения | |
| invoice | параметры выписанного счета | атрибут id - уникальный номер счета в системе учета WebMoney; атрибут ts - служебный номер счета в системе учета WebMoney |
| invoice\orderid | номер счета | номер счета в системе учета магазина; любое целое число без знака; не больше 999999999999999 |
| invoice\customerwmid | WMID покупателя | |
| invoice\storepurse | номер кошелька для оплаты | |
| invoice\amount | сумма счета для оплаты | число с плавающей точкой (разделитель - .(точка) ) и для десяти с половиной может выглядеть так: 10.5; незначащие нули в конце и точка, если число целое, должны отсутствовать, например, 10.50 - не верно, 10.5 - верно, 9. - не верно, 9 - верно) |
| invoice\desc | описание товара или услуги | произвольная строка от 0 до 255 символов; пробелы в начале или конце не допускаются |
| invoice\address | адрес доставки товара | произвольная строка от 0 до 255 символов; пробелы в начале или конце не допускаются |
| invoice\period | срок протекции сделки | максимально допустимый срок протекции при оплате счета в днях; целое число от 0 до 255; если 0 - протекция сделки при оплате счета не разрешена. При выписке счета для получения средств на WMD-кошелек – максимальный срок возврата кредита в днях. |
| invoice\expiration | срок оплаты счета | максимально допустимый срок оплаты счета в днях; целое число от 0 до 255; если 0 - срок оплаты не определен |
| invoice\state | состояние счета | 0 - не оплачен 1 - оплачен по протекции 2 - оплачен окончательно или без протекции 3 - отказан |
| invoice\datecrt | дата и время создания счета | ГГГГММДД ЧЧ:ММ:СС |
| invoice\dateupd | дата и время изменения состояния счета | ГГГГММДД ЧЧ:ММ:СС |
- код выполнения запроса:
| код возврата | описание |
| -100 | общая ошибка при разборе команды. неверный формат команды. |
| -1 | неверное значение поля w3s.request/invoice/orderid |
| -2 | неверное значение поля w3s.request/invoice/customerwmid |
| -3 | неверное значение поля w3s.request/invoice/storepurse |
| -5 | неверное значение поля w3s.request/invoice/amount |
| -6 | слишком длинное поле w3s.request/invoice/desc |
| -7 | слишком длинное поле w3s.request/invoice/address |
| -8 | неверное значение поля w3s.request/sign |
| -9 | неверное значение поля w3s.request/reqn |
| -11 | идентификатор, переданный в поле w3s.request/wmid не зарегистрирован |
| -12 | проверка подписи не прошла |
| 102 | не выполнено условие постоянного увеличения значения параметра w3s.request/reqn |
| 110 | нет прав на использования интерфейса; аттестат не удовлетворяет требованиям |
| 111 | попытка выставление счета для кошелька не принадлежащего WMID, которым подписывается запрос; при этом доверие не установлено. |
| 5 | отправитель счета не найден |
| 6 | получатель счета не найден |
| 7 | кошелек отправителя счета не найден |
| 8 | кошелек w3s.request/invoice/storepurse принадлежит агрегатору платежей, но lmi_shop_id не указан или указан неверно |
| 11 | кошелек плательщика не найден или отсутствует кошелек нужного типа для оплаты |
| 35 | плательщик не авторизован корреспондентом для выполнения данной операции. Это означает, что магазин пытается выписать счет плательщику, который, либо не добавил ВМИД магазина к себе в список корреспондентов и при этом запретил неавторизованным (не являющимся его корреспондентами) выписывать себе счета (для Кипер Классик - в главном меню вверху - Инструменты - Парметры программы -Ограничения ), либо плательщик добавил ВМИД магазина к себе в корреспонденты, но именно для ВМИДа этого магазина запретил выписку себе счетов. Без действий со стороны плательщика избежать этой ошибки магазин не может, необходимо показать плательщику ВМИД магазина с инструкцией о том, что ВМИД магазина должен быть добавлен плательщиком в список корреспондентов и для ВМИДа должна быть разрешена выписка счета |
| 51 | кошелек продавца w3s.request/invoice/storepurse не имеет регистрации в каталоге Мегасток и при этом имеет лишь аттестат псевдонима, которого недостаточно для приема средств данным автоматизированным способом |
| 52 | кошелек продавца w3s.request/invoice/storepurse не имеет регистрации в каталоге Мегасток и при этом имеет формальный аттестат у которого нет проверенного телефона и проверенной копии паспорта или ИНН и этого недостаточно для приема средств данным автоматизированным способом |
| 61 | Превышен лимит долговых обязательств заемщика |
| 67 | Операция на сумму больше 15000 WMR на этот кошелек доступна только идентифицированным гражданам РФ |
| 75 | Юридическое лицо не может заплатить данному продавцу |
| 76 | Заплатить этому продавцу данным способом оплаты можно только на сумму менее 60000 WMR |
| 87 | Для товаров и услуг указанной вами категории (lmi_shop_id) прием оплаты от участников с аттестатом псевдонима невозможен |
| 154 | кошелек продавца w3s.request/invoice/storepurse не имеет регистрации в каталоге Мегасток и при этом превысил дневной лимит на прием средств автоматизированным способом |
| 155 | кошелек продавца w3s.request/invoice/storepurse не имеет регистрации в каталоге Мегасток и при этом превысил недельный лимит на прием средств автоматизированным способом |
| 156 | кошелек продавца w3s.request/invoice/storepurse не имеет регистрации в каталоге Мегасток и при этом превысил месячный лимит на прием средств автоматизированным способом |
| 8002 | Выставить счет нельзя, продавец не принимает платежи из страны регистрации плательщика. Настройка стран в свойствах кошелька https://merchant.web.money/conf/purses.asp |
| 8005 | Выставить счет нельзя, т.к. в стране покупателя запрещена оплата за данные товары либо услуги |