API 2.0 по интеграции с MirexPay.

1. Регистрируетесь на сайте.

2. Заходите в меню Кассы и создаете Кассу для своего домена, проходите модерацию, ожидаем результат модерации.

3. После модерации для кассы генерируется client_id и client_secret - в настройках кассы можете видеть эти ключи.

4. Для инициирования оплаты - нужно отправить клиента на форму оплаты по ссылке с нужными параметрами:

https://new.mirexpay.com/payments/create?client_id=<CLIENT_ID>&amount=1.00

Запрос обязательно должен содержать переменные client_id (который получили на предыдущем шаге) и amount - сумма для оплаты (для отделения десятых и сотых служит - точка, к примеру amount=8.44)

Также запрос может содержать следующие не обязательные переменные:

order_id - целое число - идентификатор заказа в магазине. Если Вам нужно передать номер заказ строкой с буквами - тогда лучше передавать номер заказа в параметре "description"
user_id - целое число - идентификатор пользователя в магазине
description - краткое описание назначения платежа (максимум 512 символов)
success_url - ссылка на страницу с успешной оплатой
fail_url - ссылка на страницу с безуспешной оплатой
currency - код валюты в стандарте ISO 4217, если код не передан по умолчанию будет считаться, что счет выставлен в Долларах.
client_email - email плательщика.
new_card - признак карты из whitelist: y - новая карта, n - карта из whitelist.
country - Код страны банка, выпустившего карту: ru - Российский банк, world - иностранный. По умолчанию world, если параметр пуст или не передан.

Коды валют в ISO 4217 для Доллара США - 840, для российского Рубля - 643, для Евро - 978, для украинской Гривны - 980.

5. После успешного или проваленного платежа на прописанный вами в настройках кассы Callback URI будет отправлен POST запрос содержащий данные о платеже в виде json объекта в параметре payment. В объекте будут присутствовать следующие свойства

Пример генерации signature:

 $signature = base64_encode(sha1($amount ."|". $client_id ."|". $client_secret)); 

Пример обработки параметра такого запроса:

 $post = json_decode($_POST["payment"]); $order_id = $post->order_id; 

Все нотификации отправляются с ip адресов 5.101.112.71, 104.21.22.181, 172.67.206.95.

---------

Если Вы хотите вручную повторно отправить Callback на свой Callback_url - для этого зайдите в информацию о платеже (в кабинете это меню Платежи, жмите на номер платежа), внизу под табличкой с информацией о платеже будет кнопка "Отправить Callback", при нажатии - Callback отправится повторно и будет показан ответ Вашего сервера.

---------

Тестовая среда.

Есть так-же возможность делать тестовые платежи. Для включения тестовой среды - обратитесь к Вашему менеджеру технической поддержки.
Для тестовой среды - Вам будет активирован метод TEST_EUR для Вашей кассы.

После этого - Для того, чтоб направить платеж по тестовому направлению - Мерчант должен формировать ссылку перехода запроса в евро (код валюты 978). Например сгенерировать такую ссылку и по ней перейти в браузере:

Пример - https://new.mirexpay.com/payments/create?client_id=<CLIENT_ID>&amount=1.00&currency=978

где <CLIENT_ID> - это client_id кассы, в которой подключен тестовый метод.

В процессе тестирования можно использовать два варианта номеров карт:

4141999977771111 - это тестовая карта для успешного платежа.
4141999977772222 - это тестовая карта отмены платежа

Если ввести любой другой номер карты - то статус платежа будет Pending.