Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
InfoЦей функціонал буде активовано після вашого запиту в груповому
Info

Цей функціонал буде активовано після вашого запиту в груповому чаті.


Зміст

Table of Contents
minLevel1
maxLevel2
include
outlinefalse
indent0px
stylecircle
exclude
typelist
class
printablefalse

Опис

Цей функціонал дозволить розмістити на вашому боці інтерфейс оплати частинами для клієнтів ПриватБанк.

Info

Використовуючи цей розділ ви зможете реалізувати онлай та оффлайн оплату частинами.

Для використання в оффлайні вам необхідно інтегрувати це API до вашого ПЗ. Механізм взаємодії в такому випадку буде наступним:

  1. Клієнт в оффлайн магазині говорить, що хоче оплатити частинами Monobank.

  2. Менеджер просить назвати номер телефону прив'язаного до Monobank та вводить його разом з кількістю частин в вашому ПЗ, та відправляє запит відповідно до цього API методу.

  3. Клієнту на телефон в додаток Monobank надходить повідомлення з пропозицією про можливість взяття оплати частинами, яке він може прийняти / відхилити, збільшити кількість частин (від наданої мерчантом кількості частин) з додатковою платою з боку клієнта за тарифами Monobank.

  4. Після успішного підтвердження клієнтом в додатку до вас в систему буде відправлено коллбек з даними про платіж по результату якого менеджер може вибити чек та видати товар.

Минимальная сумма - отсутствует.

Максимальная сумма - 300 000 грн.

Этот функционал работает в два этапа. При успешном запросе общая сумма попадает в холд, после чего необходимо будет провести подтверждение списания для зачисления средств на ваш счет.

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

  1. Вручную в нашем личном кабинете

  2. Настроить на стороне PSP Platon автоматическое списание в срок от 1 часа до 29 дней, о чем просьба сообщить в чат

  3. Настроить автоматическое списание по API запросу списания с холда под вашу бизнес-логику

Warning

Внимание! Подтверждение списания и возврат производится в полном объеме суммы кредита. Частичное списание или частичный возврат запрещены.

Чеклист интеграции

  •  Привести сайт / приложение к соответствию требованиям.
  •  Передать тех поддержке PSP Platon ссылку для Callback.
  •  Сообщить в тех поддержке PSP Platon ваши IP адреса сервера сайта или о том, что будет использоваться приложение (в этом случае ограничения по IP будут сняты).
  •  Провести интеграцию данного API.
  •  Отобразить клиенту форму для ввода номера телефона, который привязан к Приватбанк.
  •  Отобразить клиенту выбор количества платежей на ваш выбор в в промежутках от 2 до 24 платежей (включительно).
  •  Отправить запрос с вашего сервера / приложения согласно данного API.
  •  Получить Response или Callback со статусом платежа от PSP Platon.
  •  Уведомить клиента об успешном / не успешном запросе на оплату частями.

Рекомендации

Panel
panelIconIdatlassian-check_mark
panelIcon:check_mark:
bgColor#E3FCEF

Рекомендуем клиенту самостоятельно вводить свой номер телефона в ПриватБанк. Если у вас в системе уже есть номер телефона клиента, мы не рекомендуем подставлять его в данный запрос, так как возможны ситуации, когда у клиента есть несколько номеров телефонов и тот, что был записан у вас ранее может не совпадать с финансовым номером клиента в приложении Privat24.

Tip

Рекомендуем отобразить уведомление, о том что клиенту поступит push-уведомление в приложение Privat24 для ознакомления с договором оплаты частями и решения о согласии с условиями.

Tip

Рекомендуем отобразить уведомление, что клиенту необходима карта ПриватБанк.

Tip

Рекомендуем отобразить уведомление, что клиенту необходимо проверить доступный размер лимита оплаты частями на соответствие сумме заказа.

Tip

Рекомендуем отобразить уведомление, что первый платеж будет списан с клиента сразу.

Требования к сайту

Expand
titleSSL сертифікат

У вашого сайту має бути валідний SSL сертифікат.

Для перевірки валідності та терміну дії вашого SSL сертифіката рекомендуємо скористатися сервісом за посиланням.

Expand
titleЛоготипы платежных систем и PSP Platon

В футере вашего сайта необходимо разместить логотипы платежных систем и PSP Platon.

Скачайте подходящие под стиль вашего сайта варианты логотипов.

Include PageЛоготипи для розміщенняЛоготипи для розміщення
Expand
titleTLS 1.2

Необходима поддержка протокола TLS не ниже версии 1.2

API параметры

HTTP METHOD: POST

API ENDPOINT: https://secure.platononline.com/post/

Параметр

Значение

Описание

Особенности

action

Мінімальна сума - 300 грн.

Максимальна сума - 300 000 грн.


Чекліст интеграції

  •  Привести сайт / додаток до відповідності вимогам.
  •  Передати тех підтримці PSP Platon посилання для Callback.
  •  Повідомити тех підтримці PSP Platon ваші IP адреси серверів сайта або про те, що буде використовуватись додаток (в цьому випадку обмеження по IP будуть зняті).
  •  Провести інтеграцію цього API методу.
  •  Створити і відобразити клієнту кнопку оплати частинами Приватбанк
  •  Відобразити клієнту вибір кількості частин за необхідності в проміжку від 2 до 24 платежів (включно).
  •  Відправити API запит з вашого сервера / додатку відповідно до цього API методу.
  •  Редіректити платника на сторінку оформлення оплати частинами Приватбанк.
  •  Отримати Response або Callback зі статусом платежа PSP Platon після проведення платником дій в додатку Приватбанк.
  •  Повідомити клієнту про успішність / не успішність оплати частинами.

Рекомендації

Tip

Рекомендуємо відобразити повідомлення, що клієнту необхідна активна картка Приватбанк.

Tip

Рекомендуємо відобразити повідомлення, що перше списання коштів з клієнта відбудеться одразу, тобто у клієнта має бути відповідна сума на основному балансі.


Вимоги до сайту

Include Page
Вимоги до сайтів та додатків
Вимоги до сайтів та додатків

API параметри

HTTP METHOD: POST

API ENDPOINT: https://secure.platononline.com/post/

client_key

Status
colourGreen
titleобязательно

String

API ключ мерчанта

Ключ предоставляется на почту мерчанту

order_id

Параметр

Значення

Опис

Особливості

action

Status
colourGreen
titleобов'язковий

SALE_PART

Код платіжного метода

client_key

Status
colourGreen
titleобов'язковий

String

API ключ мерчанта

Ключ надається на пошту мерчанта

order_id

Status
colourGreen
titleобов'язковий

String

ID оплати в системі мерчанта

Max 32 символи

order_amount

Status
colourGreen
titleобов'язковий

Number

Сума оплати

Info

Мінімальна сума оплати частинами Приватбанк - 300.00

Tip

Вірний варіант

1000.00

Warning

Невалідні варіанти

1000
1000.0
1,000.0
1,000.00

order_currency

Status
colourGreen
titleобов'язковий

UAH

Валюта

Info

Оплата можлива лише в національній валюті гривні

order_description

Status
colourGreen
titleобов'язковий

String

Опис

Note

Для кириличних символів необхідно використовувати формат UTF-8

Max 255 символів

payer_ip

Status
colourGreen
titleобов'язковий

Number

IP-адреса платника

В форматі "ХХХ.ХХХ.ХХХ.ХХХ"

Note

IPv6 на даний момент не підтримується та за наявності буде приводити до помилки.

term_url_3ds

Status
colourGreen
titleобов'язковий

String

Посилання по якому буде відправлено платника після спроби оплати

Max 255 символів

payer_email

Status
colourGreen
titleобов'язковий

String

Пошта платника

Info

Обов'язково валідна пошта.

Info

Відсутність пробілів.

Max 255 символів

payer_phone

Status
colourGreen
title

обязательно

SALE_PART

Код платежного метода

обов'язковий

Number

Фінансовий номер телефону платника прив'язаний до Приватбанк

Info

Обов'язковий формат телефону +380XXXXXXXXX

ext4

Status
colourGreen
title

обязательноorder_amount

обов'язковий

String

ID платежа в системе мерчанта

Max 32 символа

"{"available_parts_count":"n"}"

JSON з кількістю обраних частин від 2 до 24 (включно), наприклад "{"available_parts_count":"6"}"

channel_id

Status
colour

Green

Blue
title

обязательно

опція

Number

String

Сумма платежа

hash

tiporder_currency

Status

Верный вариант

1000.00

Warning

Неверные варианты

1000
1000.0
1,000.0
1,000.00

colourGreen
titleобов'язковий

String

Контрольний підпис

Code Block
languagephp
md5(
  strtoupper($pass).
  strrev($order_id)
)

async

Status
colour

Greenorder_description

Yellow
title

обязательно

UAH

Валюта платежа

Info

Оплата возможна только в национальной валюте гривне

не обов'язковий

Y
N

Включити асинхронний режим

В асинхронному режимі обов'язкове використання коллбеків.
Стандартне значення N

payer_first_name

Status
colour

Green

Yellow
title

обязательноpayer_ip

не обов'язковий

String

Описание платежа

Note

Для кириллических символов необходимо использовать формат UTF-8

Max 255 символов

Ім'я платника

Max 32 символи без пробілів

payer_last_name

Status
colour

Greenterm_url_3ds

Yellow
title

обязательно

Number

IP-адрес плательщика

В формате "ХХХ.ХХХ.ХХХ.ХХХ"

Note

IPv6 на данный момент не поддерживается

не обов'язковий

String

Прізвище платника

Max 32 символи без пробілів

payer_address

Status
colour

Green

Yellow
title

обязательноMax 255 символов

не обов'язковий

String

Ссылка по которой будет отправлен клиент после успешной оплаты при прохождении 3DS

Адреса платника

Max 256 символи
ВказатиNA, якщо немає даних

payer_

email

country

Status
colour

Green

Yellow
title

обязательноpayer_phone

не обов'язковий

String

Почта плательщика

Info

Обязательно валидная почта.

Info

Отсутствие пробелов.

Max 255 символа

Країна платника

Стандарт ISO 3166-1 alpha-2
В форматі "ХХ"
2 символа
Вказати NA, якщо немає даних

payer_state

Status
colour

Greenext4

Yellow
title

обязательно

Number

Финансовый номер телефона плательщика привязанный к Приватбанк

Info

Обязательный формат телефона +380XXXXXXXXX

не обов'язковий

String

Штат платника

Стандарт ISO 3166-2
В форматі "ХХ"
2 символа
Вказати NA, якщо немає даних

payer_city

Status
colour

Green

Yellow
title

обязательно

не обов'язковий

String

"{"available_parts_count":"n"}"

JSON с количеством выбранных клиентом платежей от 2 до 24 (включительно), например "{"available_parts_count":"6"}"

channel_id

Місто плателника

Max 32 символи
Вказати NA, якщо немає даних

payer_zip

Status
colour

Greenhash

Yellow
title

обязательно

privat_parts

Признак оплаты частями монобанк

не обов'язковий

String

Поштовий індекс платника

Max 32 символи

ext1, ext2, ext3, ext5, ext6, ext7, ext8, ext9, ext10

Status
colour

Green

Yellow
title

обязательно

String

Контрольная подпись

не обов'язковий

String

10 додаткових полів

Max 1024 символи в кажному ext полі


Приклад запиту

Expand
titleПриклад запиту на PHP
Code Block
languagephp
md5(
  strtoupper($pass).
  strrev($order_id)
)

async

Status
colourYellow
titleне обязательно

Y
N

Включить асинхронный режим

В асинхронном режиме обязательное использование коллбеков.
По умолчанию значение N

payer_first_name

Status
colourYellow
titleне обязательно

String

Имя плательщика

Max 32 символа без пробелов

payer_last_name

Status
colourYellow
titleне обязательно

String

Фамилия плательщика

Max 32 символа без пробелов

payer_address

Status
colourYellow
titleне обязательно

String

Адрес плательщика

Max 256 символа
Укажите NA, если нет данных

payer_country

Status
colourYellow
titleне обязательно

String

Страна плательщика

Стандарт ISO 3166-1 alpha-2
В формате "ХХ"
2 символа
Укажите NA, если нет данных

payer_state

Status
colourYellow
titleне обязательно

String

Штат плательщика

Note

Обязательный параметр для стран US, CA, AU

Стандарт ISO 3166-2
В формате "ХХ"
2 символа
Укажите NA, если нет данных

payer_city

Status
colourYellow
titleне обязательно

String

Город плательщика

Max 32 символа
Укажите NA, если нет данных

payer_zip

Status
colourYellow
titleне обязательно

String

Почтовый индекс плательщика

Max 32 символа
Укажите NA, если нет данных

ext1, ext2, ext3, ext5, ext6, ext7, ext8, ext9, ext10

Status
colourYellow
titleне обязательно

String

10 дополнительных полей

Max 1024 символа в каждом ext поле

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

Expand
titleПример запроса на PHP
Code Block
languagephp
<?php
  $client_pass = '***<?php
  $client_pass = '***';
  $data['action'] = 'SALE_PART';
  $data['client_key'] = '***';
  $data['order_id'] = '546-4588';
  $data['order_amount'] = '1000.00';
  $data['order_currency'] = 'UAH';
  $data['order_description'] = 'test';
  $data['payer_first_name'] = 'Ivan';
  $data['payer_last_name'] = 'Ivanov';
  $data['payer_phone'] = '+380111111111';
  $data['payer_email'] = 'sale@gmail.com';
  $data['payer_ip'] = '213.186.115.164';
  $data['term_url_3ds'] = 'https://google.com';
  $data['actionext4'] = 'SALE_PART{"available_parts_count":"6"}';
  $data['client_keyhash'] = '***'; md5(
   $data['order_id'] = '546-4588';   $data['order_amount'] = '1000.00';   $data['order_currency'] = 'UAH';
  $data['order_description'] = 'test';
  $data['payer_first_name'] = 'Ivan';
  $data['payer_last_name'] = 'Ivanov';
  $data['payer_phone'] = '+380111111111';
  $data['payer_email'] = 'sale@gmail.com';
  $data['payer_ip'] = '213.186.115.164';
  $data['channel_id'] = 'privat_parts';
  $data['term_url_3ds'] = 'https://google.com';
  $data['ext4'] = '{"available_parts_count":"6"}';
  $hash = md5(
            strtoupper($client_pass).
            strrev($data['order_id'])
          );
?>

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>sale</title>
  </head>
  <body onload="javascript:document.forms[0].submit()">
    <form action="https://secure.platononline.com/post-unq/" method="post">
      <input type="hidden" name="action" value="<?=$data['action']?>" />
      <input type="hidden" name="client_key" value="<?=$data['client_key']?>" />
      <input type="hidden" name="order_id" value="<?=$data['order_id']?>" />
      <input type="hidden" name="order_amount" value="<?=$data['order_amount']?>" />
      <input type="hidden" name="order_currency" value="<?=$data['order_currency']?>" />
      <input type="hidden" name="order_description" value="<?=$data['order_description']?>" />
      <input type="hidden" name="payer_first_name" value="<?=$data['payer_first_name']?>" />
      <input type="hidden" name="payer_last_name" value="<?=$data['payer_last_name']?>" />
      <input type="hidden" name="payer_phone" value="<?=$data['payer_phone']?>" />
      <input type="hidden" name="payer_email" value="<?=$data['payer_email']?>" />
      <input type="hidden" name="payer_ip" value="<?=$data['payer_ip']?>" />
      <input type="hidden" name="term_url_3ds" value="<?=$data['term_url_3ds']?>" />
      <input type="hidden" name="channel_id" value="<?=$data['channel_id']?>" />
      <input type="hidden" name="ext4" value="<?=$data['ext4']?>" />
      <input type="hidden" name="hash" value="<?=$hash?>" />
    </form>                                             
  </body>
</html>

Проверка платежей

Expand
titleПолный список методов получения результата транзакции
Include PageОтримання результату транзакціїОтримання результату транзакції

Callback

Expand
titleОсобенности работы с Callback
Include PageРобота з CallbackРобота з Callback Expand
titleБезопасность
Include PageБезпекаБезпека

Синхронный режим:

Данный режим работает по умолчанию. Передавать async = N не нужно.

При успешном редиректе (синхронный режим):

Expand
titleПромежуточный Response для редиректа на страницу ожидания результата
Code Block
languagejson
{
  "action":"SALE",
  "result":"REDIRECT",
  "status":"REDIRECT",
  "order_id":"546-45811465476r4367",
  "trans_id":"36618-67917-29503",
  "trans_date":"2022-10-19 13:39:51",
  "redirect_url":"https:\/\/google.com",
  "redirect_params":null,
  "redirect_method":"GET"
}
Expand
titleПромежуточный Callback для редиректа на страницу ожидания результата
Code Block
languagejson
array (
  'action' => 'SALE',
  'result' => 'REDIRECT',
  'status' => 'REDIRECT',
  'order_id' => '546-45811465476r4367',
  'trans_id' => '36618-67917-29503',
  'trans_date' => '2022-10-19 13:39:51',
  'redirect_url' => 'https:\/\/google.com',
  'redirect_params' => null,
  'redirect_method" => 'GET',
)

При успешной оплате (синхронный режим):

Expand
titleResponse при успешном списании
Code Block
languagejson
{
  "action":"SALE",
  "result":"SUCCESS",
  "status":"PENDING",
  "order_id":"4385302",
  "trans_id":"28261-34099-19648",
  "descriptor":null,
  "trans_date":"2020-02-25 06:50:09"
}

Параметр

Описание

action

SALE

result

SUCCESS

status

PENDING

order_id

Уникальный ордер ID транзакции в системе мерчанта

trans_id

Уникальный ордер ID транзакции в системе Platon

trans_date

Время проведения транзакции в формате UTC (YYYY-MM-DD HH-MM-SS)

descriptor

NULL

Expand
titleCallback при успешном списании
Code Block
languagephp
array (
  'action' => 'SALE',
  'result' => 'SUCCESS',
  'status' => 'PENDING',
  'order_id' => '4385323',
  'trans_id' => '28261-47789-28578',
  'trans_date' => '2020-02-25 07:12:58',
  'descriptor' => NULL,
  'hash' => '********************************',
)

Параметр

Описание

action

SALE

result

SUCCESS

status

PENDING

order_id

Уникальный ордер ID транзакции в системе мерчанта

trans_id

Уникальный ордер ID транзакции в системе Platon

trans_date

Время проведения транзакции в формате UTC (YYYY-MM-DD HH-MM-SS)

descriptor

NULL

hash

Зашифрованная подпись для проверки достоверности коллбека

Code Block
md5(
  strtoupper(
    strrev(email).
    client_pass.
    trans_id
  )
)
Info

Внимание! Если при запросе на оплату не был указан email, то при проверке hash в подписи Callback следует указать пустое значение для email.

При неуспешной оплате (синхронный режим):

Expand
titleResponse при неуспешном списании
Code Block
languagejson
{
  "action":"SALE",
  "result":"DECLINED",
  "status":"DECLINED",
  "order_id":"4092002",
  "trans_id":"28076-29879-99538",
  "trans_date":"2020-02-03 20:49:47",
  "decline_reason":"Declined by processing"
}

Параметр

Описание

action

SALE

result

DECLINED

status

DECLINED

order_id

Уникальный ордер ID транзакции в системе мерчанта

trans_id

Уникальный ордер ID транзакции в системе Platon

trans_date

Время проведения транзакции в формате UTC (YYYY-MM-DD HH-MM-SS)

descriptor

NULL

decline_reason

Причина отмены транзакции

Expand
titleCallback при неуспешном списании
Code Block
languagephp
array (
  'action' => 'SALE',
  'result' => 'DECLINED',
  'status' => 'DECLINED',
  'order_id' => '4092002',
  'trans_id' => '28076-29879-99538',
  'trans_date' => '2020-02-03 20:49:47',
  'decline_reason' => 'Declined by processing',
  'hash' => '********************************',
)

Параметр

Описание

action

SALE

result

DECLINED

status

DECLINED

order_id

Уникальный ордер ID транзакции в системе мерчанта

trans_id

Уникальный ордер ID транзакции в системе Platon

trans_date

Время проведения транзакции в формате UTC (YYYY-MM-DD HH-MM-SS)

descriptor

NULL

decline_reason

Причина отмены транзакции

hash

Зашифрованная подпись для проверки достоверности коллбека

Code Block
md5(
  strtoupper(
    strrev(email).
    client_pass.
    trans_id
  )
)
Info

Внимание! Если при запросе на оплату не был указан email, то при проверке hash в подписи Callback следует указать пустое значение для email.

Асинхронный режим:

Данный режим активируется при передаче async = Y. В этом режиме обязательно необходимо принимать callback на ваш callback url.

Промежуточный ответ (асинхронный режим):

Expand
titleResponse о принятии запроса в обработку
Code Block
languagejson
{
  "action":"SALE",
  "result":"ACCEPTED",
  "order_id":"4385302",
  "trans_id":"28261-34099-19648",
  "trans_date":"2020-02-25 06:50:09"
}

Параметр

Описание

action

SALE

result

ACCEPTED

order_id

Уникальный ордер ID транзакции в системе мерчанта

trans_id

Уникальный ордер ID транзакции в системе Platon

trans_date

Время проведения транзакции в формате UTC (YYYY-MM-DD HH-MM-SS)

При успешном редиректе (aсинхронный режим):

Expand
titleПромежуточный Response для редиректа на страницу ожидания результата
Code Block
languagejson
{
  "action":"SALE",
  "result":"REDIRECT",
  "status":"REDIRECT",
  "order_id":"546-45811465476r4367",
  "trans_id":"36618-67917-29503",
  "trans_date":"2022-10-19 13:39:51",
  "redirect_url":"https:\/\/google.com",
  "redirect_params":null,
  "redirect_method":"GET"
}
Expand
titleПромежуточный Callback для редиректа на страницу ожидания результата
Code Block
languagejson
array (
  'action' => 'SALE',
  'result' => 'REDIRECT',
  'status' => 'REDIRECT',
  'order_id' => '546-45811465476r4367',
  'trans_id' => '36618-67917-29503',
  'trans_date' => '2022-10-19 13:39:51',
  'redirect_url' => 'https:\/\/google.com',
  'redirect_params' => null,
  'redirect_method" => 'GET',
)

При успешной оплате (асинхронный режим):

Expand
titleCallback при успешном списании
Code Block
languagephp
array (
  'action' => 'SALE',
  'result' => 'SUCCESS',
  'status' => 'PENDING',
  'order_id' => '4385323',
  'trans_id' => '28261-47789-28578',
  'trans_date' => '2020-02-25 07:12:58',
  'descriptor' => NULL,
  'hash' => '********************************',
)

Параметр

Описание

action

SALE

result

SUCCESS

status

PENDING

order_id

Уникальный ордер ID транзакции в системе мерчанта

trans_id

Уникальный ордер ID транзакции в системе Platon

trans_date

Время проведения транзакции в формате UTC (YYYY-MM-DD HH-MM-SS)

descriptor

NULL

hash

Зашифрованная подпись для проверки достоверности коллбека

Code Block
md5(
  strtoupper(
    strrev(email).
    client_pass.
    trans_id
  )
)
Info

Внимание! Если при запросе на оплату не был указан email, то при проверке hash в подписи Callback следует указать пустое значение для email.

При неуспешной оплате (асинхронный режим):

Expand
titleCallback при неуспешном списании
Code Block
languagephp
array (
  'action' => 'SALE',
  'result' => 'DECLINED',
  'status' => 'DECLINED',
  'order_id' => '4092002',
  'trans_id' => '28076-29879-99538',
  'trans_date' => '2020-02-03 20:49:47',
  'decline_reason' => 'Declined by processing',
  'hash' => '********************************',
)

Параметр

Описание

action

SALE

result

DECLINED

status

DECLINED

order_id

Уникальный ордер ID транзакции в системе мерчанта

trans_id

Уникальный ордер ID транзакции в системе Platon

trans_date

Время проведения транзакции в формате UTC (YYYY-MM-DD HH-MM-SS)

descriptor

NULL

decline_reason

Причина отмены транзакции

hash

Зашифрованная подпись для проверки достоверности коллбека

Code Block
md5(
  strtoupper(
    strrev(email).
    client_pass.
    trans_id
  )
)
Info

Внимание! Если при запросе на оплату не был указан email, то при проверке hash в подписи Callback следует указать пустое значение для email.

Ошибки запросов

Список ошибок, их причин и возможных решений.
Expand
title
       strtoupper($client_pass).
                    strrev($data['order_id'])
                  );

$url = 'https://secure.platononline.com/post/';
$crq = curl_init();
curl_setopt($crq, CURLOPT_URL, $url);
curl_setopt($crq, CURLOPT_HEADER, 0);
curl_setopt($crq, CURLOPT_POST, 1);
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, $data);
$result = curl_exec($crq);
if (curl_errno($crq)) {
  echo 'ERROR: '.curl_error($crq);
}else{
  echo $result;
}
curl_close($crq);
Info

Postman Collection


Тестування

Тестовий режим вмикається опціонально на боці PSP Platon.

Для тестування після редіректа клієнта на сторінку оформлення оплати частинами Приватбанк необхідно ввести тестові реквізити:

Телефон - 988748970

Пароль - password8970

Info

Увага! При бойовому використанні, якщо було введено телефон який у клієнта підв'язано в Приватбанк і у нього є додаток на телефоні, то замість редіректа в браузер буде редірект в додаток. В інших випадках клієнту відкриється форма Приватбанка для авторизації в браузері.


Перевірка оплат

Expand
titleСписок методів отримання результату транзакції
Include Page
Отримання результату транзакції
Отримання результату транзакції

Callback

Expand
titleОсобливості роботи з Callback
Include Page
Робота з Callback
Робота з Callback
Expand
titleБезпека
Include Page
Безпека
Безпека

Синхронний режим

Стандартний режим роботи. Передавати async = N не потрібно.


Асинхронний режим

Цей режим активується при передачі async = Y. В цьому режимі є обов'язковим використання коллбеків.

Принципової різниці у використанні синхронного або асинхронного режимів немає. Вам необхідно вибрати в залежності від найбільш зручного варіанту реалізації саме під ваш проект.


Include Page
Callback / Response - SALE_PART Приватбанк
Callback / Response - SALE_PART Приватбанк

Помилки запитів

Expand
titleСписок помилок та рішень
Include Page
Помилки та рішення при запитах
Помилки та рішення при запитах