Versions Compared

Key

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

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


Зміст

Table of Contents
minLevel1
maxLevel2
include
outlinefalse
indent0px
stylecircle
exclude
typelist
class
printablefalse

API параметри

HTTP METHOD: POST

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


Параметр

Значення

Опис

Особливості

key

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

String

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

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

order

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

String

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

Max 32 символи

action

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

CREATE

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

payment

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

CC

Ознака еквайрингової оплати

description

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

String

Опис

Note

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

Max 5000 символів

amount

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

Number

Сума оплати

Tip

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

1000.00

Warning

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

1000
1000.0
1,000.0
1,000.00

sign

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

String

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

Code Block
languagephp
md5(
  strtoupper(
    $key.
    $order$payment.
    $amount.
    strrev($pass).
  )
)

url

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

String

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

Max 1024 символа

При відсутності можливості створити вашу власну сторінку успішної оплати можете використати нашу стандартну.

error_url

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

String

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

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

Max 1024 символа

При відсутності можливості створити вашу власну сторінку невдалої оплати можете використати нашу стандартну.

lang

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

UK
EN

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

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

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

email

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

String

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

Max 255 символів

first_name

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

String

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

Max 32 символи

last_name

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

String

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

Max 32 символи

phone

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

Number

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

Info

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

Max 255 символів

formid

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

String

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

Max 255 символів

recurring

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

Y

Створення токена картки

Для отримання rc_id та rc_token

req_token

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

Y

Створення токена картки

Для отримання card_token

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

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

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

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

date_ran

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

String

Дата та час активації короткого посилання для можливості оплати

Tip

Час по Києву.

Info

Обов'язковий формат часу YYYY-MM-DD HH:MM:SS

Стандартно коротке посилання активне з моменту створення

Expand
titleПриклад помилки, яку побачить клієнт

date_end

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

String

Дата та час деактивації короткого посилання для заборони можливості оплати

Tip

Час по Києву.

Info

Обов'язковий формат часу YYYY-MM-DD HH:MM:SS

Note

Стандартно коротке посилання активне до 2099-12-31 23:59:59

Expand
titleПриклад помилки, яку побачить клієнт

qr

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

Y

Отримати картинку з QR кодом

Картинку необхідно буде завантажити на ваш сервер

deactivate

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

Y

Деактивація короткого посилання після успішної оплати

Використовується для заборони повторної оплати по тому ж короткому посиланню декілька разів


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

Expand
titleПриклад запиту на PHP
Code Block
languagephp
<?php
  $pass = '***';
  $data['key']= '***';
  $data['action'] = 'CREATE';
  $data['payment'] = 'CC';
  $data['order'] = '123ABC';
  $data['description'] = 'Тестовая оплата';
  $data['amount'] = '356.00';
  $data['qr'] = 'Y';
  $data['url'] = 'https://google.com';
  $data['sign'] = md5(strtoupper(
    $data['key'].
    $data['orderpayment'].
    $data['amount'].
    strrev($pass)
  ));
   
  $url = 'https://secure.platononline.com/post-invoice/';
  $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);
Expand
titleПриклад запиту на .NET
Code Block
languagephp
var url = "https://secure.platononline.com/post-invoice/";

var httpRequest = (HttpWebRequest)WebRequest.Create(url);
httpRequest.Method = "POST";

httpRequest.ContentType = "application/x-www-form-urlencoded";

var data = "key=*****&action=create&order=123ABC&description=Test%20Payment&amount=356.00&qr=Y&sign=*********************";

using (var streamWriter = new StreamWriter(httpRequest.GetRequestStream()))
  {
    streamWriter.Write(data);
  }

var httpResponse = (HttpWebResponse)httpRequest.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
  {
    var result = streamReader.ReadToEnd();
  }

Responce

Code Block
languagejson
{
  "action":"CREATE",
  "result":"SUCCESS",
  "short_link":"https:\/\/secure.platononline.com\/payment\/shortlink\/655f00d39169657856757",
  "upload_qr":"https:\/\/pltn.me\/v3\/qr\/qr_655f00d39169657856757.png"
}

Тестування

Expand
titleВикористайте наші тестові реквізити
Include Page
Тестові реквізити (IE, A2C)
Тестові реквізити (IE, A2C)

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

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

Callback

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

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

Expand
titleCallback при успішній оплаті карткою, Google Pay, Apple Pay, оплата частинами (при оплаті с платіжної форми)
Code Block
languagephp
array (
  'id' => '27374-54220-93708',
  'order' => '11-22-33',
  'status' => 'SALE',
  'rrn' => NULL,
  'approval_code' => NULL,
  'card' => '411111****1111',
  'description' => 'Оплата триал версии',
  'amount' => '1.00',
  'currency' => 'UAH',
  'name' => 'Марина Иванова',
  'email' => 'platon@gmail.com',
  'country' => NULL,
  'state' => NULL,
  'city' => NULL,
  'address' => NULL,
  'date'=> '2019-11-14 15:30:22',
  'ip' => '155.209.55.69',
  'sign' => '********************************',
  'rc_id' => '27374-54220-93708',
  'rc_token' => 'b2ef4d1061621ffc0ed12d00c155ec93',
  'card_token' => '85351eeec95ebc2fef8a210ab5c9818e64157460af4600ce1210508f08f87433',
  'fee_type' => 'TRANSACTION',
  'fee' => '0.5',
)

Параметр

Опис

id

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

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

order

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

Ордер ID транзакції в системі мерчанта. Якщо параметр не передавався система Platon присвоїт його самостійно

status

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

SALE

rrn

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

Значення RRN транзакції

approval_code

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

Значення approval_code транзакції

card

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

Маска картки в форматі ХХХХХХ****ХХХХ, або маска телефону при оплаті частинами

description

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

Опис

amount

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

Сума оплати

currency

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

UAH

name

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

Сума переданих параметрів first_name та last_name

email

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

E-mail платника

country

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

Код країни платника (2-а знака)

state

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

Код штата платника (2-х або 3-х значний код)

city

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

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

address

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

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

date

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

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

ip

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

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

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

Status
colourYellow
titleОпція

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

rc_id

Status
colourYellow
titleОпція

Ордер ID в системі Platon для наступних транзакцій по rc_token

rc_token

Status
colourYellow
titleОпція

Зашифрований токен картки для наступних транзакцій по rc_token

card_token

Status
colourYellow
titleОпція

Зашифрований токен картки для наступних транзакцій по card_token

card_hash

Status
colourYellow
titleОпція

Уникальне зашифроване значення номера картки.

Цей параметр дасть вам можливість:

  • Прив'язати картку під клієнта.

  • Перевірити чи не використовував її інший клієнт.

  • Перевірити які кредити, товари та послуги оплачували цією карткою.

  • Відслідковувати шахрайство, коли клієнт використовує ту саму картку з іншого акаунта, наприклад, щоб повторно скористатися акцією.

Info

Активується додатково по вашому зверненню в груповий чат.

fee_type

Status
colourYellow
titleОпція

Ознака яким чином знімається комісія:

  • ACT - по актам.

  • TRANSACTION - потранзакційно.

Info

Активується додатково по вашому зверненню в груповий чат.

fee

Status
colourYellow
titleОпція

Сума комісії з мерчанта по транзакції в ГРН

Info

Активується додатково по вашому зверненню в груповий чат.

issuing_bank

Status
colourYellow
titleОпція

Назва банку емітентка картки клієнта.

Info

Активується додатково по вашому зверненню в груповий чат.

brand

Status
colourYellow
titleОпція

'brand' => 'VISA'

'brand' => 'MASTER'

'brand" => 'PROSTIR'

Info

Активується додатково по вашому зверненню в груповий чат.

MID

Status
colourYellow
titleОпція

Унікальний ідентифікатор банківського термінала PSP Paton. Підкожний платіжний метод та мерчанта свій ідентифікатор.

Info

Активується додатково по вашому зверненню в груповий чат.

sign

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

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

Code Block
languagephp
md5(
  strtoupper(
    strrev($email).
    $pass.
    $order.
    strrev(
      substr($card,0,6).
      substr($card,-4)
    )
  )
)
Info

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

Expand
titleCallback при успішній оплаті Privat24 (при оплаті з платіжної форми)
Code Block
languagephp
array (
  'id' => '27374-54220-93708',
  'order' => '11-22-33',
  'status' => 'SALE',
  'rrn' => NULL,
  'approval_code' => NULL,
  'number' => '411111****11',
  'description' => 'Оплата триал версии',
  'amount' => '1.00',
  'currency' => 'UAH',
  'name' => 'Марина Иванова',
  'email' => 'platon@gmail.com',
  'country' => NULL,
  'state' => NULL,
  'city' => NULL,
  'address' => NULL,
  'date'=> '2019-11-14 15:30:22',
  'ip' => '155.209.55.69',
  'sign' => '********************************',
  'rc_id' => '27374-54220-93708',
  'rc_token' => 'b2ef4d1061621ffc0ed12d00c155ec93',
  'card_token' => '85351eeec95ebc2fef8a210ab5c9818e64157460af4600ce1210508f08f87433',
  'fee_type' => 'TRANSACTION',
  'fee' => '0.5',
)

Параметр

Опис

id

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

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

order

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

Ордер ID транзакції в системі мерчанта. Якщо параметр не передавався система Platon присвоїт його самостійно

status

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

SALE

rrn

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

Значення RRN транзакції

approval_code

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

Значення approval_code транзакції

number

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

Маска картки в форматі ХХХХХХ****ХХ

description

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

Опис

amount

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

Сума оплати

currency

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

UAH

name

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

Сума переданих параметрів first_name та last_name

email

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

E-mail платника

country

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

Код країни платника (2-а знака)

state

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

Код штата платника (2-х або 3-х значний код)

city

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

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

address

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

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

date

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

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

ip

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

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

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

Status
colourYellow
titleОпція

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

rc_id

Status
colourYellow
titleОпція

Ордер ID в системі Platon для наступних транзакцій по rc_token

rc_token

Status
colourYellow
titleОпція

Зашифрований токен картки для наступних транзакцій по rc_token

card_token

Status
colourYellow
titleОпція

Зашифрований токен картки для наступних транзакцій по card_token

card_hash

Status
colourYellow
titleОпція

Уникальне зашифроване значення номера картки.

Цей параметр дасть вам можливість:

  • Прив'язати картку під клієнта.

  • Перевірити чи не використовував її інший клієнт.

  • Перевірити які кредити, товари та послуги оплачували цією карткою.

  • Відслідковувати шахрайство, коли клієнт використовує ту саму картку з іншого акаунта, наприклад, щоб повторно скористатися акцією.

Info

Активується додатково по вашому зверненню в груповий чат.

fee_type

Status
colourYellow
titleОпція

Ознака яким чином знімається комісія:

  • ACT - по актам.

  • TRANSACTION - потранзакційно.

Info

Активується додатково по вашому зверненню в груповий чат.

fee

Status
colourYellow
titleОпція

Сума комісії з мерчанта по транзакції в ГРН

Info

Активується додатково по вашому зверненню в груповий чат.

issuing_bank

Status
colourYellow
titleОпція

Назва банку емітентка картки клієнта.

Info

Активується додатково по вашому зверненню в груповий чат.

brand

Status
colourYellow
titleОпція

'brand' => 'VISA'

'brand' => 'MASTER'

'brand" => 'PROSTIR'

Info

Активується додатково по вашому зверненню в груповий чат.

MID

Status
colourYellow
titleОпція

Унікальний ідентифікатор банківського термінала PSP Paton. Підкожний платіжний метод та мерчанта свій ідентифікатор.

Info

Активується додатково по вашому зверненню в груповий чат.

sign

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

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

Code Block
languagephp
md5(
  strtoupper(
    strrev($email).
    $pass.
    $order.
    strrev(
      substr($card,0,6).
      substr($card,-4)
    )
  )
)
Info

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

Expand
titleПриклад GET параметрів
Tip

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

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

order = 12345

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

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

Note

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


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

Expand
titleПомилки запитів та варіанти рішень

Ошибка

Причины

Решение

{"error":"We could not find a match for key, sorry. Please check key and repeat the request." }

Данный функционал вам не активирован.

Обратитесь в тех поддержку Platon для активации.

{"error":"The order parameter contains more than 255 characters."}

Параметр order содержит более 255 символов.

Исправить данные в параметре order и переотправить запрос.

{"error":"The description parameter contains more than 1024 characters."}

Параметр description содержит более 1024 символов.

Исправить данные в параметре description и переотправить запрос.

{"error":"Amount parameter specified in the wrong format."}

Параметр amount указан в неверном формате.

Исправить данные в параметре amount и переотправить запрос.

{"error":"Invalid request signature. Please check signature calculation method."}

Неверная подпись sign запроса.

Проверьте метод расчета подписи.

{"error":"This request not allowed"}

Общая ошибка.

Проверьте верность отправки запроса в систему.

{"error":"GET request not allowed"}

GET метод запроса не разрешен.

Проверьте верность отправки запроса в систему.

{"error":"This request not allowed"}

Данный метод запроса не разрешен.

Проверьте верность отправки запроса в систему.

{"error":"Empty POST"}

Ваш запрос не содержит параметров.

Проверьте верность отправки запроса в систему.

{"error":"Could not connect to database: … "}

Проблема с соединением с базой данных на стороне Platon с указанием причины.

Обратитесь в тех поддержку Platon для проверки.

{"error":"Your data has not been entered into the database."}

Ваш запрос не может быть записан в систему (системная ошибка).

Повторите запрос.