PHP Fusion Pay tbi - Ръководство за инсталиране на плъгина за PHP

PHP Fusion Pay tbi - Ръководство за инсталиране на плъгина за PHP

Fusion Pay tbi е система, предоставена от tbi bank, която позволява лесна интеграция на различни методи за плащане директно във вашия онлайн магазин. За да започнете, изтеглете плъгина за PHP от бутона по-долу. Това ръководство ще ви научи как да го инсталирате и конфигурирате.

Обща информация

За успешната интеграция са необходими следните данни, които получавате от tbi:

  • Reseller Code – Уникален идентификатор на магазина (напр. "TBI1").

  • Reseller Key – Ключ, асоцииран с магазина (напр. "EX1").

  • Encryption Key – Дълъг стринг, използван за криптиране на данните, например: d1c2e12cfeababc8b95daf6902e210b170992e68fd1c1f19565a40cf0099c6e2cb559b85d7c14ea05b4dca0a790656d003ccade9286827cffdf8e664fd271499).

  • Основен URL за API заявки – например: https://beta.tbibank.support/api/RegisterApplication.

 

Подготовка

Получаване на данните от tbi

Уверете се, че сте получили необходимите идентификатори от tbi. Те трябва да бъдат въведени във файловете, където са декларирани съответните променливи, или да се използват от вашите config файлове.

Криптиращият модул

Файлът Cryptor.php съдържа функциите за криптиране на данните. Уверете се, че този файл е включен във вашия проект и че работи правилно. Можете да използвате предоставените тестови Reseller Code, Reseller Key, Encryption Key за тестване на интеграцията.

 

Описание на файловете

Файл: index_cart.php

Този файл демонстрира как да включите платежен метод на tbi за чекаут. Изобразяването на метода зависи от вашата имплементация.

Основни компоненти:

  • HTML структура – Показване на Reseller Code, Reseller Key и Encryption Key (само за демонстрационни цели).

  • Масив с данни за поръчкатаdata_array, съдържащ детайли за клиента, адреса за доставка и списък с поръчани артикули.

  • Криптиране на данните – Използва се Cryptor::Encrypt:

    $encrypted_data = Cryptor::Encrypt(json_encode($data_array), $encryptionKey);

    Криптираният низ се съхранява в скрито поле и се използва при изпращане на заявка.

  • Изпращане на API заявка чрез JavaScript:

    fetch(fusion_pay_liveurl + '/api/RegisterApplication', { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ "reseller_code": "TBI1", "reseller_key": "EX1", "data": fusion_pay_data }), }) .then(response => response.json()) .then(data => { document.querySelector('#tbi_popup_iframe').src = data.url; }) .catch(error => console.error("Request failed:", error));

Файл: index_product.php

Този файл служи като шаблон за продуктова страница.

Основни компоненти:

  • Определяне на данните за продукта – име, цена, количество, категория.

  • Форматиране на поръчката – данните се поставят в data_array.

  • Криптиране – както при index_cart.php, данните се криптират преди изпращане.

Конфигурация на променливите

Във всеки от файловете трябва да настроите следните параметри:

  • За tbi API:

    $reseller_code = "TBI1"; $reseller_key = "EX1"; $encryptionKey = "<Encryption_Key>";
  • За API URL:

    $fusion_pay_liveUrl = "https://beta.tbibank.support/";

Криптиране на данните

За защита на чувствителна информация (поръчки, данни за клиенти), информацията се криптира преди изпращането към API-то:

$encrypted_data = Cryptor::Encrypt(json_encode($data_array), $encryptionKey);

 

Изпращане на API заявка

В index_cart.php функцията send_order() изпраща POST заявка към tbi API.

Примерен код:

fetch(fusion_pay_liveurl + '/api/RegisterApplication', { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ "reseller_code": "TBI1", "reseller_key": "EX1", "data": fusion_pay_data }), }) .then(response => response.json()) .then(data => { document.querySelector('#tbi_popup_iframe').src = data.url; }) .catch(error => console.error("Request failed:", error));

Примерен работен процес

  1. Потребителят избира продукт – данните се подготвят и криптират в index_product.php.

  2. Преминаване към чекаут – потребителят въвежда данните си в index_cart.php.

  3. Изпращане на заявка – функцията send_order() изпраща криптираните данни към API.

  4. Получаване на отговор – ако заявката е успешна, tbi връща URL за зареждане в iframe.

  5. Пренасочване – потребителят се насочва към successRedirectURL или failRedirectURL в зависимост от резултата.

 

Заключение

С предоставените шаблони index_cart.php и index_product.php, и правилната конфигурация на параметрите, ще можете успешно да интегрирате tbi платежната система във вашия онлайн магазин.