Документация

Создание магазина

Укажите только URL проекта. Весь процесс обычно занимает не более 5 минут.

Еще необходимо чтобы проект соответствовал требованиям системы.

Настройки магазина

Внимание! Технические настройки магазина сохраняются один раз, будьте внимательны. Далее самостоятельно изменить их не получиться, только через тикет.

Описание параметров

Секретное слово Используется для формирования подписи в форме оплаты и скрипте оповещения.
URL оповещения Страница Вашего сайта, на который будут отправлены данные с информацией о платеже.
Метод отправки: GET / POST
Успешный URL Страница Вашего сайта, на которую будет перенаправлен пользователь после успешной оплаты.
Передает номер заказа order и номер платежа inv методом GET
Неудачный URL Страница Вашего сайта, на которую будет перенаправлен пользователь в случае неудачной оплаты.
Передает номер заказа order и номер платежа inv методом GET
Интеграция Режим интеграции сделан для упрощения переноса сайта от другого сервиса приема платежей. Подробнее
По-умолчанию: Нет.

Настройка формы оплаты (форм. ссылки)

Создаем форму оплаты в виде ссылки на страницу оплаты.

Данные передается методом GET / POST на адрес https://neopay.money/pay

При использовании интеграции, параметры передаются по правилам вашей старой платежной системы.

Описание параметров

Обязательные параметры
shop ID Вашего магазина
amount Сумма платежа
order Номер заказа (также это может быть название товара или логин пользователя, для зачисления средств)
sign Подпись (методика формирования подписи в платежной форме)
Необязательные параметры
method Предлагаемый метод/способ платежа (список валют). Плательщик сможет изменить его в процессе оплаты.
desc Описание платежа
email Email плательщика
phone Номер телефона плательщика (только цифры с кодом города, например: 74999905568)
ap_key Так же Вы можете передавать свои параметры, которые наш сервер вернет на Ваш URL оповещения.
Ключи параметров должны начинаться с ap_ и содержать только латинские символы и цифры.
Значения параметров могут содержать только латинские буквы, цифры и символы '-', '_'. Например:
<input type="text" name="ap_name" value="ivanov">
<input type="text" name="ap_login" value="ivanov1971">

Формирование подписи в платежной форме

Подпись для платежной формы формируется путем нахождения MD5-хеша от строки
"ID Вашего магазина:Сумма платежа:Секретное слово:Номер заказа", пример на PHP:

md5('1011:100.11:secret:154')

Пример платежной формы:

<?php
$shop_id = '1011';
$secret = 'secret';
$order_id = '154';
$order_amount = '100.11';
$sign = md5($shop_id.':'.$order_amount.':'.$secret.':'.$order_id);
?>

<form method="GET" action="https://neopay.money/pay">
<input type="hidden" name="shop" value="<?php=$shop_id?>">
<input type="hidden" name="amount" value="<?php=$order_amount?>">
<input type="hidden" name="order" value="<?php=$order_id?>">
<input type="hidden" name="sign" value="<?php=$sign?>">
<input type="hidden" name="desc" value="Form pay for documentation">
<input type="submit" name="pay" value="Оплатить">
</form>

Оповещение о платеже

После успешной оплаты, на ваш URL оповещения будут отправлены HTTP данные.

Опять же! При использовании интеграции, название параметров соответствуют вашей старой платежной системы.
(за доп. помощью обращайтесь в в службу поддержки)

Описание параметров

SHOP_ID ID Вашего магазина
AMOUNT Сумма заказа
ORDER_ID Ваш номер заказа
INV_ID Номер операции Ezorpay
P_EMAIL Email плательщика
CUR_ID ID электронной валюты, которой был оплачен заказ (список валют)
SIGN Подпись (методика формирования подписи в данных оповещения)
ap_key Дополнительные параметры с префиксом ap_ переданные в форму оплаты

Подтверждение заявки

Для проверки успешной обработки платежа в вашем URL оповещения выводите/возвращайте текст со словом OK

Внимание! Ответ также может соответствовать требованиям вашей прошлой платежной системы, если вы используете интеграцию.

В противном случае Ezorpay будет повторять отправку оповещения до тех пор, пока не получит нужного ответа.
(если в настройках указано)

Проверка IP

Рекомендуем так же проверять IP адрес сервера отправляющего Вам информацию, наши IP адреса - 95.216.201.160,
Всегда актуальный список по адресу: https://neopay.money/ips.json

Пример функции на PHP:

function getIP() {
if (isset($_SERVER['HTTP_CF_CONNECTING_IP'])) return $_SERVER['HTTP_CF_CONNECTING_IP'];
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) return $_SERVER['HTTP_X_FORWARDED_FOR'];
if (isset($_SERVER['HTTP_X_REAL_IP'])) return $_SERVER['HTTP_X_REAL_IP'];
return $_SERVER['REMOTE_ADDR'];
}
if (!in_array(getIP(), json_decode(file_get_contents('https://neopay.money/ips.json'), true))) {
die("hacking attempt!");
}

Пример обработчика платежа

//Секретное слово
$secret = 'secret';

function getIP() {
if (isset($_SERVER['HTTP_CF_CONNECTING_IP'])) return $_SERVER['HTTP_CF_CONNECTING_IP'];
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) return $_SERVER['HTTP_X_FORWARDED_FOR'];
if (isset($_SERVER['HTTP_X_REAL_IP'])) return $_SERVER['HTTP_X_REAL_IP'];
return $_SERVER['REMOTE_ADDR'];
}
if (!in_array(getIP(), json_decode(file_get_contents('https://neopay.money/ips.json'), true))) {
die("hacking attempt!");
}

$sign = md5($_REQUEST['SHOP_ID'].':'.$_REQUEST['AMOUNT'].':'.$secret.':'.$_REQUEST['ORDER_ID']);

if ($sign != $_REQUEST['SIGN']) {
die("wrong sign");
}

//Так же, рекомендуется добавить проверку на сумму платежа и не была ли эта заявка уже оплачена или отменена
//Оплата прошла успешно, можно проводить операцию.

die('OK');

Формирование подписи в скрипте оповещения

Подпись для скрипта оповещения формируется путем нахождения MD5-хеша от строки
"ID Вашего магазина:Сумма платежа:Секретное слово:Номер заказа", пример на PHP:

md5($_REQUEST['SHOP_ID'].':'.$_REQUEST['AMOUNT'].':secret:'.$_REQUEST['ORDER_ID'])

Список доступных валют

Название Метод
Азербайджан nirvana_azn_in

Интеграция

Режим интеграции сделан для упрощенного перехода с другого сервиса приема платежей в наш сервис.

Для этого в настройках магазина выберите Интеграция свою старую платежную систему и внесите несколько изменений в свои скрипты оплаты.


Robokassa

  • URL перехода: используйте https://neopay.money/pay вместо https://auth.robokassa.ru/Merchant/Index.aspx
  • MerchantLogin: ID Вашего магазина на сервисе Ezorpay
  • InvId: номер счёта в магазине (обязательно)
  • Пароль #1 / #2: секретное слово на сервисе Ezorpay
  • Остальные параметры можно оставить без изменений.

Freekassa

  • URL перехода: используйте https://neopay.money/pay вместо http://www.free-kassa.ru/merchant/cash.php
  • MERCHANT_ID: ID Вашего магазина на сервисе Ezorpay
  • Секретное слово / Секретное слово 2: секретное слово на сервисе Ezorpay
  • Остальные настройки можно оставить без изменений.

Interkassa

  • URL перехода: используйте https://neopay.money/pay вместо https://sci.interkassa.com/
  • ik_co_id: ID Вашего магазина на сервисе Ezorpay
  • ik_pm_no: номер или описание заказа (обязательно)
  • Secret Key / Sign Key: секретное слово на сервисе Ezorpay
  • Подпись: ik_sign = md5(ik_co_id:ik_am:SecretKey:ik_pm_no);

Payeer

  • URL перехода: используйте https://neopay.money/pay вместо https://payeer.com/merchant/
  • m_shop: ID Вашего магазина на сервисе Ezorpay
  • m_key: секретное слово на сервисе Ezorpay
  • Подпись: arHash = array(m_shop, m_orderid, m_amount, m_key);
    m_sign = strtoupper(hash('sha256', implode(':', arHash)));
  • Остальные параметры можно оставить без изменений.

Unitpay

  • URL перехода: используйте https://neopay.money/pay/index/index/PUBLIC_KEY вместо https://unitpay.ru/pay/PUBLIC_KEY
  • PUBLIC_KEY: ID Вашего магазина на сервисе Ezorpay
  • secretKey: секретное слово на сервисе Ezorpay
  • currency: используйте RUB
  • Подпись: function getFormSignature($account, $currency, $desc, $sum, $secretKey) {
    $hashStr = $account.'{up}'.$currency.'{up}'.$desc.'{up}'.$sum.'{up}'.$secretKey;
    return hash('sha256', $hashStr);
    }

API

API позволит вам интегрировать некоторые функции нашего сервиса в ваше приложение.


Все запросы отправляются методом GET / POST, ответ в формате JSON.

Внимание! Слишком частое обращение к API может привести к блокировке.

Проверка баланса

Для получения баланса, необходимо отправить запрос на URL:

https://neopay.money/api/v1/account/getBalance

Передаваемые параметры:

Параметр Значение Описание
token строка Ключ API, доступен в настройках профиля.

Пример запроса:

https://neopay.money/api/v1/account/getBalance?token=1sExK9ISODXdzqFJCKtKyHtqENFoHveu

Пример ответа:

{
"balance" : "11.88"
}

Создание выплаты

Для создания выплаты, необходимо отправить запрос на URL:

https://neopay.money/api/v1/payouts/getRequest

Передаваемые параметры:

Параметр Значение Описание
token строка Ключ API, доступен в настройках профиля.
pay_type строка Код доступной платежной системы для выплаты.
amount число Сумма выплаты.
wallet строка Номер кошелька в допустимом формате.

Пример запроса:

https://neopay.money/api/v1/payouts/getRequest?token=1sExK9ISODXdzqFJCKtKyHtqENFoHveu&pay_type=qiwi&amount=100.00&wallet=74999905568

Пример ответа:

{
"success" : "Payout created"
"payout_id" : "32",
"payout_wallet" : "74999905568",
"payout_wallet_type" : "qiwi",
"payout_amount" : "97.00",
"payout_amount_down" : "100.00",
"payout_status" : "wait"
}

Информация о выплате

Для получения информации о выплате, необходимо отправить запрос на URL:

Передаваемые параметры:

Параметр Значение Описание
token строка Ключ API, доступен в настройках профиля.
payout_id число ID выплаты.
https://neopay.money/api/v1/payouts/getInfo

Пример запроса:

https://neopay.money/api/v1/payouts/getInfo?token=1sExK9ISODXdzqFJCKtKyHtqENFoHveu&payout_id=32

Пример ответа:

{
"payout_id" : "32",
"payout_wallet" : "74999905568",
"payout_wallet_type" : "qiwi",
"payout_amount" : "97.00",
"payout_amount_down" : "100.00",
"payout_status" : "success",
"payout_date_success" : "2018-02-08 17:09:02",
"payout_date_add" : "2018-02-08 17:08:42"
}