Ipay Viber API v1.0.2

Загальна інформація

Даний сервіс інтегровано з viber та дозволяє проводити платежі за допомогою чат ботів viber.

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

Доступи й налаштування

Для взаємодії в об'єкті payment_parameters потрібно відправити наступні параметри:

gatewayMerchantId - ідентифікатор мерчанта
subMerchantId - Юридична особа, на користь якої здіюйснюється операція
gateway - ідентифікатор платіжної системи (завжди "ipayua")
url - посилання, куди вайбер буде відправляти запити (завжди "https://api-viber.ipay.ua")
authSign - підпис мерчанта
authSalt - сіль яка використовувалась для підпису мерчанта
transactions - не обов'язкове поле з масивом транзакцій, який має передаватись як string, а не json
transactions.transaction - дані транзакції
transactions.transaction.amount - Сумма у копійках(за замовчуванням використовується billAmount)
transactions.transaction.currency - Валюта(за замовчуванням використовується billCurrency)
transactions.transaction.desc - Опис платежу(за замовчуванням викоритовується payment.description)
transactions.transaction.info - Інформація до платежу(за замовчуванням пуста)
transactions.transaction.mch_id - Ідентифікатор мерчанта(за замовчуванням використовується значення gatewayMerchantId)
transactions.transaction.smch_id - Юридична особа, на користь якої здіюйснюється транзакція(за замовчуванням, використовується значення subMerchantId)

URL адреса для запитів - https://api-viber.ipay.ua

Формат передачі - JSON методом POST

Кодування у UTF-8

Алгоритм підпису (поле authSign у запиті):

Робиться у 2 етапи:

1. Сіль (поле authSalt у запиті): Потрібно сформувати мітку часу Unix (1561559732.3642) та згенерувати хєш цієї мітки
Приклад на PHP:

$salt = sha1(microtime(true));
2. Підпис: Згенерувати хеш-код на основі ключа для підпису та солі, використовуючи метод HMAC і алгоритм хешування SHA-512
Приклад на PHP:
$sign = hash_hmac('sha512', $salt, $sign_key);

Приклад

        {
          "receiver": "ZVx9kAICzdoBL1RyAjK2zA==",
          "min_api_version": 10,
          "type": "payment",
          "payment": {
            "type": "GooglePay",
            "description": "2 shirts XL",
            "total_price": 0.3,
            "currency_code": "UAH",
            "payment_parameters": [
              {
                "key": "gateway",
                "value": "ipayua"
              },
              {
                "key": "gatewayMerchantId",
                "value": 3100
              },
              {
                "key": "url",
                "value": "https://api-viber.ipay.ua"
              },
              {
                "key": "subMerchantId",
                "value": 7503
              },
              {
                "key": "authSalt",
                "value": "4ad908f5a74096cdcbcf5a36e03089410ce6899a"
              },
              {
                "key": "authSign",
                "value": "9b4b0cd8c06c9d3f23704b53caadaf41e474cd4ee618ccc2dc796fe1be0d2ff882308ecffafe943cbd03f68fa7c3de251843eb1b3d69b5be7a38f96f949aefb3"
              },
              {
                "key": "transactions",
                "value": "[{\"desc\":\"single transaction\",\"amount\":30}]"
              }
            ]
          }
        }

    

Помилки

Код помилки Повідомлення користувачу (ua) Повідомлення користувачу (ru)
1 Операція відхилена банком Операция отклонена банком
2 Операція відхилена банком-еквайером Операция отклонена банком-эквайером
4 Технічні проблеми. Спробуйте пізніше Технические проблемы. Попробуйте позже
6 Операція відхилена банком. Недостатньо коштів Операция отклонена банком. Недостаточно средств
7 Операція відхилена банком. Некоректний CVV або термін дії картки Операция отклонена банком. Некорректный CVV или срок действия карты
8 Операція відхилена. Введено невірний код Операция отклонена. Введен некорректный код
9 Операція відхилена. Введено невірний код Операция отклонена. Введен неверный код
17 Операція відхилена. Перевищено ліміт. Зверніться до служби підтримки Ipay.ua Операция отклонена. Превышен лимит. Обратитесь в службу поддержки Ipay.ua
20 Невідома помилка Неизвестная ошибка
21 Операція відхилена банком емітентом Операция отклонена банком эмитентом
22 Операція для даної карти не дозволена Операция для данной карты или мерчанта не разрешена
23 Операція відхилена, досягнуто ліміту по даній карті Операция отклонена, достигнут лимит по карте
24 Платіж відхилено Банком, в якому у Вас обслуговується карта. Рекомендуємо звернутись на гарячу лінію Вашого банку, щоб уточнити у оператора причину відмови. Платеж отклонен Банком, в котором обслуживается Ваша карта. Рекомендуем обратиться на горячую линию Вашего банка, чтобы уточнить у оператора причину отказа.