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));
Примерен работен процес
Потребителят избира продукт – данните се подготвят и криптират в
index_product.php
.Преминаване към чекаут – потребителят въвежда данните си в
index_cart.php
.Изпращане на заявка – функцията
send_order()
изпраща криптираните данни към API.Получаване на отговор – ако заявката е успешна, tbi връща URL за зареждане в iframe.
Пренасочване – потребителят се насочва към
successRedirectURL
илиfailRedirectURL
в зависимост от резултата.
Заключение
С предоставените шаблони index_cart.php
и index_product.php
, и правилната конфигурация на параметрите, ще можете успешно да интегрирате tbi платежната система във вашия онлайн магазин.