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

Запит на повернення необхідно проводити виключно не менше ніж через 10 хвилин після отримання коллбека про успішний платіж. В іншому разі буде помилка.


note

Зміст

Зміст


note

Опис

Опис

Цей метод дає змогу повернути платнику грошові кошти під час оплати по Privat24.

Повернення коштів можливе тільки в разі надсилання запиту з API ключа та юр. особи, що були використані для оплати.


note

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

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

  • Інтегрувати запит згідно з даним API.
  • Передати техпідтримці PSP Platon посилання для Callback (якщо раніше не було вказано).
  • Повідомити в техпідтримку PSP Platon ваші IP-адреси сервера сайту або про те, що буде використовуватися застосунок (у цьому разі обмеження за IP буде знято).
  • Після успішної оплати Privat24 реальною карткою провести запит на повернення.
  • Отримати Callback і Response.
  • Відобразити платнику на сайті / додатку повернення коштів.

note

Вимоги

Вимоги

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


note

API параметри

API параметри

HTTP METHOD: POST

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

Параметр

Значення

Опис

Особливості

action

CREDITVOID

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

client_key

String

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

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

trans_id

String

ID транзакції Platon

ID транзакції в системе Platon

amount

Number

Сума повернення

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

Правильний варіант

1000.00

Неправильні варіанти

1000
1000.0
1,000.0
1,000.00

hash

String

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

md5(
  strtoupper(
    $client_pass.
    $trans_id
  )
)

note

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

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

<?php
  $client_pass = '***';
  $data['client_key'] = '***';
  $data['action'] = 'CREDITVOID';
  $data['trans_id'] = '19848-26243-92097';
  $data['amount'] = '85.00';
  $data['hash'] = md5(
            strtoupper(
              $client_pass.
              $data['trans_id']
            )
          );
          
$url = 'https://secure.platononline.com/post-unq/';
$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, http_build_query($data));
$result = curl_exec($crq);
  if (curl_errno($crq)) {
    echo 'ERROR: '.curl_error($crq);
  }else{
    echo $result;
  }
curl_close($crq);

Postman Collection


note

Callback та Response

Callback та Response

Проміжна відповідь:

{
  "action":"CREDITVOID",
  "result":"ACCEPTED",
  "order_id":"27859-52747-0554",
  "trans_id":"27859-54289-00657"
}

При успішному поверненні:

Callback надсилається через годину після успішної авторизації

array (
  'id' => '31192-15588-09364',
  'order' => '31192-15548-3658',
  'status' => 'REFUND',
  'description' => 'Test_by_Platon',
  'amount' => '34.12',
  'currency' => 'UAH',
  'date' => '2021-01-29 11:59:18',
  'ip' => '178.158.192.219',
  'sign' => '********************************',
  'number' => '516875*74',
  'email' => NULL,
  'name' => ' ',
  'phone' => '380967904334',
)

У разі помилки запиту:

{
  "result":"ERROR",
  "error_message":"Transaction already refunded"
}

Додаткова перевірка повернення

Для отримання інформації про повернення в разі, якщо ваша система не змогла прийняти Callback, Response або з іншої причини, можна скористатися додатковим API запитом перевірки:


note

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

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


note

Пов'язані розділи

Пов'язані розділи

Інші методи повернень: