Каспи QR
Актуально только если каспи предоставит данные. Чаще всего не предоставляют, и единственный выход добавлять статичную картинку
Нужно разработать функционал генерации qr-кода Каспи на сайте после оформления заказа.
Вам понадобится:
1. архив с php-библиотекой генерации qr-кода;
2. изображения логотипов Каспи для фирменного формирования qr-кода Каспи.
Распаковываем архив php-библиотеки в директорию сайта в любую папку, например, в '/local/tools/'. Также размещаем изображения логотипов Каспи, например, в папку '/images/' в корне сайта.
Далее создаём новую платёжную систему с обработчиком 'наличный расчёт'. Запоминаем её ID.
Затем идём в ваш компонент 'sale.order.ajax', в файл 'confirm.php', находим такой блок:
Меняем блок на следующее содержимое:
где:
- $paySystemID - ID вашей новой платёжной системы;
- $merchant_id - ID мерчанта компании в Каспи;
- $service_id - ID партнёра компании в Каспи;
- $param_id - ID параметра компании в Каспи.
- $tmp_img_url - путь к временному сгенерированному qr-коду в формате png.
Подробнее по коду:
require_once($_SERVER['DOCUMENT_ROOT'] . '/local/tools/phpqrcode/qrlib.php');
подключение php-библиотеки генерации qr-кода
$text = 'https://kaspi.kz/pay' . $merchant_id . '?service_id=' . $service_id . '&' . $param_id . '=' . $arResult['ORDER']['ID'] . '&amount=' . $arResult['ORDER']['PRICE'];
формирование ссылки на оплату для qr-кода
QRcode::png($text, $_SERVER['DOCUMENT_ROOT'] . $tmp_img_url, 'H', 6, 2);
генерируем qr-код из ранее сформированной ссылки на оплату в файл по пути '$tpm_img_url' в формате 'png
конвертируем сгенерированный qr-код из 'PNG8' в 'PNG24'.
подгоняем qr-код под нужный размер и размещаем значок Каспи посередине qr-кода.
здесь два блока - верхний для десктопа - отображение самого qr-кода, нижний - для мобайла - отображение простой кнопки с ссылкой на приложение Каспи.
Файлы доступны по ссылке https://24.itl.agency/bitrix/tools/disk/focus.php?folderId=72458&action=openFolderList&ncc=1