Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 48 Next »

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


Содержание


Описание

Данный метод позволит разместить на вашем сайте или в приложении отдельную кнопку для оплаты Google Pay.


Демо


Чеклист интеграции

  • Привести сайт / приложение к соответствию требованиям.
  • Интегрировать API Google Pay.
  • Указать environment в режим TEST.
  • Передать тех поддержке PSP Platon ссылку для Callback.
  • Сообщить в тех поддержке PSP Platon ваши IP адреса сервера сайта или о том, что будет использоваться приложение (в этом случае ограничения по IP будут сняты).
  • Провести запрос для получения зашифрованных данных согласно API Google Pay.
  • После авторизации пользователя и выбора реальной карты в кошельке Google Pay вернет зашифрованные данные.
  • Провести запрос согласно API PSP Platon используя зашифрованные данные от Google Pay.
  • Получить Response или Callback для редиректа плательщика на 3DS проверку.
  • Отправить клиента на 3DS проверку.
  • Получить Response или Callback со статусом платежа DECLINED от PSP Platon.
  • Отправить запрос в Google Business Console для активации аккаунта.
  • Сообщить в тех поддержке PSP Platon об активации аккаунта.
  • Указать environment в режим PRODUCTION.
  • Провести запрос с получение успешного Response или Callback со статусом платежа SUCCESS от PSP Platon.
  • Уведомить клиента об успешной / не успешной оплате.

Требования

 SSL сертификат

У вашего сайта должен быть SSL сертификат.

Для проверки валидности и срока действия вашего SSL сертификата рекомендуем воспользоваться сервисом по ссылке.

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

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

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

 TLS 1.2

Необходима поддержка протокола TLS не ниже версии 1.2


Ограничения

 Браузеры

На данный момент Google Pay работает в таких браузерах:

  • Chrome

  • Safari

  • UC Browser

  • Firefox

  • Opera

  • Microsoft Edge

  • Android

 WebView

Google запрещает использовать Google Pay в WebView, необходимо использовать прямую интеграцию по API.


Google Pay API

Для сайта:

Для Android приложения:


Интегрируйте Google Pay API следуя документации выше для получения PaymentData.

Параметры:

  • allowPaymentMethods : CARD

  • tokenizationSpecification = { "type": "PAYMENT_GATEWAY"}

  • allowedCardNetworks = ['MASTERCARD', 'VISA'];

  • allowedCardAuthMethods = ['PAN_ONLY', 'CRYPTOGRAM_3DS'];

  • gateway = platon

  • gatewayMerchantId = CLIENT_KEY (API ключ выдается сотрудником компании PSP Platon)

 Пример конфиг файла
{
    "apiVersion": 2,
    "apiVersionMinor": 0,
    "allowedPaymentMethods": [
        {
            "type": "CARD",
            "parameters": {
                "allowedAuthMethods": ["PAN_ONLY", "CRYPTOGRAM_3DS"],
                "allowedCardNetworks": ["VISA", "MASTERCARD"]
            },
            "tokenizationSpecification": {
                "type": "PAYMENT_GATEWAY",
                "parameters": {
                    "gateway": "platon",
                    "gatewayMerchantId": "RJ9AE5Y7GX"
                }
            }
        }
    ],
    "merchantInfo": {
        "merchantId": "00986993593073708917",
        "merchantName": "Name"
    },
    "transactionInfo": {
        "totalPriceStatus": "FINAL",
        "totalPriceLabel": "Total",
        "totalPrice": "5.00",
        "currencyCode": "UAH",
        "countryCode": "UA"
    }
}

Если все сделано правильно - на своем сайте/приложении вы получите кнопку Google Pay и после выбора карты вам вернется набор данных с PaymentData.

 Пример набора данных, которые возвращаются от Google Pay
{
  "apiVersionMinor": 0,
  "apiVersion": 2,
  "paymentMethodData": {
    "description": "Mastercard •••• 5179",
    "tokenizationData": {
      "type": "PAYMENT_GATEWAY",
      "token": {
        "signature": "MEYCIQC+IHxUu9Wwra2Vu6tBa2wJPCMT3pWtN1VphLGYtNVLLwIhAOkdbNje//eLrXVc+n6LOlc4PqxWOUcqwrmki/CNA1ur",
        "intermediateSigningKey": {
          "signedKey": "{\"keyValue\":\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwhRrvGB0kZ1248MEJAPwX0YfrQInhyyRM7nyGFjQuzGSViZG3QC9NMvXR9Zd6uVcVzAz+6K/+NEGIWbX8zbk6A\\u003d\\u003d\",\"keyExpiration\":\"1571208568000\"}",
          "signatures": [
            "MEUCIQCR6vIEiyHB8qmlho4/tLd7W8CIGrZDJlCI48CBHeFPvQIgLZJIe4cZv6pYtYYa56QCI/vvg1GqXTP3bTBjO49r5mI="
          ]
        },
        "protocolVersion": "ECv2",
        "signedMessage": "{\"encryptedMessage\":\"k85CGUMmd5PaGmQlHFqHc0HrDZmjM1yG82rFB/p31ZyUleN5nihzjOZif/BKXwg3XA2oLXqBSSWcAdfZwXxCEOqvAQE+kpTC7qVO4wTPip6RruraT6vO9M9FtIf0kcqzYSAN7pl1SUA5jC9rHrqucPoh0/FSspup78SWBt8TnmVKC9O3sQhIZ3SMoGOG4mdjtIrgCwWH2cbrxUH0dHAqOe5ANGOY/mII4nTEp7xaKu41hK/kFE15zVyqgPJXP9bPxzMVk/ozEZSfhSzVTS+9stjkU/kT5EibKB3O1bbxyybKcGQ5vxBOtNOBKKd/NuqNmN2eEK3UbSKb1M3gv45gT9cCeEvlzO7Wg0N100vUBp9RPDN9TH4tj4w578sWFKfTi6FsSrZB27SGWcU0EaKHO9buo94mRBY5yqffF3bKg5mAMPzjDhyHSujqWKAs9C5fBzMEuEr2z7A23kfLqBceH5uS9LJMiZ/yVKCwfpY9u2XyCjKdp7I\\u003d\",\"ephemeralPublicKey\":\"BAMDAtfgcPNuzItrwGLigGj3rtxmyHhZLwx1B4RJZ2oo11jpFf3SA6a3utryCMmlCEcqLfLn6WDH2ArrNBGn+Ew\\u003d\",\"tag\":\"T/qhZ/XY5/3Fe4QBKafm6NqS6EzwVeiKXhRlp8NeWrA\\u003d\"}"
      }
    },
    "type": "CARD",
    "info": {
      "cardNetwork": "MASTERCARD",
      "cardDetails": "5179"
    }
  }
}

С примером PaymentData можете ознакомиться ниже:

 Пример набора данных, которые возвращаются от Google Pay
{
  "signature": "MEYCIQC+IHxUu9Wwra2Vu6tBa2wJPCMT3pWtN1VphLGYtNVLLwIhAOkdbNje//eLrXVc+n6LOlc4PqxWOUcqwrmki/CNA1ur",
  "intermediateSigningKey": 
    {
    "signedKey": "{
        \"keyValue\":\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwhRrvGB0kZ1248MEJAPwX0YfrQInhyyRM7nyGFjQuzGSViZG3QC9NMvXR9Zd6uVcVzAz+6K/+NEGIWbX8zbk6A\\u003d\\u003d\",
        \"keyExpiration\":\"1571208568000\"
      }",
      "signatures": [
        "MEUCIQCR6vIEiyHB8qmlho4/tLd7W8CIGrZDJlCI48CBHeFPvQIgLZJIe4cZv6pYtYYa56QCI/vvg1GqXTP3bTBjO49r5mI="
      ]
    },
    "protocolVersion": "ECv2",
    "signedMessage": "{
      \"encryptedMessage\":\"k85CGUMmd5PaGmQlHFqHc0HrDZmjM1yG82rFB/p31ZyUleN5nihzjOZif/BKXwg3XA2oLXqBSSWcAdfZwXxCEOqvAQE+kpTC7qVO4wTPip6RruraT6vO9M9FtIf0kcqzYSAN7pl1SUA5jC9rHrqucPoh0/FSspup78SWBt8TnmVKC9O3sQhIZ3SMoGOG4mdjtIrgCwWH2cbrxUH0dHAqOe5ANGOY/mII4nTEp7xaKu41hK/kFE15zVyqgPJXP9bPxzMVk/ozEZSfhSzVTS+9stjkU/kT5EibKB3O1bbxyybKcGQ5vxBOtNOBKKd/NuqNmN2eEK3UbSKb1M3gv45gT9cCeEvlzO7Wg0N100vUBp9RPDN9TH4tj4w578sWFKfTi6FsSrZB27SGWcU0EaKHO9buo94mRBY5yqffF3bKg5mAMPzjDhyHSujqWKAs9C5fBzMEuEr2z7A23kfLqBceH5uS9LJMiZ/yVKCwfpY9u2XyCjKdp7I\\u003d\",
      \"ephemeralPublicKey\":\"BAMDAtfgcPNuzItrwGLigGj3rtxmyHhZLwx1B4RJZ2oo11jpFf3SA6a3utryCMmlCEcqLfLn6WDH2ArrNBGn+Ew\\u003d\",
      \"tag\":\"T/qhZ/XY5/3Fe4QBKafm6NqS6EzwVeiKXhRlp8NeWrA\\u003d\"
    }"
  }
}

Настройте отправку полученного значения параметра "token" POST запросом по API Platon, в параметре payment_token.

Предусловия:

Прежде чем вы получите доступ к платежной платформе, вы должны предоставить следующее данные администратору платежной платформы:

  • список ваших IP-адресов, с которых будут направляться запросы на платежную платформу;

  • callback URL - URL-адрес, на который будет отправляться уведомления о результатах обработки Вашего запроса через платежную платформу;

  • контактный E-mail разработчика.

Callback url должен быть обязателен если вы работаете в асинхронном режиме и не должен превышать 255 символов.


API параметры

HTTP METHOD: POST

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

Параметр

Значение

Описание

Особенности

action
ОБЯЗАТЕЛЬНО

GOOGLEPAY

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

client_key
ОБЯЗАТЕЛЬНО

String

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

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

order_id
ОБЯЗАТЕЛЬНО

String

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

Max 255 символа

order_amount
ОБЯЗАТЕЛЬНО

Number

Сумма платежа

Верный вариант

1000.00

Неверные варианты

1000
1000.0
1,000.0
1,000.00

order_currency
ОБЯЗАТЕЛЬНО

UAH

Валюта платежа

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

order_description
ОБЯЗАТЕЛЬНО

String

Описание платежа

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

Max 255 символов

payment_token
ОБЯЗАТЕЛЬНО

String

Токен полученный от Google

payer_ip
ОБЯЗАТЕЛЬНО

Number

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

В формате "ХХХ.ХХХ.ХХХ.ХХХ"

IPv6 на данный момент не поддерживается

payer_email
ОБЯЗАТЕЛЬНО

String

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

Обязательно валидная почта.

Отсутствие пробелов.

Max 256 символа

payer_phone
ОБЯЗАТЕЛЬНО

Number

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

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

term_url_3ds
ОБЯЗАТЕЛЬНО

String

Ссылка по которой будет отправлен клиент после успешного или не успешного прохождении 3DS

Max 255 символов

hash
ОБЯЗАТЕЛЬНО

String

Контрольная подпись

md5(
  strtoupper(
    strrev($payer_email).
    $CLIENT_PASS.
    strrev($payment_token)
  )
)

payer_first_name
НЕ ОБЯЗАТЕЛЬНО

String

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

Max 32 символа без пробелов

payer_last_name
НЕ ОБЯЗАТЕЛЬНО

String

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

Max 32 символа без пробелов

payer_middle_name
НЕ ОБЯЗАТЕЛЬНО

String

Отчество плательщика

Max 32 символа без пробелов

payer_birth_date
НЕ ОБЯЗАТЕЛЬНО

String

Дата рождения плательщика

В формате “YYYY-MM-DD”

payer_address
НЕ ОБЯЗАТЕЛЬНО

String

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

Max 256 символа
Укажите NA, если нет данных

payer_country
НЕ ОБЯЗАТЕЛЬНО

String

Страна плательщика

Стандарт ISO 3166-1 alpha-2
В формате "ХХ"
2 символа
Укажите NA, если нет данных

payer_state
НЕ ОБЯЗАТЕЛЬНО

String

Штат плательщика

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

Стандарт ISO 3166-2
В формате "ХХ"
2 символа
Укажите NA, если нет данных

payer_city
НЕ ОБЯЗАТЕЛЬНО

String

Город плательщика

Max 32 символа
Укажите NA, если нет данных

payer_zip
НЕ ОБЯЗАТЕЛЬНО

String

Почтовый индекс плательщика

Max 32 символа
Укажите NA, если нет данных

ext1, ext2, ext3, ext4, ext5, ext6, ext7, ext8, ext9, ext10
НЕ ОБЯЗАТЕЛЬНО

String

10 дополнительных полей

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

channel_id
НЕ ОБЯЗАТЕЛЬНО

String

Дополнительный платежный канал

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

async
НЕ ОБЯЗАТЕЛЬНО

Y
N

Включить асинхронный режим

В асинхронном режиме обязательное использование коллбеков.

По умолчанию значение N.

auth
НЕ ОБЯЗАТЕЛЬНО

Y
N

Холдирование средств на карте плательщика

По умолчанию N

req_token
НЕ ОБЯЗАТЕЛЬНО

Y
N

Для получения card_token

По умолчанию N


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

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

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

<?php
  $CLIENT_PASS='***';
  $data['action']='GOOGLEPAY';
  $data['CLIENT_KEY']='***';
  $data['order_id']='Test_006';
  $data['order_amount']='0.51';
  $data['order_currency']='UAH';
  $data['order_description']='test';
  $data['payment_token']='{"signature":"MEUCIQD+9/PnFvB+Lo6d/eHpgqQrMvmRDZdW1AcjQKavHrcPmQIgeVjR1hXqH7hkCn+VZqx/kjdofMIYbyL15Xp52mR9+2s\u003d","intermediateSigningKey":{"signedKey":"{\"keyValue\":\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEBOHyOhwWk6SK5nqhFBBI1hSvWHAaOO0Ukbrl56zx7fPNttFFKs2U10f6EWbdhULrv4QT4qMNbyVAq8ig1jdsYA\\u003d\\u003d\",\"keyExpiration\":\"1570945959000\"}","signatures":["MEYCIQCe6t42U5OemtGGdYC6npBNbVxe1HbTF8pUkSD7mO+CWAIhAI/0M/XQuW6i8reT0LCNHKoNfgWYwOWHBoj2wpZdgKHh"]},"protocolVersion":"ECv2","signedMessage":{\"encryptedMessage\":\"U9ChAIukmQ85TdZKAU/26mJUwUt3cVpJmx/JtFi350F/KiRNiIEGi1CmkgVe+ohzikkKLo37Ty3YQjyjVHNTHmF3AyNVTIJCL7qYybt+aFNI1XFlpv3ArWU+fH8Bi190tl7lLyyeNjWx8L402spsLpuUe9OLLjazIq0Vfjw3wRZ2B2+ybUrnoz5Iydapn8B7c/QqR7w53n6svIK58q7eL159Ano0GyfLpUOLLQ949MhP1ze***UzapUGtMd0k0c/4Nnkfs2TnN6ETEtP8y9J29hYKGVOCo79rRSN2xLsYXGNawIiPc6082HWB82JyuW2bfWAL1R0W+2iql2dBWY\\u003d\",\"ephemeralPublicKey\":\"BPYYpVT5INyXSwoNbP/HuGkjQnfnUwUPMH2bCp6Od3EoihnegFZObjP0IVvDA5YfNlLDJjHutBDj30GW5Fei8xw\\u003d\",\"tag\":\"qt4FcCGO4rp969CBBTPJ0nhAeQeR+rOM0FmXk8DdGLQ\\u003d\"}"}';
  $data['payer_email']='sale@gmail.com';
  $data['term_url_3ds']='http://google.com';
  $hash = md5(
            strtoupper(
              strrev(
              $data['payer_email']
              ).
              ($CLIENT_PASS).
              strrev(
                $data['payment_token']
              )
            )
          );
?>

<!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/post/" method="post">
      <input type="hidden" name="action" value="<?=$data['action']?>" />
      <input type="hidden" name="client_key" value="<?=$data['CLIENT_KEY']?>" />
      <input type="hidden" name="order_id" value="<?=$data['order_id']?>" />
      <input type="hidden" name="order_amount" value="<?=$data['order_amount']?>" />
      <input type="hidden" name="order_currency" value="<?=$data['order_currency']?>" />
      <input type="hidden" name="order_description" value="<?=$data['order_description']?>" />
      <input type="hidden" name="payment_token" value="<?=$data['payment_token']?>" />
      <input type="hidden" name="payer_email" value="<?=$data['payer_email']?>" />
      <input type="hidden" name="term_url_3ds" value="<?=$data['term_url_3ds']?>" />
      <input type="hidden" name="hash" value="<?=$hash?>" />
    </form>
  </body>
</html>

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

Переведите environment в режим 'TEST’.

Используйте реальную карту подвязанную в Google Pay для оплаты.

При успешном тесте вы получите ответ о неуспешной транзакции (особенности тестового режима) и 'decline_reason' => 'Declined by processing'

Сообщите тех саппорту об успешном тесте и только после этого перейдите к активации бизнес-аккаунта Google.

Параметр environment в режим 'TEST’ оставить до указаний со стороны тех саппорта PSP Platon.


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

 Полный список методов получения результата транзакции

Callback & Response

Використовуйте Callback або Response (в залежності від типу запиту) для автоматизації процесу зарахування у вашій системі.

Відправляється автоматично або за вашим API запитом для перевідправки.



Особистий кабінет PSP Platon

Всю необхідну інформацію ви знайдете в нашому особистому кабінеті за посиланням https://secure.platononline.net/auth/login

 Подробиці

Інструкція по використанню

Інструкція до особистого кабінету PSP Platon


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

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

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


CSV файл

CSV файл з деталями оплати можна завантажити в особистому кабінеті PSP Platon.

Для коректного відображення даних в Microsoft Excel рекомендуємо ознайомитись з інструкцією по використанню CSV файлів.


Банківський реєстр

Банківські реєстри можуть бути відправлені вам на регулярній основі на ваш Email або FTP.



Callback и Response

 Особенности работы с Callback
Unable to render {include} The included page could not be found.
 Безопасность
Unable to render {include} The included page could not be found.

Синхронный режим:

Данный режим работает по умолчанию. Передавать async = N не нужно.

Промежуточный редирект плательщика на 3DS (синхронный режим):

 Промежуточный Response при наличии 3DS проверки
{
  "action": "SALE",
  "result": "REDIRECT",
  "status": "3DS",
  "trans_id": "03346-89225-87891",
  "order_id": "ORDER-12345",
  "trans_date": "2012-04-0316:02:02",
  "redirect_url": "https://server_3ds.com/3ds.php",
  "redirect_params": {
    "PaReq": "bc5865698ae46de4eba4c51f0359a714",
    "MD": "111111111111111111111",
    "TermUrl": "https://term_url.com/3ds/67c14e5?trans_id=03346-89225-87891&hash=8b98db60fb3c24c14a6d7075241da38b"
  },
  "redirect_method": "POST"
}

Параметры

Описание

action
ОБЯЗАТЕЛЬНО

SALE

result
ОБЯЗАТЕЛЬНО

REDIRECT

status
ОБЯЗАТЕЛЬНО

3DS

order_id
ОБЯЗАТЕЛЬНО

ID транзакции в системе мерчанта

trans_id
ОБЯЗАТЕЛЬНО

ID транзакции в платежной системе

trans_date
ОБЯЗАТЕЛЬНО

Дата транзакции в платежной системе. Время UTC

redirect_url
ОБЯЗАТЕЛЬНО

URL, на который должен быть перенаправлен плательщик

redirect_params
ОБЯЗАТЕЛЬНО

Массив определенных параметров 3DS

redirect_method
ОБЯЗАТЕЛЬНО

POST

Метод передачи параметров

 Промежуточный Callback при наличии проверки 3DS
array (
  'action' => 'SALE',
  'result' => 'REDIRECT',
  'status' => '3DS',
  'order_id' => '6b51033e-3e58-42e0-8ec3-88c97388018b',
  'trans_id' => '28738-47774-55067',
  'trans_date' => '2020-04-20 12:12:57',
  'redirect_url' => 'https://acs.privatbank.ua/pPaReqMC.jsp',
  'redirect_params' => 
    array (
      'PaReq' => 'eJxVUllu2zAQvYqg/4qUIlFUMGYgxykaoEqN2j4AIxGxUi2Olsb+K/qTG+S3VygKpGhRtL0CdaMMHWUDSHDeLJw3Cxxty8L6rJo2r6uJ7TrUtlSV1lleXUzs1fLtG24fCViuG6VmC5X2jRKQqLaVF8rKs4k9lx/VlRvw8ID7YRhFYcgDHrmeF/KQc8apG/jcFjCP0U/AmElgIscD8gjxyyZdy6oTINOr6emZwCgWcCAjhFI1pzPBXB66jAF5gFDJUolpPF29P1k4xx8SZxUD2Sshrfuqa3aCUx/II4C+KcS66zbtISGbQnZ1VeSVctK6BGJsQJ6ZzHsjtfjXNs9EMouv8e7w0uQy3p4t6HWy/IT4ZALEeEAmOyU86lHqe9RyvUM8QQRkrwdZGhKmcoplPQDYmBzxaDGGlwrAdjc4jZ2IOJqeEKjtpq4UemALn2TIVJsK/U3fDV/0nf4x3OL7b7jRf/Uv/dvS//Uf/X34Otzqn9a5PO8L1Zq6nV4iQxMK5Lni43dmEmmHTfZdN2CMMz/wzTj2OsMgx356B5TtKRgAxESRcdJk3BKUXm3PPfYf2CM=',
      'TermUrl' => 'https://secure.platononline.com/3ds/4de0025?operation_type=purchase&trans_id=28738-47774-55067&hash=***************************************************
    ),
  'redirect_method' => 'POST',
  'hash' => '********************************',
)

Параметры

Описание

action
ОБЯЗАТЕЛЬНО

SALE

result
ОБЯЗАТЕЛЬНО

REDIRECT

status
ОБЯЗАТЕЛЬНО

3DS

order_id
ОБЯЗАТЕЛЬНО

ID транзакции в системе мерчанта

trans_id
ОБЯЗАТЕЛЬНО

ID транзакции в платежной системе

trans_date
ОБЯЗАТЕЛЬНО

Дата транзакции в платежной системе. Время UTC

redirect_url
ОБЯЗАТЕЛЬНО

URL, на который должен быть перенаправлен плательщик

redirect_params
ОБЯЗАТЕЛЬНО

Строка параметров

redirect_method
ОБЯЗАТЕЛЬНО

POST

Метод передачи параметров

hash
ОБЯЗАТЕЛЬНО

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

md5(
  strtoupper(
    strrev(email).
    CLIENT_PASS.
    strrev(payment_token)
  )
)

Внимание! Если при запросе на оплату не был указан email, то при проверке hash в подписи Callback следует указать пустое значение для email.

При успешной оплате (синхронный режим):

 Response при успешном списании
{
  "action": "SALE",
  "result": "SUCCESS",
  "status": "SETTLED",
  "trans_id": "03346-89217-70541",
  "order_id": "ORDER-12345",
  "descriptor": "test",
  "trans_date": "2012-04-03 16:02:01"
}

Параметры

Описание

action
ОБЯЗАТЕЛЬНО

SALE

result
ОБЯЗАТЕЛЬНО

SUCCESS

status
ОБЯЗАТЕЛЬНО

SETTLED

PENDING только когда было указано auth = Y

order_id
ОБЯЗАТЕЛЬНО

ID транзакции в системе мерчанта

trans_id
ОБЯЗАТЕЛЬНО

ID транзакции в платежной системе

trans_date
ОБЯЗАТЕЛЬНО

Дата транзакции в платежной системе. Время UTC

descriptor
ОБЯЗАТЕЛЬНО

Это строка, которую владелец кредитной карты увидит в выписка из банка.

В большинстве случаев это веб-сайт поддержки клиентов.

amount
ОПЦИОНАЛЬНО

Сумма транзакции

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

ext1, ext2, ext3, ext4, ext5, ext6, ext7, ext8, ext9, ext10
ОПЦИОНАЛЬНО

10 дополнительных полей

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

MID
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

card
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

card_hash
ОПЦИОНАЛЬНО

Уникальное зашифрованное значение номера карты, которое будет возвращаться в коллбеке при оплате, верификации, погашении и выплате средств на карту.

Этот параметр даст вам возможность в вашей системе:

  • Привязать карту под клиента.

  • Проверить не использовал ли другой клиент эту же карту.

  • Проверить какие кредиты, товары и услуги погашаются данной картой.

  • Отслеживать мошенничество, когда клиент использует ту же карту с другого аккаунта, например, чтобы повторно воспользоваться акцией.

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

brand
ОПЦИОНАЛЬНО

'brand' => 'VISA'

'brand' => 'MASTER'

'brand" => 'PROSTIR'

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

fee_type
ОПЦИОНАЛЬНО

Признак каким образом взимается комиссия:

  • ACT - по актам.

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

fee
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

currency
ОПЦИОНАЛЬНО

Валюта операции

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

 Callback при успешном списании
array (
  'action' => 'SALE',
  'result' => 'SUCCESS',
  'status' => 'SETTLED',
  'order_id' => '1_691201',
  'trans_id' => '31176-65336-00444',
  'trans_date' => '2021-01-27 16:55:33',
  'descriptor' => NULL,
  'auth_code' => '990647',
  'hash' => '********************************',
)

Параметры

Описание

action
ОБЯЗАТЕЛЬНО

SALE

result
ОБЯЗАТЕЛЬНО

SUCCESS

status
ОБЯЗАТЕЛЬНО

SETTLED

PENDING только когда было указано auth = Y

order_id
ОБЯЗАТЕЛЬНО

ID транзакции в системе мерчанта

trans_id
ОБЯЗАТЕЛЬНО

ID транзакции в платежной системе

trans_date
ОБЯЗАТЕЛЬНО

Дата транзакции в платежной системе. Время UTC

descriptor
ОБЯЗАТЕЛЬНО

Это строка, которую владелец кредитной карты увидит в выписка из банка.

В большинстве случаев это веб-сайт поддержки клиентов.

auth_code
ОБЯЗАТЕЛЬНО

Код авторизации от банка

amount
ОПЦИОНАЛЬНО

Сумма транзакции

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

ext1, ext2, ext3, ext4, ext5, ext6, ext7, ext8, ext9, ext10
ОПЦИОНАЛЬНО

10 дополнительных полей

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

MID
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

card
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

card_hash
ОПЦИОНАЛЬНО

Уникальное зашифрованное значение номера карты, которое будет возвращаться в коллбеке при оплате, верификации, погашении и выплате средств на карту.

Этот параметр даст вам возможность в вашей системе:

  • Привязать карту под клиента.

  • Проверить не использовал ли другой клиент эту же карту.

  • Проверить какие кредиты, товары и услуги погашаются данной картой.

  • Отслеживать мошенничество, когда клиент использует ту же карту с другого аккаунта, например, чтобы повторно воспользоваться акцией.

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

brand
ОПЦИОНАЛЬНО

'brand' => 'VISA'

'brand' => 'MASTER'

'brand" => 'PROSTIR'

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

fee_type
ОПЦИОНАЛЬНО

Признак каким образом взимается комиссия:

  • ACT - по актам.

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

fee
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

currency
ОПЦИОНАЛЬНО

Валюта операции

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

hash
ОБЯЗАТЕЛЬНО

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

md5(
  strtoupper(
    strrev(email).
    client_pass.
    trans_id.
    strrev(
      substr(card,0,6).
      substr(card,-4)
    )
  )
)

Внимание! Если при запросе на оплату не был указан email, то при проверке hash в подписи Callback следует указать пустое значение для email.

При неуспешной оплате (синхронный режим):

 Response при неуспешном списании
{
  "action": "SALE",
  "result": "DECLINED",
  "status": "DECLINED",
  "trans_id": "03346-89214-54141",
  "order_id": "ORDER-12345",
  "trans_date": "2012-04-0316:02:01",
  "decline_reason": "Declined by processing"
}

Параметры

Описание

action
ОБЯЗАТЕЛЬНО

SALE

result
ОБЯЗАТЕЛЬНО

DECLINED

status
ОБЯЗАТЕЛЬНО

DECLINED

order_id
ОБЯЗАТЕЛЬНО

ID транзакции в системе мерчанта

trans_id
ОБЯЗАТЕЛЬНО

ID транзакции в платежной системе

amount
ОПЦИОНАЛЬНО

Сумма транзакции

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

ext1, ext2, ext3, ext4, ext5, ext6, ext7, ext8, ext9, ext10
ОПЦИОНАЛЬНО

10 дополнительных полей

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

MID
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

card
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

card_hash
ОПЦИОНАЛЬНО

Уникальное зашифрованное значение номера карты, которое будет возвращаться в коллбеке при оплате, верификации, погашении и выплате средств на карту.

Этот параметр даст вам возможность в вашей системе:

  • Привязать карту под клиента.

  • Проверить не использовал ли другой клиент эту же карту.

  • Проверить какие кредиты, товары и услуги погашаются данной картой.

  • Отслеживать мошенничество, когда клиент использует ту же карту с другого аккаунта, например, чтобы повторно воспользоваться акцией.

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

brand
ОПЦИОНАЛЬНО

'brand' => 'VISA'

'brand' => 'MASTER'

'brand" => 'PROSTIR'

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

fee_type
ОПЦИОНАЛЬНО

Признак каким образом взимается комиссия:

  • ACT - по актам.

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

fee
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

currency
ОПЦИОНАЛЬНО

Валюта операции

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

trans_date
ОБЯЗАТЕЛЬНО

Дата транзакции в платежной системе. Время UTC

decline_reason
ОБЯЗАТЕЛЬНО

Причина, по которой транзакция была отклонена

 Callback при неуспешном списании
array (
  'action' => 'SALE',
  'result' => 'DECLINED',
  'status' => 'DECLINED',
  'order_id' => '1_691201',
  'trans_id' => '31176-65336-00444',
  'trans_date' => '2021-01-27 16:55:33',
  'decline_reason' => 'Declined by processing',
  'hash' => '********************************',
)

Параметры

Описание

action
ОБЯЗАТЕЛЬНО

SALE

result
ОБЯЗАТЕЛЬНО

DECLINED

status
ОБЯЗАТЕЛЬНО

DECLINED

order_id
ОБЯЗАТЕЛЬНО

ID транзакции в системе мерчанта

trans_id
ОБЯЗАТЕЛЬНО

ID транзакции в платежной системе

trans_date
ОБЯЗАТЕЛЬНО

Дата транзакции в платежной системе. Время UTC

amount
ОПЦИОНАЛЬНО

Сумма транзакции

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

ext1, ext2, ext3, ext4, ext5, ext6, ext7, ext8, ext9, ext10
ОПЦИОНАЛЬНО

10 дополнительных полей

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

MID
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

card
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

card_hash
ОПЦИОНАЛЬНО

Уникальное зашифрованное значение номера карты, которое будет возвращаться в коллбеке при оплате, верификации, погашении и выплате средств на карту.

Этот параметр даст вам возможность в вашей системе:

  • Привязать карту под клиента.

  • Проверить не использовал ли другой клиент эту же карту.

  • Проверить какие кредиты, товары и услуги погашаются данной картой.

  • Отслеживать мошенничество, когда клиент использует ту же карту с другого аккаунта, например, чтобы повторно воспользоваться акцией.

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

brand
ОПЦИОНАЛЬНО

'brand' => 'VISA'

'brand' => 'MASTER'

'brand" => 'PROSTIR'

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

fee_type
ОПЦИОНАЛЬНО

Признак каким образом взимается комиссия:

  • ACT - по актам.

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

fee
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

currency
ОПЦИОНАЛЬНО

Валюта операции

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

decline_reason
ОБЯЗАТЕЛЬНО

Причина, по которой транзакция была отклонена

hash
ОБЯЗАТЕЛЬНО

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

md5(
  strtoupper(
    strrev(email).
    client_pass.
    trans_id.
    strrev(
      substr(card,0,6).
      substr(card,-4)
    )
  )
)

Внимание! Если при запросе на оплату не был указан email, то при проверке hash в подписи Callback следует указать пустое значение для email.

При ошибке в запросе (синхронный режим):

 Response в случая ошибки в запросе
{
  "result": "ERROR",
  "error_message": "Error description"
}

Асинхронный режим:

Данный режим активируется при передаче async = Y. В этом режиме обязательно необходимо принимать callback на ваш callback url.

Промежуточный ответ (асинхронный режим):

 Response о принятии запроса в обработку
{
  "action": "SALE",
  "result": "ACCEPTED",
  "trans_id": "03346-89211-86461",
  "order_id": "ORDER-12345",
  "trans_date": "2012-04-03 16:02:01"
}

Параметры

Описание

action
ОБЯЗАТЕЛЬНО

SALE

result
ОБЯЗАТЕЛЬНО

ACCEPTED

order_id
ОБЯЗАТЕЛЬНО

ID транзакции в системе мерчанта

trans_id
ОБЯЗАТЕЛЬНО

ID транзакции в платежной системе

trans_date
ОБЯЗАТЕЛЬНО

Дата транзакции в платежной системе. Время UTC

Промежуточный редирект плательщика на 3DS (асинхронный режим):

 Промежуточный Callback при наличии проверки 3DS
array (
  'action' => 'SALE',
  'result' => 'REDIRECT',
  'status' => '3DS',
  'order_id' => '6b51033e-3e58-42e0-8ec3-88c97388018b',
  'trans_id' => '28738-47774-55067',
  'trans_date' => '2020-04-20 12:12:57',
  'redirect_url' => 'https://acs.privatbank.ua/pPaReqMC.jsp',
  'redirect_params' => 
    array (
      'PaReq' => 'eJxVUllu2zAQvYqg/4qUIlFUMGYgxykaoEqN2j4AIxGxUi2Olsb+K/qTG+S3VygKpGhRtL0CdaMMHWUDSHDeLJw3Cxxty8L6rJo2r6uJ7TrUtlSV1lleXUzs1fLtG24fCViuG6VmC5X2jRKQqLaVF8rKs4k9lx/VlRvw8ID7YRhFYcgDHrmeF/KQc8apG/jcFjCP0U/AmElgIscD8gjxyyZdy6oTINOr6emZwCgWcCAjhFI1pzPBXB66jAF5gFDJUolpPF29P1k4xx8SZxUD2Sshrfuqa3aCUx/II4C+KcS66zbtISGbQnZ1VeSVctK6BGJsQJ6ZzHsjtfjXNs9EMouv8e7w0uQy3p4t6HWy/IT4ZALEeEAmOyU86lHqe9RyvUM8QQRkrwdZGhKmcoplPQDYmBzxaDGGlwrAdjc4jZ2IOJqeEKjtpq4UemALn2TIVJsK/U3fDV/0nf4x3OL7b7jRf/Uv/dvS//Uf/X34Otzqn9a5PO8L1Zq6nV4iQxMK5Lni43dmEmmHTfZdN2CMMz/wzTj2OsMgx356B5TtKRgAxESRcdJk3BKUXm3PPfYf2CM=',
      'TermUrl' => 'https://secure.platononline.com/3ds/4de0025?operation_type=purchase&trans_id=28738-47774-55067&hash=***************************************************
    ),
  'redirect_method' => 'POST',
  'hash' => '********************************',
)

Параметры

Описание

action
ОБЯЗАТЕЛЬНО

SALE

result
ОБЯЗАТЕЛЬНО

REDIRECT

status
ОБЯЗАТЕЛЬНО

3DS

order_id
ОБЯЗАТЕЛЬНО

ID транзакции в системе мерчанта

trans_id
ОБЯЗАТЕЛЬНО

ID транзакции в платежной системе

trans_date
ОБЯЗАТЕЛЬНО

Дата транзакции в платежной системе. Время UTC

redirect_url
ОБЯЗАТЕЛЬНО

URL, на который должен быть перенаправлен плательщик

redirect_params
ОБЯЗАТЕЛЬНО

Строка параметров

redirect_method
ОБЯЗАТЕЛЬНО

POST

Метод передачи параметров

hash
ОБЯЗАТЕЛЬНО

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

md5(
  strtoupper(
    strrev(email).
    CLIENT_PASS.
    strrev(payment_token)
  )
)

Внимание! Если при запросе на оплату не был указан email, то при проверке hash в подписи Callback следует указать пустое значение для email.

При успешной оплате (асинхронный режим):

 Callback при успешном списании
array (
  'action' => 'SALE',
  'result' => 'SUCCESS',
  'status' => 'SETTLED',
  'order_id' => '1_691201',
  'trans_id' => '31176-65336-00444',
  'trans_date' => '2021-01-27 16:55:33',
  'descriptor' => NULL,
  'auth_code' => '990647',
  'hash' => '********************************',
)

Параметры

Описание

action
ОБЯЗАТЕЛЬНО

SALE

result
ОБЯЗАТЕЛЬНО

SUCCESS

status
ОБЯЗАТЕЛЬНО

SETTLED

PENDING только когда было указано auth = Y

order_id
ОБЯЗАТЕЛЬНО

ID транзакции в системе мерчанта

trans_id
ОБЯЗАТЕЛЬНО

ID транзакции в платежной системе

trans_date
ОБЯЗАТЕЛЬНО

Дата транзакции в платежной системе. Время UTC

descriptor
ОБЯЗАТЕЛЬНО

Это строка, которую владелец кредитной карты увидит в выписка из банка.

В большинстве случаев это веб-сайт поддержки клиентов.

auth_code
ОБЯЗАТЕЛЬНО

Код авторизации от банка

amount
ОПЦИОНАЛЬНО

Сумма транзакции

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

ext1, ext2, ext3, ext4, ext5, ext6, ext7, ext8, ext9, ext10
ОПЦИОНАЛЬНО

10 дополнительных полей

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

MID
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

card
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

card_hash
ОПЦИОНАЛЬНО

Уникальное зашифрованное значение номера карты, которое будет возвращаться в коллбеке при оплате, верификации, погашении и выплате средств на карту.

Этот параметр даст вам возможность в вашей системе:

  • Привязать карту под клиента.

  • Проверить не использовал ли другой клиент эту же карту.

  • Проверить какие кредиты, товары и услуги погашаются данной картой.

  • Отслеживать мошенничество, когда клиент использует ту же карту с другого аккаунта, например, чтобы повторно воспользоваться акцией.

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

brand
ОПЦИОНАЛЬНО

'brand' => 'VISA'

'brand' => 'MASTER'

'brand" => 'PROSTIR'

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

fee_type
ОПЦИОНАЛЬНО

Признак каким образом взимается комиссия:

  • ACT - по актам.

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

fee
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

currency
ОПЦИОНАЛЬНО

Валюта операции

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

hash
ОБЯЗАТЕЛЬНО

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

md5(
  strtoupper(
    strrev(email).
    client_pass.
    trans_id.
    strrev(
      substr(card,0,6).
      substr(card,-4)
    )
  )
)

Внимание! Если при запросе на оплату не был указан email, то при проверке hash в подписи Callback следует указать пустое значение для email.

При неуспешной оплате (асинхронный режим):

 Callback при неуспешном списании
array (
  'action' => 'SALE',
  'result' => 'DECLINED',
  'status' => 'DECLINED',
  'order_id' => '1_691201',
  'trans_id' => '31176-65336-00444',
  'trans_date' => '2021-01-27 16:55:33',
  'decline_reason' => 'Declined by processing',
  'hash' => '********************************',
)

Параметры

Описание

action
ОБЯЗАТЕЛЬНО

SALE

result
ОБЯЗАТЕЛЬНО

DECLINED

status
ОБЯЗАТЕЛЬНО

DECLINED

order_id
ОБЯЗАТЕЛЬНО

ID транзакции в системе мерчанта

trans_id
ОБЯЗАТЕЛЬНО

ID транзакции в платежной системе

trans_date
ОБЯЗАТЕЛЬНО

Дата транзакции в платежной системе. Время UTC

amount
ОПЦИОНАЛЬНО

Сумма транзакции

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

ext1, ext2, ext3, ext4, ext5, ext6, ext7, ext8, ext9, ext10
ОПЦИОНАЛЬНО

10 дополнительных полей

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

MID
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

card
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

card_hash
ОПЦИОНАЛЬНО

Уникальное зашифрованное значение номера карты, которое будет возвращаться в коллбеке при оплате, верификации, погашении и выплате средств на карту.

Этот параметр даст вам возможность в вашей системе:

  • Привязать карту под клиента.

  • Проверить не использовал ли другой клиент эту же карту.

  • Проверить какие кредиты, товары и услуги погашаются данной картой.

  • Отслеживать мошенничество, когда клиент использует ту же карту с другого аккаунта, например, чтобы повторно воспользоваться акцией.

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

brand
ОПЦИОНАЛЬНО

'brand' => 'VISA'

'brand' => 'MASTER'

'brand" => 'PROSTIR'

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

fee_type
ОПЦИОНАЛЬНО

Признак каким образом взимается комиссия:

  • ACT - по актам.

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

fee
ОПЦИОНАЛЬНО

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

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

currency
ОПЦИОНАЛЬНО

Валюта операции

Если вы хотите использовать данный функционал, пожалуйста, сообщите нам для его включения.

decline_reason
ОБЯЗАТЕЛЬНО

Причина, по которой транзакция была отклонена

hash
ОБЯЗАТЕЛЬНО

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

md5(
  strtoupper(
    strrev(email).
    client_pass.
    trans_id.
    strrev(
      substr(card,0,6).
      substr(card,-4)
    )
  )
)

Внимание! Если при запросе на оплату не был указан email, то при проверке hash в подписи Callback следует указать пустое значение для email.

При ошибке в запросе (асинхронный режим):

 Response в случая ошибки в запросе
{
  "result": "ERROR",
  "error_message": "Error description"
}

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

 Список ошибок, их причин и возможных решений.
 Incorrect sign

Response: {"result":"ERROR","error_message":"Incorrect sign"}

Вариант 1

Неверно сформирована зашифрованная подпись.

Проверьте верность сформированной подписи. Если ошибку не нашли обратитесь в тех поддержку.


Вариант 2

Добавлены параметры, которые не входят в данный запрос.

Проверьте список передаваемых параметров. Если ошибку не нашли обратитесь в тех поддержку.


Вариант 3

Неверно зашифрована data.

Проверить используете ли вы UTF-8 и верный формат параметров.

 Empty action

Response: {"result":"ERROR","error_message":"Empty action"}

Вариант 1

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

Проверьте список передаваемых параметров. Если ошибку не нашли обратитесь в тех поддержку.


Вариант 2

Запрос отправляется методом GET, а не POST.

Отправить запрос методом POST.

 Order already exists

Response: {"result":"ERROR","error_message":"Order already exists"}

Значение order_id должно быть уникальным. Данная ошибка говорит о том, что у вас уже была успешная транзакция с таким order_id.

Заменить значение order_id на новое уникальное.

 Service error

Response: {"result":"ERROR","error_message":"Service error"}

Ситуация требует внимания сотрудников Platon.

Рекомендуем обратиться в тех саппорт Platon для проверки причины.

 Previous transaction not completed

Response: {"result":"ERROR","error_message":"Previous transaction not completed"}

Ситуация требует внимания сотрудников Platon.

Рекомендуем обратиться в тех саппорт Platon для проверки причины.

 Recurring not supported

Response: {"result":"ERROR","error_message":"Recurring not supported"}

rc_token заблокирован, подробнее о причинах можно узнать в разделе /wiki/spaces/docs/pages/1323303006

Рекомендуем удалить данный rc_token из вашей базы данных и повторить верификацию карты для получения rc_token и возможности проведения транзакций по новому токену.

 Initial transaction too old

Response: {"result":"ERROR","error_message":"Initial transaction too old"}

card_token заблокирован, подробнее о причинах можно узнать в разделе /wiki/spaces/docs/pages/1323303006

Рекомендуем удалить данный card_token из вашей базы данных и повторить верификацию карты для получения card_token и возможности проведения транзакций по новому токену.

 Account error

Response: {"result":"ERROR","error_message":"Account error"}

Вариант 1

Ваш IP адрес не добавлен в наш белый список.

Обратитесь в тех поддержку для добавления вашего IP в белый список.


Вариант 2

Данный функционал вам не подключен.

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


Вариант 3

Запрос отправлен не на нужную ссылку.

Рекомендуем сверить ссылку для отправки запроса с указаной в нужном разделе документации.


Вариант 4

В запросе указан неверное или несуществующее значение параметра channel_id.

Проверьте передаваемое значение channel_id на достоверность или уточните у тех поддержки доступные у вас значение.

 Card token not found for current client

Response: {"result":"ERROR","error_message":"Card token not found for current client"}

Отправка запроса по этому card_token отключена для данного API ключа так как card_token был получен на другом API ключе.

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

 Incorrect hash

Response: {"result":"ERROR","error_message":"Incorrect hash"}

Вариант 1

Неверно сформирована зашифрованная подпись.

Проверьте верность сформированной подписи. Если ошибка не найдена обратитесь в тех поддержку.


Вариант 2

Добавлены параметры, которые не входят в данный запрос.

Проверьте список передаваемых параметров. Если ошибка не найдена обратитесь в тех поддержку.


Вариант 3

Запрос был отправлен не с того API ключа по которому был получен rc_token.

Рекомендуем заменить API ключ на тот, по которому был получен rc_token.

 Duplicate request

Response: {"result":"ERROR","error_message":"Duplicate request"}

За одну минуту в систему вами было отправлено несколько одинаковых запросов.

Рекомендуем проверить ваш механизм отправки запросов на наличие задвоения.

 Incorrect card_token value

Response: {"result":"ERROR","error_message":"Incorrect card_token value"}

Вариант 1

Запрос был отправлен менее чем через 10 минут после получения токена.

Рекомендуем настроить отправку запросов минимум через 10 минут после получения токена. Запрос по которому получена эта ошибка необходимо повторить.


Вариант 2

В параметр card_token внесено неверное значение.

Рекомендуем проверить верность внесенных данных в поле card_token полученного из коллбека ранее. Запрос по которому получена эта ошибка необходимо повторить.

 Not found card token

Response: {"result":"ERROR","error_message":"Not found card token"}

Вариант 1

Запрос был отправлен менее чем через 10 минут после получения токена.

Рекомендуем настроить отправку запросов минимум через 10 минут после получения токена. Запрос по которому получена эта ошибка необходимо повторить.


Вариант 2

В параметр card_token внесено неверное значение.

Рекомендуем проверить верность внесенных данных в поле card_token полученного из коллбека ранее. Запрос по которому получена эта ошибка необходимо повторить.

 102: Token is not active

'decline_reason' => '102: Token is not active'

rc_token заблокирован, подробнее о причинах можно узнать в разделе /wiki/spaces/docs/pages/1323303006

Рекомендуем удалить данный rc_token из вашей базы данных и повторить верификацию карты для получения rc_token и возможности проведения транзакций по новому токену.

 Wrong credit_date

'error_message' => 'Wrong credit_date'

credit_date введен не согласно формата YYYY-MM-DD или указана будущая дата.

Рекомендуем указать в credit_date прошедшую дату или текущую.

 Invalid pan

'error_message' => 'Invalid pan'

Invalid pan введен не верный номер карты.

Сверьте номер карты. Рекомендуем проверять номер карты на действительность перед отправкой в запросе используя алгоритм Луна.


Боевой режим

Пройдите контрольный список интеграции:

После добавления кнопки на ваш сайт/мобильное приложение необходимо пройти контрольный список интеграции для проверки корректности работы Google Pay API:

Для сайтов: https://developers.google.com/pay/api/web/guides/test-and-deploy/integration-checklist

Для мобильных приложений: https://developers.google.com/pay/api/android/guides/test-and-deploy/integration-checklist


Запросите доступ к рабочей версии Google Pay API:

Для возможности начать принимать реальные платежи необходимо запросить доступ в рабочей версии:

https://developers.google.com/pay/api/android/guides/test-and-deploy/request-prod-access


Получите доступ на Production в Google Pay:

https://developers.google.com/pay/api/android/guides

Для этого необходимо создать учетную запись в https://pay.google.com/business/console/  (используя гугл аккаунт, желательно корпоративный и общий)

Заполните информацию о компании.

В интеграциях выбрать Сайт, заполнить домен (пока домен тестового сайта), указать тип PaymentGateway и вложить 5 скринов процесса заказа и оплаты.

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

Просьба обратить внимание, что в прод режиме Google Pay будет работать только на проаппрувленых гуглом доменах.

https://developers.google.com/pay/api/android/guides/test-and-deploy/request-prod-access

Получение доступа занимает 2-3 дня. Если у сотрудников Google будут замечания - они отправят письмо на мейл, под которым вы зарегистируетесь.

После этого с вашей стороны необходимо переключиться на Production в интеграции с GooglePay:

Для этого: https://developers.google.com/pay/api/web/guides/test-and-deploy/deploy-production-environment

  1. Установить environment: ‘PRODUCTION' вместо 'TEST’

  2. Указать значение merchantId из бизнес аккаунта GooglePay (правый верхний угол)

И сообщить нам по готовности для переключения настроек с нашей стороны. 


Дополнительно для мобильного приложения Android:

Рекомендуем подавать заявку в бизнес консоли с Google аккаунта, под которым вы зарегистрированы в Google Play и выкладываете приложения.

Если будете подавать заявку с другого аккаунта - дополнительно нужно будет связать аккаунты. Инструкция как связать https://support.google.com/googleplay/android-developer/answer/2528691

Для интеграции в моб приложении необходимо будет подписать приложение релизными ключами когда получите доступ на прод и будете преключаться https://developers.google.com/pay/api/android/guides/test-and-deploy/deploy-your-application


Связанные разделы

  • No labels