...
Данный метод позволяет получить преимущество при погашении клиентами кредитных организаций используя пониженный тариф по Дебету.
Cо стороны плательщика проводится обычная оплата с вводом всех карточных данных
Обязательные требования к сайту
Разместить логотипы платежных систем Visa и Mastercard
Добавить логотипы PSP Platon
API параметры запроса
Expand |
---|
title | PCI DSS или PCI Compliance |
---|
|
Наличие у мерчанта PCI DSS сертификата или PCI Compliance (сканирования). Note |
---|
Согласуйте первоначально с вашим менеджером PSP Platon. |
|
Expand |
---|
|
У вашего сайта должен быть SSL сертификат. Для проверки валидности и срока действия вашего SSL сертификата рекомендуем воспользоваться сервисом по ссылке. |
Expand |
---|
title | Логотипы платежных систем и PSP Platon |
---|
|
В футере вашего сайта необходимо разместить логотипы платежных систем и PSP Platon. Скачайте подходящие под стиль вашего сайта варианты логотипов. Include Page |
---|
| Логотипы для размещения |
---|
| Логотипы для размещения |
---|
|
|
Expand |
---|
|
Необходима поддержка протокола TLS не ниже версии 1.2 |
HTTP METHOD: POST
API ENDPOINT: https://secure.platononline.com/p2p-debit/
Параметр | Значение | Описание | Особенности |
---|
...
Обязательно
...
|
---|
action
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| DEBIT_PREPARE
| Код платежного метода | |
...
Да
...
|
async
Status |
---|
colour | Yellow |
---|
title | не ОБЯЗАТЕЛЬНО |
---|
|
| Y
N
| Включить асинхронный режим | В асинхронном режиме обязательное использование коллбеков. По умолчанию значение "N" |
...
Нет
channel_id
Status |
---|
colour | Yellow |
---|
title | не ОБЯЗАТЕЛЬНО |
---|
|
| String | Дополнительный платежный канал | Позволяет отправить платежи на другой банковский терминал |
...
|
client_key
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | API ключ мерчанта | Ключ предоставляется на почту мерчанту |
...
Да
order_id
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | ID платежа в системе мерчанта | Max 32 символа |
...
Да
order_amount
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| Number | Сумма платежа | Warning |
---|
Неверные варианты 1000 1000.0 1,000.0 1,000.00 |
|
...
|
order_currency
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| UAH
| Валюта платежа | Info |
---|
Оплата возможна только в национальной валюте гривне |
|
...
Да
order_description
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | Описание платежа | Note |
---|
Для кириллических символов необходимо использовать формат UTF-8 |
Max 255 символов |
...
Да
payer_first_name
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | Имя плательщика | Max 32 символа без пробелов |
...
|
payer_last_name
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | Фамилия плательщика | Max 32 символа без пробелов |
...
Да
payer_address
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | Адрес плательщика | Max 256 символа Укажите "NA", если нет данных |
...
Да
payer_country
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | Страна плательщика | Стандарт ISO 3166-1 alpha-2 В формате "ХХ" 2 символа Укажите "NA", если нет данных |
...
|
payer_state
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | Штат плательщика | Note |
---|
Обязательный параметр для стран US, CA, AU |
Стандарт ISO 3166-2 В формате "ХХ" 2 символа Укажите "NA", если нет данных |
...
Да
payer_city
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | Город плательщика | Max 32 символа Укажите "NA", если нет данных |
...
Да
payer_zip
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | Почтовый индекс плательщика | Max 32 символа Укажите "NA", если нет данных |
...
|
payer_email
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | Почта плательщика | Info |
---|
Обязательно валидная почта. |
Max 255 символа |
...
Да
...
payer_phone
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| Number | Номер телефона плательщика |
...
Note |
---|
Если ваше юр. лицо открыто в Приватбанк и вы передаете в запросе телефон плательщика, то: обязательный формат телефона 380…
номер телефона должен соответствовать финансовому номеру привязанному к карте
|
Info |
---|
Обязательный формат телефона 380… |
|
payer_ip
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| Number | IP-адрес плательщика | В формате "ХХХ.ХХХ.ХХХ.ХХХ" Note |
---|
IPv6 на данный момент не поддерживается |
|
...
|
card_number
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| Number | Полный номер карты | В формате "ХХХХХХХХХХХХХХХХ" 16 символов |
...
Да
card_exp_month
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| Number | Месяц окончания срока действия карты | В формате "ХХ" 2 символа |
...
|
card_exp_year
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| Number | Год окончания срока действия карты | В формате "ХХХХ" 4 символа |
...
|
card_cvv2
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| Number | Проверочный код на карте | В формате "ХХХ" 3 символа |
...
Да
req_token
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| Y
N
| Для получения card_token | По умолчанию "N" |
...
Да
...
|
term_url_3ds
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | Ссылка по которой будет отправлен клиент после успешной оплаты при прохождении 3DS | Max 255 символов |
signature
Status |
---|
colour | Green |
---|
title | ОБЯЗАТЕЛЬНО |
---|
|
| String | Контрольная подпись | |
...
Да
Примеры запроса:
Для просмотра примера раскройте список
sha1(
$pass.
strtolower(
implode(
'',
$action.
$client_key.
$order_id.
$order_amount.
$order_currency.
$order_description.
$card_number.
$card_exp_month.
$card_exp_year.
$card_cvv2.
$payer_first_name.
$payer_last_name.
$payer_phone.
$payer_address.
$payer_country.
$payer_state.
$payer_city.
$payer_zip.
$payer_email.
$payer_ip.
$term_url_3ds.
)
)
) |
|
Expand |
---|
title | Пример запроса на PHP |
---|
|
|
...
***************'; //Client's password
$params['action']='DEBIT_PREPARE';
$params['client_key']=' |
|
...
******'; //Client's KEY
$params['order_id']='Platon_test_37254'.rand( |
|
...
...
999);
$params['order_amount']=' |
|
...
...
00';
$params['order_currency']='UAH';
$params['order_description']='test_by_Platon';
$params['card_number'] = ' |
|
...
1111111111111111';
$params['card_exp_month'] = ' |
|
...
11';
$params['card_exp_year'] = ' |
|
...
1111';
$params['card_cvv2'] = ' |
|
...
111';
$params['payer_first_name']='Jack';
$params['payer_last_name']=' |
|
...
Anderson';
$params['payer_phone']=' |
|
...
380962111111';
$params['payer_address']='NA';
$params['payer_country']='UA';
$params['payer_state']='NA';
$params['payer_city']='NA';
$params['payer_zip']='01001';
$params['payer_email']='test@test.com';
$params['payer_ip']=' |
|
...
...
...
...
111';
$params['term_url_3ds']='https:// |
|
...
...
com';
$params['signature'] = sha1($pass . strtolower(implode('', $params)));
$url = 'https://secure.platononline.com/p2p-debit/';
|
|
...
$tempData = array();
foreach ($params as $key => $value) {
$tempData[] = $key.'='.urlencode($value);
}
$crq = curl_init();
curl_setopt($crq, CURLOPT_URL, $url);
curl_setopt($crq, CURLOPT_HEADER, 0);
curl_setopt |
|
...
Получение статуса транзакции в Callback и Response:
Tip |
---|
Ответы будут поступать с наших IP: 78.140.172.231 62.113.223.114 78.140.135.130 167.99.253.235 |
Info |
---|
Для получения коллбеков отправьте ссылку на ваш обработчик в ваш групповой чат. Ссылка для коллбеков прописывается на стороне Platon. |
После отправки коллбека в ответ Platon должен получить код HTTP 200 OK. Если коллбек не удалось доставить будет произведено до 5 попыток повторной отправки в течение 60 секунд.
Опциональные варианты активация которых происходит по вашему обращению в групповом чате:
Коллбеки в формате JSON
Basic Authorization
Синхронный режим:
Для просмотра примера раскройте список
Асинхронный режим:
Данный режим активируется при передаче ‘async’='Y'. В этом режиме обязательно необходимо принимать callback на ваш callback url.
Для просмотра примера раскройте список
Дополнительная проверка оплаты:
...
($crq, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($crq, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($crq, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($crq, CURLOPT_POSTFIELDS, implode('&', $tempData));
$result = curl_exec($crq);
if (curl_errno($crq)) {
echo 'ERROR: '.curl_error($crq);
}
curl_close($crq);
echo $result;
$moda = json_decode($result, true);
$pars['action']='DEBIT_RUN';
$pars['client_key']='7Y0Y8RCGG5';
$pars['trans_id']=$moda['trans_id'];
$pars['signature']= sha1($pass . strtolower(implode('', $pars)));;
$temp = array();
foreach ($pars as $key => $value) {
$temp[] = $key.'='.urlencode($value);
}
$crq = curl_init();
curl_setopt($crq, CURLOPT_URL, $url);
curl_setopt($crq, CURLOPT_HEADER, 0);
curl_setopt($crq, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($crq, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($crq, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($crq, CURLOPT_POSTFIELDS, implode('&', $temp));
$res = curl_exec($crq);
if (curl_errno($crq)) {
echo 'ERROR: '.curl_error($crq);
}
curl_close($crq);
echo $res;
$respRedirect = json_decode($res, true);
echo $respRedirect['redirect_url'];
header('Location: '.$respRedirect['redirect_url']);
?> |
|
Expand |
---|
title | Особенности работы с Callback |
---|
|
Include Page |
---|
| Работа с Callback |
---|
| Работа с Callback |
---|
|
|
Синхронный режим:
Данный режим работает по умолчанию. Передавать async = N
не нужно.
Expand |
---|
title | Callback при успешном списании |
---|
|
Code Block |
---|
| array (
'action' => 'DEBIT_RUN',
'result' => 'SUCCESS',
'status' => 'SETTLED',
'order_id' => '4385323',
'trans_id' => '28261-47789-28578',
'trans_date' => '2020-02-25 07:12:58',
'card_token' => '8ef3111ac1093f6ccb817acef7f0845601d0994689a5f57949f94b0d086c7fe2',
'hash' => '********************************',
) |
Параметр | Описание |
---|
action
| DEBIT_RUN
| result
| SUCCESS
| status
| SETTLED
| order_id
| Уникальный ордер ID транзакции в системе мерчанта | trans_id
| Уникальный ордер ID транзакции в системе Platon | trans_date
| Время проведения транзакции в формате UTC (YYYY-MM-DD HH-MM-SS) | card_token
| Зашифрованный токен карты для последующих транзакций по card_token | hash
| Зашифрованная подпись для проверки достоверности коллбека |
|