Підключення


В API Shina використовується формат обміну даними JSON. API знаходиться за адресою https://www.ipay.ua/shina/v4/. У відповідних розділах наведено приклади запитів та відповідей. Нижче наведено приклади для роботи з API Shina мовою PHP (у класі ShinaApi реалізовані всі методи API).

завантажити ShinaApi.php

Авторизація

Авторизація потрібна для виконання всіх запитів до API Shina.

app_id String Ідентифікатор партнера Обов'язковий
app_key String Приватний ключ Обов'язковий
Увага!
Властивості:
app_id = 'Ідентифікатор партнера'
app_key = 'Приватний ключ'
в класі ShinaApi.php потрібно змінити на робочі.

$api = new ShinaApi();

Схема роботи

Послідовність виконання запитів API Shina.

1. Отримуємо інформацію про партнера
$response = $api->getPartnerInfo();
2. Отримуємо перелік доступних послуг
$response = $api->getBillList();
3. Отримуємо дані про послугу
$response = $api->getBillInfo(['bill_id' => $id]);
4. Отримуємо перелік полів послуги
$response = $api->getBillFields(['bill_id' => $id]);
5. Проводимо валідацію полів послуги
$response = $api->getBillValidate(['bill_id' => $id, 'values' => ['acc' => $acc]]);
6. Створюємо кошик
$response = $api->createCart();
7. Додаємо послугу до кошика
 $response = $api->addCart(['cart_guid' => $guid, 'bill_id' => $id, 'values' => $values]);
8. Отримуємо список aml полів
 $response = $api->getAmlFields(['cart_guid' => $guid]);
9. Далі, залежно від типу агента, виконується:
Тип агента Опис запиту Запит
Кеш агент Завершуємо платіж (оплата)
 $response = $api->payCart(['cart_guid' => $guid]);
Еквайринг Завершуємо платіж (оплата)
 $response = $api->payCart(['cart_guid' => $guid, 'card' => ['google_pay_token' => 'token']]);

Додатково

Звіряємо платежі
 $response = $api->getCartOperations(['bill_id' => $id, 'status' => $status]);