Описание API v2
Адрес для обращений:
https://pay.platip2p.com/API/v2/
Отправка запросов производится методом POST или GET.
Тип запроса при использовании POST: application/x-www-form-urlencoded
Обозначения:
secret1 - "секретное слово 1" из настроек проекта. Используется для подписи всех запросов к нам, кроме метода initPayout.
secret2 - "секретное слово 2" из настроек проекта. Используется для подписи оповещений от нашего сервиса на ваш сайт.
payout_key - "Ключ для выплат" из настроек проекта. Используется для подписи запроса при вызове метода initPayout.
Обязательные параметры при каждом вызове: action и sign.
action - вызываемый метод (список методов описан ниже).
sign - подпись запроса (расчет подписи зависит от метода).
Для тестовых запросов к API используйте данные:
project = 1
Секретное слово: test_API
ДЕЙСТВИЯ (поле action)
Метод | Описание |
initPayment | Вебмастер подписывает данные подписью и делает запрос на API. В случае успеха в ответе будет содержаться ссылка на форму оплаты, куда вам нужно отправить пользователя. Обязательные: project, sum, currency, innerID, email, payWay project - ID проекта sum, currency - сумма и валюта заказа (поддерживаются RUB) innerID - внутренний ID в вашей системе - может быть номером заказа или ID пользователя, либо любой строкой (до 500 символов). В рамках проекта может быть НЕуникальным. Если вам не требуется это поле - можно просто передавать 1. Кавычки и символы < и > будут преобразованы. Необязательные: comment - Описание заказа (текст до 50 символов UTF-8) - отображается при оплате. payWay - предпочтительный метод оплаты. На данный момент доступны: 10: СБП 11: Карты(e-com) Расчет подписи: md5 ( secret1 + action + project + sum + currency + innerID + email + payWay ) Пример результата успешного запроса: { "status":"OK", "result":"https://pay.platip2p.com/API/v2//order_page.html", "order_id":12345 } Пример результата неуспешного запроса: { "status":"ERROR", "result":"Minimal amount: 50 RUB" } Интеграция H2H Для того, чтобы использовать H2H в контексте метода initPayment нужно: - Для payWay 10(СБП). Добавить параметр "'host2host' => 1" в массив data - Для payWay 11(Карты(e-com)). Требуются параметры: 'host2host' - 1, 'cardholder' - ФИО держателя карты, 'cardNumber' - номер карты, 'cardSecurityCode' - cvv код, 'expiryMonth' - месяц окончания действия карты, 'expiryYear' - год окончания действия карты, { 'action' => 'initPayment', 'project' => '2', 'sum' => 2000, 'currency' => 'RUB', 'innerID' => "228", 'payWay' => 11, 'email' => "test@platip2p.com", 'host2host' => 1, 'cardholder' => 'Иванов Иван Иванович', 'cardNumber' => '1111222233334444', 'cardSecurityCode' => '111', 'expiryMonth' => '05', 'expiryYear' => '2035', } |
getOrderInfo | Получить статус оплаты по ID. Для выполнения запроса необходимо указывать ID проекта и подписывать запрос секретным словом 1 из этого проекта. Обязательные: project, orderID project - ID проекта orderID - ID нужного заказа Расчет подписи: md5 ( secret1 + action + project + orderID ) Пример результата: {"status":"OK", "result":{ "order_id":"33", "date_add":"1614627760", "sum":"125.00", "payWay":"1", "payed_from":"436650******1122", "innerID":"888", "pay_status":"1", "webmaster_profit":"122.10" } } payed_from - номер кошелька или карты с которой совершена оплата (при возможности) pay_status : 0 - в процессе оплаты -2 - срок оплаты истек -1 - оплата не удалась 1 - успешно оплачен 2 - идет возврат 3 - возврат завершен |
initPayout | Вебмастер подписывает данные подписью и делает запрос на API. Создается заявка на выплату в указаном проекте. Обязательные: project, sum, currency, payWay, email, purse, cardholder (если выплата P2P). project - ID проекта sum - Сумма выплаты currency - Валюта выплаты payWay - Направление выплаты email - E-mail человека-получателя средств purse - Номер карты или кошелька, на который делается выплата cardholder - Имя Фамилия владельца карты (указывать при выплатах P2P) Варианты для payWay: 9: P2P Необязательные: cardholder - Имя и фамилия держателя карты comment - Описание заказа (строка до 50 символов UTF-8) - отобразится в вашей истории в личном кабинете needUnique - Вы можете передать этот параметр для проверки выплаты на уникальность. Если у вас уже есть выплата с таким needUnique, то вторая выплата с таким же параметром не будет создана. Формат: строка до 20 символов UTF-8. Расчет подписи: md5 ( payout_key + action + project + sum + currency + payWay + email + purse ) Пример ответа об успехе: {"status":"OK", "result":{ "payout_id":"33" } } Пример ответа об ошибке: { "status":"ERROR", "result":"Min. amount: 20.00 RUB" } |
sendReceipt | Метод для отправки чека об оплате, требуется при использовании PayWay = 10 (СБП). После оплаты пользователь должен отправить чек об оплате в формате pdf Обязательные: project, orderID project - ID проекта orderID - ID нужного заказа Расчет подписи: md5 ( secret1 + action + project + orderID ) Пример результата: {"status":"OK", "result":{ "order_id":"33" } } |
getProjectBalance | Получить баланс проекта. Для выполнения запроса необходимо указывать ID проекта и подписывать запрос секретным словом 1 из этого проекта. Обязательные: action, project, sign Расчет подписи: md5 ( secret1 + action + project ) Пример результата: { "status":"OK", "result": { "balance_RUB":"14250.00", "balance_USD":"753.22" } } |
getPayoutInfo | Получить статус выплаты по ID. Для выполнения запроса необходимо указывать ID проекта и подписывать запрос секретным словом 1 из этого проекта. Обязательные: action, project, payoutID, sign Расчет подписи: md5 ( secret1 + action + project + payoutID ) Пример результата: { "status":"OK", "result": { "payout_id":"25", "payWay":"1", "date_add":"1617228634", "sum":"104.00", "sum_to_receive":"102.70", "pay_status":"1" } }pay_status : 0 - в процессе выплаты -1 - выплата не удалась, средства вернулись на баланс 1 - успешно выплачено 2 - частично выплачено (остаток суммы возвращается назад на баланс проекта). В данный момент может возникнуть для выплат на карты Украины, особенно при выплате большой суммы за один раз. |
getProjectInfo | Получить информацию и доступные методы оплаты на проекте. Для выполнения запроса необходимо указывать ID проекта и подписывать запрос секретным словом 1 из этого проекта. Обязательные: action, project, sign Расчет подписи: md5 ( secret1 + action + project ) Пример результата: { "status":"OK", "result": { "status":"ACTIVE", "comsn_from_payer":75, "comsn_from_webmaster":25, "payWays":{ "RUB":{ "1":{"comission":"8.00", "fix_sum":"3.00", "comission_RU":"5.00", "fix_sum_RU":"2.00", "min_sum":"10.00", "max_sum":"49000.00", "comment":"Оплата картой"}, "2":{"comission":"7.00", "fix_sum":"0.00", "min_sum":"10.00", "max_sum":"50000.00", "comment":""}, "5":{"comission":"7.00", "fix_sum":"0.00", "min_sum":"10.00", "max_sum":"75000.00", "comment":"Кошелек QIWI"} } } } }status: ACTIVE - активный проект в работе Другие статусы: MODERATION, DEVELOPMENT, VIEWED, BLOCKED, DECLINED, ARCHIVED comsn_from_payer, comsn_from_webmaster: - Процент комиссий при оплате котрый берет на себя плательщик и вебмастер соответственно (задается в настройках проекта) Массив payWays - Массив с валютами в которых возможен прием Массив RUB - В данном приимере - массив направлений оплаты в доступной валюте. Ключ массива - направление payWay (1-карты, 2-Юмани, 5-QIWI и т.д.). Здесь: comission, fix_sum - Комиссия (проценты) и фиксированая сумма (RUB) по данному направлению comission_RU, fix_sum_RU - В некоторых случаях на прием с карт РФ есть свои комиссии, отличные от остальных стран (как правило меньше). Комиссии на оплату картами РФ указаны здесь. Если полей comission_RU, fix_sum_RU нет - значит тариф одинаковый для всех стран. min_sum, max_sum - Минимальная и максимальная суммы, на которую можно создать заказ. comment Комментарий |