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


API параметры

HTTP METHOD: POST

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

Если ваше юр. лицо открыто в Приватбанк и вы передаете в запросе телефон плательщика, то:

1) обязательный формат телефона 380…

2) номер телефона должен соответствовать финансовому номеру привязанному к карте

Параметр

Значение

Описание

Особенности

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…

Info

Номер телефона должен соответствовать финансовому номеру привязанному к карте.

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
RU
EN

Язык отображения формы

В приоритете настройка языка браузера плательщика

first_name

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

String

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

Max 32 символа

last_name

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

String

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

Max 32 символа

phone

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

Number

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

Note

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

state

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

String

Код штата, провинции или области плательщика

Note

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

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

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

Дополнительные поля

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


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

Expand
titleПример запроса на PHP
Warning

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

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>

Тестирование

В целях тестирования необходимо использовать реальную карту привязанную к Приват24.


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

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 с добавлением order методом GET

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

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

Note

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


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

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