Web Merchant Interface

Описание интерфейса сервиса Web Merchant Interface

дата последнего изменения: 11 июля 2025

Содержание

Основные термины

Продавцом считается участник WebMoney Transfer, принимающий на свой WM-кошелек оплату от других участников системы с помощью сервиса Web Merchant Interface. Предполагается, что продавец принимает оплату за товары или услуги, предоставляемые им через Интернет, и следовательно, имеет собственный веб-сайт.

Покупателем считается участник WebMoney Transfer, желающий оплачивать услуги или товары, предлагаемые продавцом через Интернет.

Описание интерфейса Web Merchant Interface

ПАРАМЕТРЫ ПРИЕМА ПЛАТЕЖЕЙ

Помимо регистрации в WebMoney Transfer для приема платежей через сервис Web Merchant Interface продавец должен настроить ряд параметров, регулирующих порядок приема платежей и оповещения продавца о факте проведения платежа.

Настройка параметров выполняется на странице Настройки сайта сервиса — merchant.webmoney.com.

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

Полный перечень параметров и их назначение приведено ниже:

Название параметра Формат Описание
Тестовый/Рабочий режимы - Флаг, устанавливающий режим обработки платежей в сервисе. В тестовом режиме Web Merchant Interface имитирует выполнение платежей (реально платежи не выполняются). По умолчанию выставляется тестовый режим. В тестовом режиме возможна оплата только через WM Keeper. Если флаг установлен в состояние "Выкл.", Web Merchant Interface во всех случаях будет сообщать покупателю о невозможности выполнения платежа. В рабочем режиме платежи идут обычным порядком.
Торговое имя 50 символов Информация, которая будет показана покупателю при оплате. В данном поле целесообразно указать торговую марку, название сайта, сервиса, магазина и другую информацию, которая характеризует продаваемые через данный кошелек товары и услуги.
Secret Key 50 символов (case sensitive) Строка символов, добавляемая к реквизитам платежа, высылаемым продавцу вместе с оповещением на Result URL. Эта строка используется для повышения надежности идентификации высылаемого оповещения. Содержание строки известно только сервису Web Merchant Interface и продавцу!
Эта же строка символов используется в XML-интерфейсах, связанных с Web Merchant Interface и помогающих в его работе и использовании. К таким интерфейсам относятся, например, Интерфейс X18 или Интерфейс X20.
Высылать Secret Key на Result URL, если Result URL обеспечивает секретность - Флаг, сообщающий сервису Web Merchant Interface о том, что Secret Key должен быть добавлен к высылаемому на веб-сайт продавца оповещению о платежах в том случае, если канал обеспечивает безопасную передачу на Result URL (используется протокол SSL, то есть Result URL имеет префикс "https://").
Если Result URL не использует SSL, то Secret Key высылаться не будет, даже если флаг установлен. Secret Key также не высылается, если Result URL переопределяется в форме запроса платежа (когда установлен флаг Позволять использовать URL, передаваемые в форме).
Secret Key X20 50 символов (case sensitive) Если продавец использует Интерфейс X20, чтобы встроить прием платежей в свое мобильное приложение или сервис, то зачастую необходимо осуществлять вызов интерфейса непосредственно из клиентского приложения (то есть для простых приложений и сервисов без участия серверной части или вообще при ее отсутствии), поэтому в целях безопасности нежелательно в вызовах интерфейса пользоваться стандартным Secret Key, чтобы его не скомпрометировать. Для этого можно указать в данном поле дополнительный Secret Key X20 и тогда Интерфейс X20 будет работать ТОЛЬКО с этой строкой.
Также Secret Key X20 должен быть ОБЯЗАТЕЛЬНО указан в случае включения флага Обязательно требовать подпись платежной формы, так как он используется в процессе формирования данной подписи.
Result URL 255 символов (case sensitive) URL (на веб-сайте продавца), на который сервис Web Merchant Interface посылает HTTP POST или SMTP-оповещение о совершении платежа с его детальными реквизитами. URL должен начинаться с префикса "http://", "https://" или "mailto:". В последнем случае оповещение будет высылаться на e-mail, указанный после префикса, - например, при указании mailto: оповещение будет выслано на e-mail .
При использовании префикса "http://" или "https://" сервис посылает оповещение по портам 80 и 443 соответственно. Причем вызов Result URL выполняется два раза. Первый раз непосредственно перед выполнением платежа (для проверки работоспособности веб-сайт продавца), второй раз сразу после успешного выполнения платежа (для передачи параметров платежа). При первом вызове, если установлен флаг Передавать параметры в предварительном запросе, параметры предаются с использованием Формы предварительного запроса. Если флаг не установлен - вызов идет без параметров. При втором вызове параметры передаются через Форму оповещения о платеже. Сервер должен вернуть код 200, согласно протокола HTTP.
Передавать параметры в предварительном запросе - Флаг, сообщающий сервису Web Merchant Interface о том, что в запросе передаваемом на Result URL веб-сайта продавца непосредственно перед попыткой выполнение платежа необходимо передать параметры через Форму предварительного запроса. В случае если флаг не установлен Предварительный запрос идет без передачи параметров.
Если флаг передачи параметров установлен, веб-сайт продавца должен вернуть строку "YES" в ответе (строго 3 этих символа в верхнем регистре и только их в теле возвращаемого html-документа, без каких-либо еще тегов, форматирования и т.п.) для того, чтобы сервис Web Merchant Interface смог продолжить выполнение платежа. Если веб-сайт продавца вернет что-либо другое - платеж выполнен не будет, а ответ будет показан покупателю в сообщении об ошибке. Поэтому в случае принятия решения на предзапросе о том, что платеж не будет проведен, необходимо возвратить в теле возвращаемого html-документа подробный текст ошибки с инструкцией пользователю, почему платеж не может быть проведен и что необходимо сделать пользователю, чтобы платеж прошел.
Proxy для Result URL - Когда по каким-либо причинам вызовы Result URL не проходят со стандартных IP адресов системы из-за ошибок маршрутизации, ограничений накладываемых провайдерами и т.п. можно выбрать один из перечисленных в данной настройке IP-адресов и запросы сервиса на Result URL будут приходить с выбранного адреса.
Success URL 255 символов (case sensitive) URL (на веб-сайте продавца), на который будет переведен интернет-браузер покупателя в случае успешного выполнения платежа в сервисе Web Merchant Interface. URL должен иметь префикс "http://" или "https://".
Метод вызова Success URL - Метод (POST, GET или LINK), который будет использоваться при переходе на Success URL.
Fail URL 255 символов (case sensitive) URL (на веб-сайте продавца), на который будет переведен интернет-браузер покупателя в том случае, если платеж в сервисе Web Merchant Interface не был выполнен по каким-то причинам. URL должен иметь префикс "http://" или "https://".
Метод вызова Fail URL - Метод (POST, GET или LINK), который будет использоваться при переходе на Fail URL.
Позволять использовать URL, передаваемые в форме - Флаг, оповещающий Web Merchant Interface о том, что Result URL, Success URL, метод вызова Success URL, Fail URL и метод вызова Fail URL могут быть изменены в Форме запроса платежа.
Высылать оповещение об ошибке платежа на кипер - Флаг, оповещающий Web Merchant Interface о том, что в случае возникновения ошибки при выполнении платежа необходимо послать оповещение на кипер продавца.
Высылать оповещение об ошибке платежа на Result URL - Флаг, оповещающий Web Merchant Interface о том, что в случае возникновения ошибки при выполнении платежа необходимо послать оповещение на Result URL продавца.
Метод формирования контрольной подписи оповещения о платеже - Алгоритм, который Web Merchant Interface использует для контроля подлинности оповещения, высылаемого на сайт продавца при выполнении платежа через сервис. Поддерживается два варианта: SHA256 и SIGN (MD5 не поддерживается, но оставлен для совместимости со старыми настройками).
Обязательно требовать подтверждение транзакции по СМС - В случае включения данной опции покупатели смогут совершить оплату на кошелек, только с подтверждением через второй фактор SMS или Enum. Данная опция касается только платежей в WM и не касается дополнительных методов оплаты.
Обязательно требовать подпись платежной формы - Включение данной опции требует от продавца вместе со стандартными полями обязательную передачу поля LMI_PAYMENTFORM_SIGN, содержащего подпись основных полей платежа, передаваемых в Форме запроса платежа. Подробнее о том как сформировать данное поле см. его описание ниже в Форме запроса платежа. Если данный флаг включен а в Форме запроса платежа поле LMI_PAYMENTFORM_SIGN не передается, то покупателю будет выдана ошибка.
Дополнительные методы оплаты - В данном разделе настроек содержатся дополнительные методы оплаты, такие как чеки Paymer, ВМ-чеки , банковские карты, счета мобильных телефонов и т.п. Полный перечень дополнительных методов зависит от типа кошелька. Ссылки на подробные описания каждого способа, условия его использования и включения приведены непосредственно в каждом из способов на странице настроек кошелька

Алгоритм выполнения платежа

Алгоритм выполнения платежа представлен на рисунке ниже.

ФОРМЫ HTML

Для передачи информации между веб-сайтом продавца и сервисом Web Merchant Interface используютcя пять основных HTML-формы:

  • Форма запроса платежа - генерируется веб-сайтом продавца для формирования запроса на проведение платежа в сервисе Web Merchant Interface и передачи его через веб-браузер покупателя.
  • Форма предварительного запроса - генерируется сервисом Web Merchant Interface для передачи параметров предварительного запроса на выполнение платежа на веб-сайт продавца, если установлен флаг Передавать параметры в предварительном запросе. Если флаг не установлен - не используется (запрос выполняется без параметров). Запрос передается без использования веб-браузера покупателя.
  • Форма оповещения о платеже - генерируется сервисом Web Merchant Interface для передачи оповещения о платеже на веб-сайт продавца. Оповещение передается без использования веб-браузера покупателя.
  • Форма выполненного платежа - генерируется сервисом Web Merchant Interface в случае успешного выполнения платежа и передается на веб-сайт продавца через веб-браузер покупателя.
  • Форма невыполненного платежа - генерируется сервисом Web Merchant Interface в случае невыполнения платежа и передается на веб-сайт продавца через веб-браузер покупателя.

Форма запроса платежа

Эта форма передает запрос с веб-сайта продавца в сервис Web Merchant Interface через веб-браузер покупателя. Она должна иметь следующие атрибуты и поля:

Action - https://merchant.webmoney.com/lmi/payment_utf.asp

Method - POST

accept-charset - UTF-8

content-type - application/x-www-form-urlencoded

Fields - поля, передаваемые в форме, описаны в таблице ниже:

Название HTML Field Name Обязательный? Описание
Кошелек продавца LMI_PAYEE_PURSE Да Кошелек продавца, на который покупатель должен совершить платеж. Формат - буква и 12 цифр.
В настоящее время допускается использование кошельков Z-,E-, G-,X-,H-,L-,S-,F-,T-, M- и D-типа.
Сумма платежа LMI_PAYMENT_AMOUNT Да Сумма платежа, которую продавец желает получить от покупателя. Сумма должна быть больше нуля, дробная часть отделяется точкой.
Внутренний номер покупки продавца LMI_PAYMENT_NO Нет В этом поле продавец задает номер покупки в соответствии со своей системой учета. Несмотря на то, что параметр не является обязательным, мы рекомендуем всегда задавать его. Желательно использовать уникальный номер для каждого платежа, что позволит быстро получить относящуюся к нему информацию через другие интерфейсы системы WebMoney Transfer.
Номер должен представлять собой целое число без знака не больше 999999999999999.
Назначение платежа LMI_PAYMENT_DESC Да* Описание товара или услуги. Формируется продавцом.
Если присутствует, добавляется в назначение платежа в операцию перевода WebMoney. Максимальная длина - 255 символов. Кодировка UTF-8
Назначение платежа LMI_PAYMENT_DESC_BASE64 Да* Описание товара или услуги в UTF-8 и далее закодированное алгоритмом Base64. Формируется продавцом. Если присутствует, то результат раскодирования будет подставлен вместо LMI_PAYMENT_DESC. Позволяет не зависеть от кодировки на сайте продавца.
Режим тестирования LMI_SIM_MODE Нет Дополнительное поле, определяющее режим тестирования. Действует только в режиме тестирования и может принимать одно из следующих значений:
0 или отсутствует: Для всех тестовых платежей сервис будет имитировать успешное выполнение;
1: Для всех тестовых платежей сервис будет имитировать выполнение с ошибкой (платеж не выполнен);
2: Около 80% запросов на платеж будут выполнены успешно, а 20% - не выполнены.
Замена Result URL LMI_RESULT_URL Нет Это поле позволяет продавцу временно изменить параметр "Result URL", установленный продавцом на странице настроек сайта Web Merchant Interface.
Если в настройках установлен флаг "Позволять использовать URL, передаваемые в форме", то передаваемое значение заменяет значение параметра "Result URL", установленное в настройках на сайте Web Merchant Interface. В противном случае всегда используется значение, установленное в настройках на сайте Web Merchant Interface.
Формат этого поля должен строго соответствовать значению параметра "Result URL".
Замена Success URL LMI_SUCCESS_URL Нет Это поле позволяет продавцу временно изменить параметр "Success URL", установленный им на странице настроек сайта Web Merchant Interface.
Если в настройках установлен флаг "Позволять использовать URL, передаваемые в форме", то передаваемое значение заменяет значение параметра "Success URL", установленное в настройках на сайте Web Merchant Interface. В противном случае всегда используется значение, установленное в настройках на сайте Web Merchant Interface.
Формат этого поля должен строго соответствовать значению параметра "Success URL".
Замена метода вызова Success URL LMI_SUCCESS_METHOD Нет Это поле позволяет продавцу временно изменить параметр "Метод вызова Success URL", установленный им на странице настроек сайта Web Merchant Interface.
Если в настройках установлен флаг "Позволять использовать URL передаваемые в форме", то передаваемое в форме значение заменяет значение параметра "Метод вызова Success URL", установленное в настройках на сайте Web Merchant Interface. В противном случае всегда используется значение, установленное в настройках на сайте Web Merchant Interface.
Это поле должно принимать значение 0, 1 или 2, что соответствует значениям параметра "Метод вызова Success URL" - "GET", "POST" или "LINK".
Замена Fail URL LMI_FAIL_URL Нет Это поле позволяет продавцу временно изменить параметр "Fail URL", установленный им на странице настроек сайта Web Merchant Interface.
Если в настройках установлен флаг "Позволять использовать URL, передаваемые в форме", то передаваемое в форме значение заменяет значение параметра "Fail URL", установленное в настройках на сайте Web Merchant Interface. В противном случае всегда используется значение, установленное в настройках на сайте Web Merchant Interface.
Формат этого поля должен строго соответствовать значению параметра "Fail URL".
Замена метода вызова Fail URL LMI_FAIL_METHOD Нет Это поле позволяет продавцу временно изменить параметр "Метод вызова Fail URL", установленный им на странице настроек сайта Web Merchant Interface.
Если в настройках установлен флаг "Позволять использовать URL передаваемые в форме", то передаваемое в форме значение заменяет значение параметра "Метод вызова Fail URL", установленное в настройках на сайте Web Merchant Interface. В противном случае всегда используется значение, установленное в настройках на сайте Web Merchant Interface.
Это поле должно принимать значение 0, 1 или 2, что соответствует значениям параметра "Метод вызова Fail URL" - "GET", "POST" или "LINK".
Скрытие методов оплаты LMI_HIDE_DISABLED Нет Продавец может опционально скрывать методы оплаты (отображающиеся в выпадающем меню на странице авторизации), которые не подключены для торгового кошелька передавая значение параметра 1
Номер ВМ-карты LMI_PAYMER_PINNUMBERINSIDE Нет Продавец может опционально реализовать у себя на сайте при выборе способа платежа отдельный способ оплаты для Вебмани карт (скретч карт) или чеков Paymer. В этом случае у покупателя, при выборе им такого способа оплаты, можно прямо на сайте продавца спросить номер карты (чека), которым он будет платить и передать его в этом поле, тогда покупатель будет сразу перенаправлен на итоговую страницу ввода кода чека (карты), а страница выбора способов платежа будет просто автоматически пропущена.
Email покупателя LMI_PAYMER_EMAIL Нет Если продавцу известен Email покупателя, то он может передать его в этом поле и тогда покупателю не нужно будет вводить его при оплате WM-картой, чеком Пеймер.
Email покупателя EMAIL Нет Если продавцу известен Email покупателя, то он может передать его в этом поле и тогда покупателю не нужно будет вводить его при оплате через способы, которые требуют его заполнения (Bitcoin, Litecoin, Ethereum, USDT, Monero, с карты на карту, Alipay P2P
Номер WebMoney Check LMI_WMCHECK_NUMBERINSIDE Нет Продавец может опционально реализовать у себя на сайте при выборе способа платежа отдельный способ оплаты для Вебмани чека. В этом случае у покупателя при выборе им такого способа оплаты можно прямо на сайте продавца спросить номер чека (номер его мобильного телефона), которым он будет платить и передать его в этом поле, тогда покупатель будет сразу спозиционирован на способ оплаты Webmoney check и покупателю останется только ввести свой пароль, чтобы продолжить платеж.
Пароль от WebMoney check LMI_WMCHECK_CODEINSIDE Нет если поле LMI_WMCHECK_NUMBERINSIDE заполнено, то в данном поле можно спросить у покупателя и передать его пароль от Вебмани чека, тогда покупатель будет сразу перенаправлен на итоговую страницу ввода отправленного ему одноразового кода по СМС, а страница выбора способов платежа будет просто автоматически пропущена. С точки зрения безопасности можно не бояться спрашивать у покупателя пароль, так как по сути он позволяет только читать информацию (история платежей, баланс), а для того чтобы заплатить, нужен только одноразовый СМС-код, отправка и ввод которого проиводится в безопасном режиме только на сайте WebMoney.merchant
Тип e-invoicing платежа LMI_ALLOW_SDP Нет Указание данного поля позволяет продавцу сделать так, что покупатель не будет направляться на страницу авторизации (выбора способа оплаты и т.п.) , а сразу попадать на нужный способ оплаты e-invoicing. При формировании платежной формы продавец может указать для этого следующие цифровые значения: 19 - Bitcoin, 20 - кошелек RunPay MDL, 26 - Litecoin, 27 - Ethereum, 28 - USDT, 29 - Банковские карты P2P, 30 - Monero, 31 - Alipay P2P
Номер телефона для быстрого платежа LMI_FAST_PHONENUMBER Нет В данный момент в сервисе реализована возможность любому участнику системы заплатить продавцу быстро, имея под рукой только мобильный телефон и зная его номер, по указанному номеру система сама найдет нужный ВМ-идентификатор или ВМ-чек и произведет оплату после ввода пользователем присланного SMS или USSD кода. Если Вы знаете (например из профайла) номер мобильного телефона покупателя (в международном формате без посторонних символов подряд только цифры) то передайте его в этом поле и покупателю не нужно будет его вводить
Срок кредитования LMI_PAYMENT_CREDITDAYS Нет В случае если продавец продает свои товары в кредит и получает платежи на кошелек типа D, то в данном параметре указывается срок кредитования в днях. Если в случае приема платежей на кошелек типа D данный параметр не указан, то по умолчанию срок кредитования принимается равным 30 дням. Настоятельно рекомендуем при указании данного параметра обязательно проверять его соответствие в предварительном запросе или оповещении о платеже. Подробнее о кредитовании можно прочитать здесь.
Номер магазина LMI_SHOP_ID Нет Данный параметр обязателен к указанию только для агрегаторов (сервисы посредники осуществляющие прием платежей в пользу третьих лиц). В данном поле агрегаторы обязаны передавать регистрационный номер магазина в каталоге Мегасток в пользу которого осуществляется прием данного платежа
Подпись формы LMI_PAYMENTFORM_SIGN Нет Данное поле должно быть обязательно передано в случае, если в настройках кошелька установлен флаг Обязательно требовать подпись платежной формы, если его не передать, то покупателю будет выдана ошибка. В случае если поле передается, а флаг Обязательно требовать подпись платежной формы не установлен, то покупателю также будет выдана ошибка. Иными словами необходимо включить флаг и передавать поле или не включать и не передавать.
Поле формируется путем хэширования алгоритмом SHA256 строки, содержащей три других значимых поля формы запроса платежа и значения Secret Key X20 (из настроек кошелька), разделенных точкой с запятой. Строка для подписи формируется так:
 LMI_PAYEE_PURSE;LMI_PAYMENT_AMOUNT;LMI_PAYMENT_NO;Secret Key X20;
или
 LMI_PAYEE_PURSE;LMI_PAYMENT_AMOUNT;LMI_HOLD;LMI_PAYMENT_NO;Secret Key X20;
, если LMI_HOLD присутствует
Если в форме реально будут переданы не те параметры, которые участвовали в хэшировании, то покупателю будет выдана ошибка, поэтому следите за тем, чтобы с момента формирования подписи поля никак не форматировались и были переданы в форму в неизмененном виде!
Срок холдирования LMI_HOLD Нет Срок холдирования платежа (блокировки средств). Если данный параметр передан, то совершается транзакция с протекцией по времени на указанное количество суток. Для зачисления средств продавец должен завершить операцию с сайта merchant.webmoney.com или вызвать XML-интерфейс X5, если продавец не сделает данных действий, то по истечении указанного срока средства возвращаются плательщику.
Досрочный возврат выполняется на странице merchant.webmoney.com или через XML-интерфейс X13
Данный способ доступен только при совершении платежа с кошелька WebMoney
Использование данного параметра возможно только если используется подпись формы запрос платежа!
Дополнительные параметры продавца Определяется продавцом Нет Все поля формы, не имеющие в названии префикса "LMI_" или "__", обрабатываются сервисом Web Merchant Interface автоматически и передаются на веб-сайт продавца.

* - Только один из параметров LMI_PAYMENT_DESC или LMI_PAYMENT_DESC_BASE64 должен присутствовать обязательно!

В поле Action формы у продавца всегда есть возможность спозиционировать покупателя сразу же на какой то определенный способ (вариант) оплаты. Это очень удобно, когда продавец полноценно реализует подключение магазина со всеми возможными опциями. Для этого служит параметр at в URL запроса, например, если произвести передачу платежной формы по URL https://merchant.webmoney.com/lmi/payment_utf.asp?at=authtype_8, то покупатель будет сразу же спозиционирован на оплату с WebMoney кошелька, а если at=authtype_3, то с WebMoney карты. Если данный параметр не указан, то покупателю автоматически выбирается способ, который он выбрал и использовал при предыдущей оплате. Все доступные способы позицинирования перечислены ниже:

  • authtype_2 Keeper WebPro
  • authtype_3 WebMoney-карта/Чек Paymer (настоятельно рекомендуем, если на сайте продавца платеж скретч ВМ-картой/чеком Paymer вынесен в отдельный пункт, сразу спросить у покупателя номер ВМ-карты/чека Paymer и передать его в параметре LMI_PAYMER_PINNUMBERINSIDE , в этом случае позиционирование будет не нужно и покупатель сразу попадет на нужную страницу, минуя этап выбора способа платежа и ввода номера ВМ-карты/чека Paymer)
  • authtype_8 Keeper WinPro
  • authtype_9 Keeper Standard
  • authtype_13 WebMoney чек
  • authtype_17 быстрый платеж с указанием мобильного телефона (если продавцу известен номер мобильного телефона покупателя в международном формате, то он может передать его в параметре LMI_FAST_PHONENUMBER и в этом случае покупателю не нужно будет вводить его у нас на сайте при проведении быстрого платежа)
  • authtype_20 Bitcoin
  • authtype_22 RunPay MDL
  • authtype_26 Litecoin
  • authtype_27 Ethereum
  • authtype_28 USDT

Обратите внимание, что данный способ позиционирования метода оплаты, работает только для покупателей, которые не авторизованы. Если покупатель был авторизован ранее, и Вы хотите переопределить способ оплаты, то необходимо работать с параметром LMI_ALLOW_SDP

Пример 1. Фрагмент "Формы запроса платежа" без замены URL

 
<html> 
<head>
 ... 
</head> 
<body> ...
<form method="POST" action="https://merchant.webmoney.com/lmi/payment_utf.asp" accept-charset="utf-8">  
  <input type="hidden" name="LMI_PAYMENT_AMOUNT" value="12.08">
  <input type="hidden" name="LMI_PAYMENT_DESC" value="платеж по счету">
  <input type="hidden" name="LMI_PAYMENT_NO" value="1234">
  <input type="hidden" name="LMI_PAYEE_PURSE" value="Z145179295679">
  <input type="hidden" name="LMI_SIM_MODE" value="0">
  <input type="hidden" name="FIELD_1" value="VALUE_1">
  <input type="hidden" name="FIELD_2" value="VALUE_2">
  ... 
  <input type="hidden" name="FIELD_N" value="VALUE_N"> 
  ... 
</form>
... 
</body>
</html>

Пример 2. Фрагмент "Формы запроса платежа" с заменой URL

<html>
<head>
 ... 
</head> 
<body> 
... 
<form method="POST" action="https://merchant.webmoney.com/lmi/payment_utf.asp" accept-charset="utf-8">
  <input type="hidden" name="LMI_PAYMENT_AMOUNT" value="12.08">
  <input type="hidden" name="LMI_PAYMENT_DESC" value="платеж по счету">
  <input type="hidden" name="LMI_PAYMENT_NO" value="1234">
  <input type="hidden" name="LMI_PAYEE_PURSE" value="Z145179295679">
  <input type="hidden" name="LMI_SIM_MODE" value="0">
  <input type="hidden" name="LMI_RESULT_URL" value="http://www.shop.com/result.asp">
  <input type="hidden" name="LMI_SUCCESS_URL" value="http://www.shop.com/success.html">
  <input type="hidden" name="LMI_SUCCESS_METHOD" value="2">
  <input type="hidden" name="LMI_FAIL_URL" value="http://www.shop.com/fail.html">
  <input type="hidden" name="LMI_FAIL_METHOD" value="2">
  <input type="hidden" name="FIELD_1" value="VALUE_1">
  <input type="hidden" name="FIELD_2" value="VALUE_2">
  ...
  <input type="hidden" name="FIELD_N" value="VALUE_N">
  ... 
</form>
 .. 
</body> 
</html>

Обратите внимание на ОБРАЗЦОВУЮ реализацию формы запроса платежа в магазине Плати.ру , в котором реализованы все возможности выбора способов платежа и прямого позиционирования покупателя на нужный способ с уже имеющимися данными.

Другой способ создания формы платежа предоставляет XML-интерфейс X22. С его помощью можно предварительно зафиксировать параметры платежа и сразу получить универсальную ссылку, которая может быть передана любыми способами связи. Такая ссылка обеспечивает несколько вариантов безопасного платежа: в мобильном WM Keeper, считав QR-код, или перейдя по ссылке из мобильного браузера; в браузере на десктопе — с помощью обычной формы платежа с заранее установленными параметрами.

Холдирование платежа

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

Параметр LMI_HOLD - срок холдирования платежа. Если данный параметр передан, то совершается транзакция с протекцией по времени на указанное количество суток. Для зачисления средств продавец должен завершить операцию с сайта merchant.webmoney.com или вызвать XML-интерфейс, если продавец не сделает данных действий, то по истечении указанного срока средства возвращаются плательщику.
Досрочный возврат выполняется на странице merchant.webmoney.com или через XML-интерфейс
Данный способ доступен только при совершении платежа с кошелька WebMoney
Использование данного параметра возможно только если используется подпись формы запрос платежа!

Форма предварительного запроса

Эта форма передает продавцу параметры выполняемого платежа непосредственно перед его выполнением. Она имеет следующие атрибуты и поля:

Action - Result URL

Method - POST

Fields - поля, передаваемые в форме, описаны в таблице ниже:

Название HTML Field Name Описание
Индикатор предварительного запроса LMI_PREREQUEST 1
Кошелек продавца LMI_PAYEE_PURSE Кошелек продавца, на который покупатель совершил платеж. Формат - буква и 12 цифр.
Сумма платежа LMI_PAYMENT_AMOUNT Сумма, которую заплатил покупатель. Дробная часть отделяется точкой.
Внутренний номер покупки продавца LMI_PAYMENT_NO В этом поле передается номер покупки в соответствии с системой учета продавца, полученный сервисом с веб-сайта продавца.
Флаг тестового режима LMI_MODE Указывает, в каком режиме выполнялась обработка запроса на платеж. Может принимать два значения:
0: Платеж выполнялся в реальном режиме,