Versions Compared

Key

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

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


Зміст

Table of Contents
maxLevel2
indent0px
absoluteUrltrue
stylecircle


Опис

Цей метод дозволить розмістити окрему кнопку для оплати Privat24 без використання платіжної форми.

Note

Заборонено додавати атрибут target="_blank" на кнопку оплати для відкриття Privat24 в новому вікні.

Note

Оплата Privat24 не підтримує холдування коштів (HOLD).


Демо

Iframe
scrollingno
srchttps://devplaton.com.ua/invoices/demo_buttons/payment_privat24.php
width570
frameborderhide
height55


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

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

Вимоги

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

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

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

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

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

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

Include PageЛоготипи для розміщенняЛоготипи для розміщення Expand
titleTLS 1.2
Необходима поддержка протокола TLS не ниже версии 1.2
Include Page
Вимоги до сайтів та додатків
Вимоги до сайтів та додатків

API параметри

HTTP METHOD: POST

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

Параметр

Значення

Опис

Особливості

key

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

String

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

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

payment

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

P24

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

data

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

amount

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

Number

Сума оплати

Tip

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

1000.00

Warning

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

1000
1000.0
1,000.0
1,000.00

currency

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

UAH

Валюта

Info

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

description

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

String

Опис

Note

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

Max 5000 символів

url

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

String

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

Max 255 символів

email

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

String

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

Info

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

Info

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

Max 255 символів

phone

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

Number

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

Info

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

Max 255 символів

sign

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

String

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

Code Block
languagephp
md5(
  strtoupper(
    strrev($key).
    strrev($payment).
    strrev($data).
    strrev($url).
    strrev($pass)
  )
)

lang

Status
colourYellow
titleне Обов'язковий

UK
EN

Мова відображення платіжної форми

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

Стандарт ISO 639-1

first_name

Status
colourYellow
titleне Обов'язковий

String

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

Max 32 символи

last_name

Status
colourYellow
titleне Обов'язковий

String

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

Max 32 символи

address

Status
colourYellow
titleне Обов'язковий

String

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

Max 32 символи

zip

Status
colourYellow
titleне Обов'язковий

String

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

Max 32 символи

city

Status
colourYellow
titleне Обов'язковий

String

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

Max 32 символи

country

Status
colourYellow
titleне Обов'язковий

String

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

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

Max 2 символи

state

Status
colourYellow
titleне Обов'язковий

String

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

Note

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

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

Max 3 символа.

customer_wallet

Status
colourYellow
titleне Обов'язковий

String

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

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

order

Status
colourYellow
titleне Обов'язковий

String

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

Max 32 символи

formid

Status
colourYellow
titleне Обов'язковий

String

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


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

Status
colourYellow
titleне Обов'язковий

String

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

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


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

Expand
titleПриклад запиту на PHP + HTML
Warning

Запит має відправлятися з браузера платника Client - Server, а не з сервера мерчанта Server - Server.

Info

Content-Type: form-data або x-www-form-urlencoded

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

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Payment</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="data" value="<?=$data['data']?>" />
    <input type="hidden" name="sign" value="<?=$sign?>" />
    </form>                                         	
  </body>
</html>
Info

Postman Collection


Тестування

В цілях тестування необхідно використовувати реальну картку прив'язану до Privat24.


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

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

Callback

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

Callback при успешной оплате

Для просмотра примера раскройте список

При успешной оплате:

Expand
titleПример POST параметров в Callback при успешной оплате
Code Block
languagephp
array (
  'id' => '12345-12345-12345',
  'order' => '12345678',
  'status' => 'SALE',
  'description' => 'description 12345',
  'amount' => '99.99',
  'currency' => 'UAH',
  'date' => '2020-02-14 11:11:11',
  'ip' => '172.172.17.172',
  'sign' => 'qwerty123uiop456asdfgh789jkl012z',
  'number' => '411156*89',
  'email' => NULL,
  'name' => ' ',
  'phone' => NULL,
  'ext1' => '12345678',
)

Параметр

Описание

id

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

order

Ордер ID транзакции в системе мерчанта. Если параметр не передавался система Platon присвоит его самостоятельно

status

SALE

number

Маска карты в формате ХХХХХХ*ХХ

description

Описание

amount

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

currency

Валюта транзакции

name

Сума передаваемых параметров first_name и last_name

email

E-mail плательщика

phone

Телефон плательщика

date

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

ip

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

ext1-ext10

Дополнительные поля от 1 до 10

sign

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

Code Block
md5(
  strtoupper(
    $pass.
    $order_id
  )
)
Expand
titleПример GET параметров
TipПлательщик будет отправлен по ссылке указанной в url с добавлением
Include Page
Callback / Response - P24
Callback / Response - P24
Expand
titleПриклад GET параметрів
Tip

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

Code Block
languagephp
array (
  'token' => '12345678',
)

При

неуспешной оплате

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

Note

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


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

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

Expand
titleСписок ошибок, их причин и возможных решений.
Include Page
Помилки та рішення при запитах
Помилки та рішення при запитах