Чтобы использовать API, Вам необходимо связаться с нами и получить ID, пароль и ключ. А также согласовать финансы.
Далее необходимо делать HTTP-запросы на URL http://money2mobile.ru/api/, используя полученные ID и пароль (далее [ID] и [pass]) для прохождения HTTP-авторизации с реквизитами "api[ID]":"[pass]", а также полученный ключ (далее [key]) для подписи всех запросов.
{ "error" :"Код ошибки (Integer), 0 означает успешное выполнение операции", "msg" :"Сообщение (String)", # по умолчанию строки JSON передаются в UTF-8, для получения строк в UNICODE передавайте параметр unicode=1 "data" :"Ответные данные, если есть (Object)" }
<?php $operation = ''; $credits = ''; $expire = ''; $code = ''; $wallet = ''; $wallet_type = ''; $phone = ''; $change_wallet = ''; $customer_id = '[ID]'; $pass = '[pass]'; $hash = md5($operation.$credits.$expire.$code.$wallet.$wallet_type.$phone.$change_wallet.$customer_id.'[key]'); $request = "http://money2mobile.ru/api/?" ."&operation=".urlencode($operation) ."&credits=".urlencode($credits) ."&expire=".urlencode($expire) ."&code=".urlencode($code) ."&wallet=".urlencode($wallet) ."&wallet_type=".urlencode($wallet_type) ."&phone=".urlencode($phone) ."&change_wallet=".urlencode($change_wallet) ."&customer_id=".urlencode($customer_id) ."&hash=".urlencode($hash); # Пример на PHP $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERPWD, "api$customer_id:$pass"); curl_setopt($ch, CURLOPT_URL, $request); $json = curl_exec($ch); var_dump ( json_decode( $json) );
Параметр | Описание | Пример |
---|---|---|
operation | установите значение issue | issue |
credits | номинал карты/ЭС в копейках | 2000 |
expire | дата в формате "дд.мм.гггг", до которой карта/ЭС действительна | 28.11.2017 |
customer_id | выданный вам [ID] | 101 |
hash | задается как MD5-хэш от строки, составленной из значений параметров [operation][credits][expire][customer_id][key] | b11e36cadfee38cf5c659f7503b311a8 |
http://money2mobile.ru/api/?operation=issue&credits=2000&expire=28.11.2017&customer_id=101&hash=b11e36cadfee38cf5c659f7503b311a8
<?php # Пример на PHP $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERPWD, "api[ID]:[pass]"); curl_setopt($ch, CURLOPT_URL, "http://money2mobile.ru/api/?operation=issue&credits=2000&expire=28.11.2017&customer_id=101&hash=b11e36cadfee38cf5c659f7503b311a8"); $json = curl_exec($ch); var_dump ( json_decode( $json) );
{ "error":0, "msg":"Карта выпущена.", "data": { "id": 1010371, "code": "A1000000000", # по этому коду карта может быть активирована на http://money2mobile.ru/activate_card.html "key": "eef32d05b70a633563086f83597a8fed", # ЭС доступен по адресу http://money2mobile.ru/get_sert.php?key=eef32d05b70a633563086f83597a8fed "credits": 10000, #номинал карты "balance": { "credits": 100000, # баланс в копейках "credits_limit": 0, # минаимальный баланс в копейках "cards_left": 0, # кол-во карт, доступных для операции issue "daily_paylimit": 0 # объем средств в коп., доступный для операции pay сегодня } } }
Параметр | Описание |
---|---|
id | номер карты/ЭС |
code | секретный код, по которому можно активировать карту/ЭС через сайт money2mobile.ru, отправив его на короткий номер 2420 или через API. |
key | номер электронного сертификата, для получения его по ссылке вида http://money2mobile.ru/get_sert.php?key=[key] |
Поиск одной из карт, которая была выпущена, но еще не была использована.
Параметр | Описание | Пример |
---|---|---|
operation | установите значение find | find |
customer_id | выданный вам [ID] | 101 |
activated | (необязательный) была ли карта активированна через сайт | 0 |
hash | задается как MD5-хэш от строки, составленной из значений параметров [operation][customer_id][key] | b11e36cadfee38cf5c659f7503b311a8 |
http://money2mobile.ru/api/?operation=find&customer_id=101&hash=b11e36cadfee38cf5c659f7503b311a8
<?php # Пример на PHP $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERPWD, "api[ID]:[pass]"); curl_setopt($ch, CURLOPT_URL, "http://money2mobile.ru/api/?operation=find&customer_id=101&hash=b11e36cadfee38cf5c659f7503b311a8"); $json = curl_exec($ch); var_dump ( json_decode( $json) );
{ "error": 0, "msg": "Карта найдена.", "data": { "id": 1010371, "code": "A1000000000", # по этому коду карта может быть активирована на http://money2mobile.ru/activate_card.html "key": "eef32d05b70a633563086f83597a8fed", # ЭС доступен по адресу http://money2mobile.ru/get_sert.php?key=eef32d05b70a633563086f83597a8fed "credits": 10000, #номинал карты } }
Отзыв карты, платеж по которой не удалось провести или он не проводился.
Параметр | Описание | Пример |
---|---|---|
operation | установите значение unissue | unissue |
code | секретный код | A1000000000 |
customer_id | выданный вам [ID] | 101 |
hash | задается как MD5-хэш от строки, составленной из значений параметров [operation][code][customer_id][key] | b11e36cadfee38cf5c659f7503b311a8 |
http://money2mobile.ru/api/?operation=unissue&code=A1000000000&customer_id=101&hash=b11e36cadfee38cf5c659f7503b311a8
<?php # Пример на PHP $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERPWD, "api[ID]:[pass]"); curl_setopt($ch, CURLOPT_URL, "http://money2mobile.ru/api/?operation=unissue&code=A1000000000&customer_id=101&hash=b11e36cadfee38cf5c659f7503b311a8"); $json = curl_exec($ch); var_dump ( json_decode( $json) );
{ "error": 0, "msg": "Карта аннулирована, деньги возвращены на баланс." }
Задание для карты реквизитов, по которым будет проводиться выплата.
Параметр | Описание | Пример |
---|---|---|
operation | установите значение pay | pay |
code | секретный код | A1000000000 |
wallet | номер телефона (в межунароном формате) или электронного кошелька | +7 999 9876543 |
wallet_type | тип кошелька. Может быть установлен в "PHONE" (мобильный телефон), "QIWI" (кошелек Qiwi), "YA" (кошелек Яндекс.Деньги), "WM" (кошелек Вебмани), "RBK" (кошелек РБК), "SBP" (перевод через СБП) | PHONE |
phone | (необязательный) для пополнения Вебмани должен содеражать мобильный телефон владельца кошелька | - |
bank_id | (необязательный) для переводов через СБП должен содеражать ID банка получателя | - |
change_wallet | (необязательный) параметр, который должен быть установлен в 1, если Вы хотите сменить реквизиты непрошедшего платежа | - |
customer_id | выданный вам [ID] | 101 |
hash | задается как MD5-хэш от строки, составленной из значений параметров [operation][code][wallet][wallet_type][change_wallet][phone][bank_id][customer_id][key] | b11e36cadfee38cf5c659f7503b311a8 |
http://money2mobile.ru/api/?operation=pay&code=A1000000000&wallet=+7 999 9876543&wallet_type=PHONE&customer_id=101&hash=b11e36cadfee38cf5c659f7503b311a8
<?php # Пример на PHP $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERPWD, "api[ID]:[pass]"); curl_setopt($ch, CURLOPT_URL, "http://money2mobile.ru/api/?operation=pay&code=A1000000000&wallet=+7%20999%209876543&wallet_type=PHONE&customer_id=101&hash=b11e36cadfee38cf5c659f7503b311a8"); $json = curl_exec($ch); var_dump ( json_decode( $json) );
{ "error": 0, "msg": "Платеж по коду A1000000000 на сумму 20.00 руб. поставлен в очередь, ожидайте прихода средств." }
Проверка статуса карты. При первом обращении к карте она переводится в статус "активирована" (если не истек срок годности); далее возвращаются статусы, связанные с заданием реквизитов для выплаты или статусом осуществляемого по карте платежа.
Параметр | Описание | Пример |
---|---|---|
operation | установите значение check | check |
code | секретный код | A1000000000 |
customer_id | выданный вам [ID] | 101 |
hash | задается как MD5-хэш от строки, составленной из значений параметров [operation][code][customer_id][key] | b11e36cadfee38cf5c659f7503b311a8 |
http://money2mobile.ru/api/?operation=check&code=A1000000000&customer_id=101&hash=b11e36cadfee38cf5c659f7503b311a8
<?php # Пример на PHP $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERPWD, "api[ID]:[pass]"); curl_setopt($ch, CURLOPT_URL, "http://money2mobile.ru/api/?operation=check&code=A1000000000&customer_id=101&hash=b11e36cadfee38cf5c659f7503b311a8"); $json = curl_exec($ch); var_dump ( json_decode( $json) );
{ "error": 0, "msg": "Код выплачен 28.11.2014 19:00:00 на мобильный телефон, оканчивающийся на 6543." }
Баланс, привязанный к аккаунту, меняется при выпуске (номинал карты списывается) или отзыве (номинал карты возвращается) карты.
Параметр | Описание | Пример |
---|---|---|
operation | установите значение balance | balance |
customer_id | выданный вам [ID] | 101 |
hash | задается как MD5-хэш от строки, составленной из значений параметров [operation][customer_id][key] | b11e36cadfee38cf5c659f7503b311a8 |
http://money2mobile.ru/api/?operation=balance&customer_id=101&hash=b11e36cadfee38cf5c659f7503b311a8
<?php # Пример на PHP $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERPWD, "api[ID]:[pass]"); curl_setopt($ch, CURLOPT_URL, "http://money2mobile.ru/api/?operation=balance&customer_id=101&hash=b11e36cadfee38cf5c659f7503b311a8"); $json = curl_exec($ch); var_dump ( json_decode( $json) );
{ "error": 0, "msg": "Баланс определен.", "data": { "credits": 100000, # баланс в копейках "credits_limit": 0, # минаимальный баланс в копейках "cards_left": 0, # кол-во карт, доступных для операции issue "daily_paylimit": 0 # объем средств в коп., доступный для операции pay сегодня } }
Метод | Код ошибки | Расшифровка |
---|---|---|
issue, pay, check, balance | 0 | Ошибок нет. |
issue, pay, check, balance | 1 | Общие ошибки. |
issue, pay, check, balance | 2 | Пользователь не найден. |
issue | 3 | Неверная подпись. |
issue | 4 | Не найдено не занятых номеров карт/ЭС. |
issue | 5 | Недостаточно средств для выпуска карты/ЭС или не найдено не занятых номеров карт/ЭС. |
issue | 6 | Произошла ошибка при выпуске карты/ЭС. |
pay, check | 7 | Формат параметра [code] неверный. |
pay, check | 8 | Платеж проводится. |
pay, check | 9 | Невозможно провести платеж. Причина указана в доп. параметре description. |
pay, check | 10 | Невозможно провести платеж, возможно выбрать другой способ вывода средств. Причина указана в доп. параметре description. |
pay, check | 11 | Карта/ЭС активирована, но способ вывода средств не указан. |
pay, check | 12 | Срок действия карты/ЭС истек. |
pay, check | 13 | Не удалось активировать карту/ЭС. |
pay, check | 14 | Код [code] не найден. |
pay | 15 | Не указан способ вывода денег. |
pay | 16 | Данный код уже использован. |
pay | 17 | Данный способ перевода денег закрыт. |
pay | 18 | Номер кошелька не определен. |
pay | 19 | Достигнуто ограничение для зачисления денег на один номер в течение месяца. |
unissue | 20 | Карта выплачена и не может быть аннулирована. |
unissue | 21 | Карта имеет неизвестный статус и она не может быть аннулирована, свяжитесь с нами. ВНИМАНИЕ! Это не означает, что статус карты финальный. |
unissue | 22 | Не удалось пополнить баланс, свяжитесь с нами. |
unissue | 24 | Карта не выпущена и не может быть аннулирована. |
find | 23 | Карт не найдено. |
Copyright 2015. All Rights Reserved.