' API Paypro PayPro - организация приёма платежей

API

У PayPro есть обшинрый и отличный API, в котором есть всё что нужно, как для приёма платежей, так и для автовыплат клиентам.

У каждого клиента существует своя индивидуальная ссылка, далее именуется как ключ.

Для того, чтобы получить кошелёк, секретное слово для HTTP-уведомлений, а также сайт HTTP уведомлений, необходимо отправлять GET или POST запрос на свой ключ, в ответ сервер вернёт JSON-документ, со следующим содержимым:

Параметр Описание
status Статус обработки запроса.

Возможные значения: true, false.
wallet Кошелёк ЯД, который необходимо использовать для приёма платежей.
Данный параметр возвращается только если параметр status имеет значение true!
secret Секретное слово для HTTP-уведомлений.
Данный параметр возвращается только если параметр status имеет значение true!
site Сайт HTTP уведомлений.
Данный параметр возвращается только если параметр status имеет значение true!
error Значение ошибки, произошедшая при выполнении запроса.

Возможные значения: 
 not wallet – в системе нет свободного кошелька.
 error token – неверно настроенный кошелёк в системе. Попросите администратора поменять кошелёк, либо настроить старый.
 not wallet selected – в системе для данного клиента не выбран кошелёк. Попросите администратора выбрать кошелёк.
 not found – ключ недействителен.
 parameter error – неверно оформленный запрос.
Данный параметр возвращается только если параметр status имеет значение false!
Замечания: при возвращаемом значении параметра status = false приём на ЯД осуществляться не должен.
Далее использовать свою логику для разбора значений ошибок.
Сервер может осуществить redirect для обновления значения страницы, необходимо осуществлять автоматический переход на страницу редиректа.
Redirect осуществляется на ту же самую страницу.
Особое внимание стоит обратить на то, что сервер возвращает данные не сразу. Выдача результата может занять до 10 секунд!

Примеры:

Запрос: GET: http://***key***
Ответ: : {"status":true,"wallet":"1234","secret":"abcdf",
"site":"http:\/\/google.com"}
Используемый кошелёк для приёма платежей ЯД: 1234.
Секретное слово: abcdf
Сайт для HTTP уведомлений: http://paypro.bc.su/checkpayment/129
Запрос: GET: http://***key***
Ответ: : {"status":false,"error":"not wallet"}
При запросе произошла ошибка, при которой нет свободного кошелька.
Платежи на ЯД не принимаются.

У каждого клиента существует своя индивидуальная ссылка, далее именуется как ключ.

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

Имя параметра Тип запроса Описание запроса
Без дополнительных запросов GET or POST Позволяет получить кошельки и их балансы в валютах WMR, WMU, WMZ, WME, а также комментарий, который нужно использовать для платежей на указанные кошельки.
history GET or POST Позволяет получить историю платежей.
Значением параметра должна быть дата, начиная с которой необходимо получить историю платежей.
Дата должна быть в формате 2018-01-01 (Y-m-d).
По умолчанию (при пустом значении history) возвращается история за текущий день.
currency GET or POST Позволяет отсеять историю платежей с необходимой валютой.
Возможные значения: WMR, WMU, WMZ, WME.
Данный параметр имеет силу, только при одновременном использовании его с параметром history!

При удачном запросе сервер вернёт JSON-документ, со следующим содержимым:

Параметр Описание
status Статус обработки запроса.

Возможные значения: true, false.
wallets Вложенный объект JSON, содержащий название валюты и доступные кошельки c балансом для данной валюты.
Данный параметр возвращается только если параметр status имеет значение true!
Данный параметр возвращается только при отсутствии дополнительного параметра history!
comment Комментарий, который необходимо использовать при платежах на выданные кошельки.
Данный параметр возвращается только если параметр status имеет значение true!
Данный параметр возвращается только при отсутствии дополнительного параметра history!
history Вложенный объект JSON, содержащий элементы одномерного массива, параметры которых описаны ниже.
Данный параметр возвращается только если параметр status имеет значение true!
error Значение ошибки, произошедшая при выполнении запроса.

Возможные значения: 
 not wallet – в системе нет свободного кошелька.
 error token – неверно настроенный кошелёк в системе. Попросите администратора поменять кошелёк, либо настроить старый.
 not wallet selected – в системе для данного клиента не выбран кошелёк. Попросите администратора выбрать кошелёк.
 not found – ключ недействителен.
 parameter error – неверно оформленный запрос.
Данный параметр возвращается только если параметр status имеет значение false!

Параметры элементов массива объекта history:
Записи истории выдаются в обратном хронологическом порядке: от последних к более ранним.

Параметр Описание
Currency Валюта платежа.
Возможные значения: WMR, WMU, WMZ, WME.
Purpose Комментарий к платежу.
OperDate Дата и время операции.
Purse Кошелёк, на который пришёл платеж.
CorrPurse Кошелёк, от которого поступил платеж.
CorrWmid WMID корреспондента, от которого поступил платеж.
Id Уникальный идентификатор платежа.
Замечания: при возвращаемом значении параметра status = false приём на WebMoney осуществляться не должен.
Далее использовать свою логику для разбора значений ошибок.
Сервер может осуществить redirect для обновления значения страницы, необходимо осуществлять автоматический переход на страницу редиректа.
Redirect осуществляется на ту же самую страницу.
У одной валюты может быть несколько кошельков для оплаты, необходимо использовать любой.
Особое внимание стоит обратить на то, что сервер возвращает данные не сразу. Выдача результата может занять до 10 секунд!

Примеры:

Запрос: GET: http://***key***
Ответ: : {"status":true,"wallets":{"WMR":{"R123456789123":1000.1},"WMZ":{"Z123456789123":2.55},"WMU":{"U123456789123":0},"WME":{"E0123456789123":5.01}},"comment":"test"}
Для приёма по валюте WMR необходимо использовать кошелёк R123456789123
Для валюты WMZ необходимо использовать кошелёк Z123456789123 и т.д.
Комментарий, который нужно отправлять при переводах: test
Запрос: GET: http://***key***
Ответ: : {"status":false,"error":"not wallet"}
При запросе произошла ошибка, при которой нет свободного кошелька.
Платежи на WebMoney не принимаются.

Пример получения истории:

Запрос: GET: http://***key***
GET: history=2018-01-01