note

Зміст

Зміст


note

Опис

Опис

Оплата в 1 клік спрощує введення карткових даних. Для оплати платнику необхідно ввести лише CVV код.

В запиті використовується раніше збережена картка у вигляді зашифрованогоcard_token який ви отримуєте при першій звичайній оплаті карткою.

note

Особливості токенів

Особливості токенів

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

Токен можна використовувати на всіх API ключах та юр. особах.

Якщо при спробі оплати ви отримали відповідь 102: Token is not active це значить, що токен не активний і провести транзакцію по ньому не можливо. Такий токен потрібно видалити з вашої бази даних та надати клієнту можливість оплати іншою карткою.

Термін дії CARD_TOKEN відповідає терміну дії картки.


note

Демо

Демо


note

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

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

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

note

Вимоги

Вимоги


note

API параметри

API параметри

HTTP METHOD: POST

API ENDPOINT: https://secure.platononline.com/payment/auth

Параметр

Значення

Опис

Особливості

key

String

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

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

payment

CCT

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

data

amount

Number

Сума оплати

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

1000.00

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

1000
1000.0
1,000.0
1,000.00

currency

UAH

Валюта

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

description

String

Опис

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

Max 5000 символів

card_token

String

Токен картки

card_token з callback першої оплати

url

String

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

Max 255 символів

email

String

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

Max 255 символів

sign

String

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

md5(
  strtoupper(
    strrev($key).
    strrev($payment).
    strrev($data).
    strrev($url).
    strrev($card_token).
    strrev($CLIENT_PASSWORD)
  )
)

lang

UK
EN

Мова відображення форми

В пріорітеті налаштування мови браузера платника

first_name

String

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

Max 32 символи

last_name

String

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

Max 32 символи

phone

Number

Номер телефону платника

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

address

String

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

Max 32 символи

zip

String

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

Max 32 символи

city

String

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

Max 32 символи

country

String

Двозначный код країни платника

Стандарт ISO 3166-1 alpha-2

state

String

Код штату, провінції або області платника

Обов'язковий параметр для країн US, CA, AU

Стандарт ISO 3166-2

order

String

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

Max 32 символи

customer_wallet

String

Номер електронного гаманця платника

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

error_url

String

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

formid

String

Параметр додаткового налаштування


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

String

Додаткові поля

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


note

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

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

Использование cURL для этого запроса запрещено

Content-Type: form-data или x-www-form-urlencoded

<?php
  $pass = '***';
  $data['key'] = '***';
  $data['url'] = 'https://google.com';
  $data['data'] = base64_encode(
                    json_encode(
                      array(
                        'amount' => '100.00',
                        'description' => 'Product',
                        'currency' => 'UAH'
                      )
                    )
                  );
  $data['payment'] = 'CCT';
  $card_token = '***';
  $sign = md5(
            strtoupper(
              strrev($data['key']).
              strrev($data['payment']).
              strrev($data['data']).
              strrev($data['url']).
              strrev($card_token).
              strrev($pass)
            )
          );
?>

<!DOCTYPE html PUBLIC>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>CCT</title>
  </head>
  <body onload="javascript:document.forms[0].submit()">
    <form action="https://secure.platononline.com/payment/auth" method="post">
      <input type="hidden" name="payment" value="<?=$data['payment']?>" />
      <input type="hidden" name="key" value="<?=$data['key']?>" />
      <input type="hidden" name="url" value="<?=$data['url']?>" />
      <input type="hidden" name="card_token" value="<?=$card_token?>" />
      <input type="hidden" name="data" value="<?=$data['data']?>" />
      <input type="hidden" name="sign" value="<?=$sign?>" />
    </form>
  </body>
</html>

note

Тестування

Тестування

В цілях тестування використайтеcard_token отриманий з коллбека при успішній транзакції використовуючи наші тестові реквізити.


note

Час платіжної сесії

Час платіжної сесії

Стандартно у платника буде 15 хв для проведення оплати. Це означає, що на 15 хвилину та 1 секунду оплата стане не доступною та приведе до помилки. Відлік починається з моменту відкриття платіжної форми.

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

Якщо у вас є потреба в іншому проміжку, по вашому запиту можна налаштувати час платіжної сесії з наявних варіантів:

  • 10 хв

  • 30 хв

  • 75 хв


note

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

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


note

Callback

Callback

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

url = https://www.google.com/

order = 12345

Клієнта відправить після успішної оплати на https://www.google.com/?order=12345

При невдалій оплаті:

При невдалій оплаті Callback не відправляється.


note

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

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