Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

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

Info

API метод працює по білому списку IP адрес. Надайте їх в груповий чат.


Panel
bgColor#EAE6FF

Зміст

Table of Contents
minLevel1
maxLevel6
include
outlinefalse
indent0px
exclude
typelist
class
printablefalse

Panel
bgColor#EAE6FF

Опис

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

Warning

Увага! Списання треба проводити на всю суму.

Note

При відсутності товару або послуги необхідно виконати повернення коштів.

Note

На 15 день відбудеться автоматичне списання коштів у випадку якщо за цей період вами не було проведено будь яких дій.

Note

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

Note

Відправляти товар або надавати послугу до успішного списання заборонено. На момент списання картка може бути заблокована і отримати кошти буде неможливо.


Panel
bgColor#EAE6FF

Вимоги

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

Panel
bgColor#EAE6FF

API параметри

HTTP METHOD:

Status
colourGreen
titlePOST

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

Параметр

Значення

Опис

Особливості

action

Status
colourGreen
titleОБов'язковий

CAPTURE

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

client_key

Status
colourGreen
titleОБов'язковий

String

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

Ключ надається на пошту мерчанта і має відповідати ключу по якому було проведено оплату з HOLD

trans_id

Status
colourGreen
titleОБов'язковий

String

ID оплати в системі PSP Platon

amount

Status
colourGreen
titleОБов'язковий

Number

Сума списання

Має бути меньше або рівна сумі в HOLD

Tip

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

1000.00

Warning

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

1000
1000.0
1,000.0
1,000.00

hash

Status
colourGreen
titleОБов'язковий

String

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

Code Block
languagephp
md5(
  strtoupper(
    $client_pass.
    $trans_id
  )
)

Panel
bgColor#EAE6FF

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

Expand
titleПриклад запиту на PHP
Code Block
languagephp
<?php
  $client_pass = '***';
  $data['client_key'] = '***';
  $data['action'] = 'CAPTURE';
  $data['trans_id'] = '19848-26243-92097';
  $data['amount'] = '100.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);
Info

Postman Collection


Panel
bgColor#EAE6FF

Callback

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

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

Expand
titleCallback при успішному списанні
Code Block
languagephp
array (
  'action' => 'SALE',
  'result' => 'SUCCESS',
  'status' => 'SETTLED',
  'order_id' => '1974133',
  'trans_id' => '27841-94347-36138',
  'trans_date' => '2020-01-07 17:50:34',
  'descriptor' => NULL,
  'auth_code' => '',
  'hash' => '********************************',
)
Info

Для перевірки достовірності отриманого callback, рекомендуємо звіряти підпис hash по формулі md5(strtoupper(strrev(email).client_pass.trans_id.strrev(substr(card,0,6).substr(card,-4)))).

Увага! Якщо при першочерговому запиті на оплату не було вказано email, то варто вказати пусте значення email.

Expand
titleResponse при успішному списанні
Code Block
languagejson
{
  "action":"CAPTURE",
  "result":"SUCCESS",
  "status":"SETTLED",
  "order_id":"110714",
  "trans_id":"27851-06615-85267",
  "amount":"657.63"
}

При невдалому списанні:

Expand
titleCallback при невдалому списанні
Code Block
languagephp
array (
  'action' => 'SALE',
  'result' => 'DECLINED',
  'status' => 'PENDING',
  'order_id' => '1974133',
  'trans_id' => '27841-94347-36138',
  'trans_date' => '2020-01-07 17:50:34',
  'descriptor' => NULL,
  'auth_code' => '',
  'hash' => '********************************',
)
Info

Для перевірки достовірності отриманого callback, рекомендуємо звіряти підпис hash по формулі md5(strtoupper(strrev(email).client_pass.trans_id.strrev(substr(card,0,6).substr(card,-4)))).

Увага! Якщо при першочерговому запиті на оплату не було вказано email, то варто вказати пусте значення email.

Expand
titleResponse при невдалому списанні
Code Block
languagejson
{
  "action":"CAPTURE",
  "result":"DECLINED",
  "status":"PENDING",
  "order_id":"110714",
  "trans_id":"27851-06615-85267",
  "amount":"657.63"
}