ДеньгиOnline

2017-07-29 03:29:06

Мобильный платеж Мегафон, Билайн или МТС

Параметры запроса от Проекта в Систему 

При выставлении счёта на оплату с помощью мобильного платежа в фоновом режиме параметр mode_type принимает специальное значение mobilePayment.

При этом к набору параметров, передаваемых для выставления счёта в обычном режиме, добавляется ещё три обязательных параметра:

Параметр Описание параметра Формат параметра Обязательность параметра
mode_type Идентификатор фонового метода оплаты mobilePayment Да
sendMobilePayment Идентификатор метода оплаты “мобильный платёж” 1 Да
qiwi_phone Номер мобильного телефона, со счёта которого будет производиться платёж 10 цифр (без кода страны) Да
md5

Контрольная подпись запроса. Формируется как хэш по алгоритму md5 от конкатенации следующих параметров, приведенных к нижнему регистру:

  1. секретный ключ проекта,
  2. ID проекта в Системе,
  3. значение параметра nickname,
  4. значение параметра amount,
  5. значение параметра qiwi_phone,
  6. секретный ключ проекта
md5(strtolower(секрет проекта.project.nickname.floatval(amount).phone.секрет проекта))

Да

 

 

Параметры ответа Системы

Ответ Системы в формате XML и кодировке UTF-8 содержит следующий набор параметров:

Параметр Описание параметра Формат параметра
status Код статуса выставления счета 0 - запрос успешно обработан,
-1 - ошибка при запросе
comment Текстовая расшифровка статуса или перечисление всех обнаруженных ошибок string
ODpaymentID В случае успешного платежа - идентификатор платежа в Системе integer

Пример ответа в случае успешного выставления и оплаты счёта:

<?xml version="1.0" encoding="UTF-8"?>
<response>
	<status>0</status>
	<comment>Запрос успешно обработан</comment>
	<ODpaymentID>3386642</ODpaymentID>
</response> 

Пример ответа в случае ошибки выставления счёта:

<?xml version="1.0" encoding="UTF-8"?>
<response>
	<status>-1</status>
	<comment><![CDATA[Номер абонента не указан или не является номером: Мегафон, Билайн, МТС]]></comment>
</response>

Пример реализации запроса на выставления счёта на оплату мобильным платежом Мегафон, Билайн или МТС (PHP)

<?php
$secret = 'XXXXXX';

$vars = array(
	'project' => 123,
	'nickname' => 'payment to test project',
	'mode_type' => 'mobilePayment',
	'amount' => 10,
	'qiwi_phone' => '9211234567',
	'sendMobilePayment' => 1,
    'paymentCurrency' => 'RUB'
);
$vars['md5'] = md5(strtolower($secret.$vars['project'].$vars['nickname'].floatval($vars['amount']). $vars['qiwi_phone'].$secret));
$vars = http_build_query($vars);
$ch = curl_init('https://www.onlinedengi.ru/wmpaycheck.php');

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $vars);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$res = curl_exec($ch);
curl_close($ch);
?>