WebMoney

Wiki

Интерфейс X2

Перевод средств с одного кошелька на другой.

Данный интерфейс доступен только зарегистрированным участникам и может использоваться при переводах с кошельков любых WM Keeper, в том числе и Бюджетных автоматов.

Для подключения зайдите на страницу настроек сервиса Web Merchant Interface включение производится в таблице "Дополнительные параметры". Подключая интерфейс Вы обязуетесь использовать параметр "trans\onlyauth = 1". Кипер подписывающий запросы должен иметь персональный аттестат.

<w3s.request>
    <reqn></reqn>
    <wmid></wmid>
    <sign></sign>
    <trans>
        <tranid></tranid>
        <pursesrc></pursesrc>
        <pursedest></pursedest>
        <amount></amount>
        <period></period>
        <pcode></pcode>
        <desc></desc>
        <wminvid></wminvid>
        <onlyauth>1</onlyauth>
    </trans>
<wmb_denomination>1</wmb_denomination>
</w3s.request>
  • параметры запроса:
название назначение примечание
reqn номер запроса целое без знака, макс. количество цифр - 15; всегда должен быть больше номера предыдущего запроса на перевод средств!!! Монотонность возрастания номера учитывается в привязке к WMID, подписывающему запрос.
wmid WMID подписавшего запрос используется только при авторизации с ключами WM Keeper WinPro (Classic)
sign подпись запроса формируется из параметров: reqn+tranid+pursesrc+pursedest+ amount+period+pcode+desc+wminvid используется только при авторизации с ключами WM Keeper WinPro (Classic)
trans параметры перевода
trans\tranid номер перевода номер перевода в системе учета отправителя; любое целое число без знака(целое число > 0; максимально 2 31 -1), должно быть уникальным в пределах WMID, который подписывает запрос. Два перевода с одним и тем же tranid с одного WMID (даже с разных кошельков) осуществить невозможно. Уникальность значения tranid контролируется в интервале не менее одного года.
trans\pursesrc номер кошелька с которого выполняется перевод (отправитель)  
trans\pursedest номер кошелька, на который выполняется перевод (получатель)  
trans\amount переводимая сумма число с плавающей точкой (разделитель - .(точка) ) и для десяти с половиной может выглядеть так: 10.5; незначащие нули в конце и точка, если число целое, должны отсутствовать, например, 10.50 - не верно, 10.5 - верно, 9. - не верно, 9 - верно)
trans\period срок протекции сделки в днях целое число от 0 до 120; 0 - без протекции
trans\pcode код протекции сделки произвольная строка от 5 до 255 символов; пробелы в начале или конце не допускаются
trans\desc описание оплачиваемого товара или услуги произвольная строка от 0 до 255 символов; пробелы в начале или конце не допускаются, в кодировке Win1251
trans\wminvid номер счета (в системе WebMoney), по которому выполняется перевод целое число > 0; если 0 - перевод не по счету; максимально 2 31 -1
trans\onlyauth учитывать разрешение получателя обязательный! 1 - перевод будет выполняться только если получатель разрешает перевод (в противном случае код возврата - 35). Получатель может запретить переводить себе средства в двух случаях. В первом, если отправитель является корреспондентом получателя и получатель явно в свойствах корреспондента (раздел ограничения) запретил ему совершать в свою пользу транзакции и во-втором, если отправитель не является корреспондентом и получатель запретил всем неавторизованным (не являющимся его корреспондентами) совершать в свою пользу транзакции.
wmb_denomination признак деноминации обязательный! 1 - перевод будет выполняться только если отправитель передает данный параметр

Примечание!
Значение параметра trans\amount (переводимая сумма) не может быть меньше значения, приведенного в таблице:

тип минимальное значение
WMZ 0.01
WME 0.01
WMR 0.01
WMU 0.01
WMB 0.01
WMG 0.01
WMX 0.01
  • формат ответа:
<w3s.response>
    <reqn></reqn>
    <retval></retval>
    <retdesc></retdesc>
        <operation id="n1" ts="n2">
            <tranid></tranid>
            <pursesrc></pursesrc>
            <pursedest></pursedest>
            <amount></amount>
            <comiss></comiss>
            <opertype></opertype>
            <period></period>
            <wminvid></wminvid>
            <orderid></orderid>
            <desc></desc>
            <datecrt></datecrt>
            <dateupd></dateupd>
        </operation>
</w3s.response>
  • параметры ответа:
название назначение примечание
reqn номер запроса  
retval код выполнения запроса 0 - запрос выполнен; остальные коды см. ниже
retdesc расшифровка кода выполнения запроса  
operation параметры выполненного перевода (транзакции) атрибут id - уникальный номер транзакции в системе учета WebMoney, атрибут ts - служебный номер транзакции в системе учета WebMoney
operation\tranid номер перевода номер перевода в системе учета отправителя; любое целое число без знака, должно быть уникальным (два перевода с одним и тем же tranid невозможны)
operation\pursesrc номер кошелька с которого выполняется перевод (отправитель)  
operation\pursedest номер кошелька, на который выполняется перевод (получатель)  
operation\amount сумма платежа число с плавающей точкой (разделитель - .(точка) ) и для десяти с половиной может выглядеть так: 10.5; незначащие нули в конце и точка, если число целое, должны отсутствовать, например, 10.50 - не верно, 10.5 - верно, 9. - не верно, 9 - верно)
operation\comiss комиссия за выполненный платеж число с плавающей точкой (разделитель - .(точка) ) и для десяти с половиной может выглядеть так: 10.5; незначащие нули в конце и точка, если число целое, должны отсутствовать, например, 10.50 - не верно, 10.5 - верно, 9. - не верно, 9 - верно)
operation\opertype тип перевода (платежа) 0 - обычный; 4 - с протекцией
operation\period срок протекции сделки в днях целое число от 0 до 255; если 0 - платеж без протекции сделки
operation\wminvid номер счета (в системе WebMoney), по которому выполняется перевод целое число > 0; если 0 - перевод не по счету
operation\orderid номер счета (в системе магазина, выдавшего счет), по которому выполняется перевод целое число > 0; если 0 - перевод не по счету
operation\desc описание оплачиваемого товара или услуги  
operation\datecrt дата и время выполнения операции  
operation\dateupd дата и время последнего изменения состояния операции  
  • код выполнения запроса:
код описание
-100 общая ошибка при разборе команды. неверный формат команды.
-110 запросы отсылаются не с того IP адреса, который указан при регистрации данного интерфейса в Технической поддержке.
-1 неверное значение поля w3s.request/reqn
-2 неверное значение поля w3s.request/sign
-3 неверное значение поля w3s.request/trans/tranid
-4 неверное значение поля w3s.request/trans/pursesrc
-5 неверное значение поля w3s.request/trans/pursedest
-6 неверное значение поля w3s.request/trans/amount
-7 неверное значение поля w3s.request/trans/desc
-8 слишком длинное поле w3s.request/trans/pcode
-9 поле w3s.request/trans/pcode не должно быть пустым если w3s.request/trans/period > 0
-10 поле w3s.request/trans/pcode должно быть пустым если w3s.request/trans/period = 0
-11 неверное значение поля w3s.request/trans/wminvid
-12 идентификатор переданный в поле w3s.request/wmid не зарегистрирован
-14 проверка подписи не прошла
-15 неверное значение поля w3s.request/wmid
-17 не передан признак деноминации
102 не выполнено условие постоянного увеличения значения параметра w3s.request/reqn
103 транзакция с таким значением поля w3s.request/trans/tranid уже выполнялась
110 нет доступа к интерфейсу
111 попытка перевода с кошелька не принадлежащего WMID, которым подписывается запрос; при этом доверие не установлено.
4, 15, 19, 23 внутренняя ошибка при создании транзакции
5 идентификатор отправителя не найден
6 корреспондент не найден
7 кошелек получателя не найден
11 кошелек отправителя не найден
13 сумма транзакции должна быть больше нуля
17 недостаточно денег в кошельке для выполнения операции
18 указанная транзакция (wmtransid) не найдена, возникает, например, когда указанная к возврату и завершению операция с протекцией уже завершена или возвращена
20 указанный для завершения транзакции с протекцией код протекции неверен
21 счет, по которому совершается оплата не найден
22 по указанному счету оплата с протекцией не возможна
25 время действия оплачиваемого счета закончилось
26 в операции должны участвовать разные кошельки
29 типы кошельков отличаются
30 кошелек не поддерживает прямой перевод (например для кредитных кошельков C или D)
32, 34 плательщику необходимо заполнить персональную информацию на сайте Центра Аттестации
35 плательщик не авторизован корреспондентом для выполнения данной операции
58 превышен лимит средств на кошельках получателя
72 Обслуживание на вывод средств в WME временно приостановлено, ознакомьтесь с требованиями Гаранта по идентификации
73, 74 Обслуживание получателя средств в WME временно приостановлено, ознакомьтесь с требованиями Гаранта по идентификации
75 Код протекции должен иметь длину не меньше 5-ти символов

см. также
XML-Интерфейсы
Автоматизация выполнения и приема платежей в Бюджетном автомате