PHP code example of opencartbot / nbu-qr-v3
1. Go to this page and download the library: Download opencartbot/nbu-qr-v3 library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
opencartbot / nbu-qr-v3 example snippets
OpenCartBot\NBUQRGenerator\NBUQRCodeGenerator;
$options = [
'function' => 'ICT',
'recipient' => 'ТОВ "Інтернет магазин"',
'account' => 'UA123456789012345678901234567',
'amount' => 150.75,
'recipient_code' => '12345678',
'category' => 'MP2B/GSCB',
'reference' => 'ORDER-12345',
'purpose' => 'Оплата товарів по замовленню №12345'
];
$qr = new NBUQRCodeGenerator($options);
$qrUrl = $qr->generateURL();
echo $qrUrl;
use OpenCartBot\NBUQRGenerator\NBUQRCodeGenerator;
$options = [
'recipient' => 'ТОВ "Магазин"',
'account' => 'UA123456789012345678901234567',
'amount' => 150.75,
'recipient_code' => '12345678',
'purpose' => 'Оплата товарів'
];
$qr = new NBUQRCodeGenerator($options);
// Отримати URL для QR-коду
$qrUrl = $qr->generateURL();
// Згенерувати SVG QR-код
$svgQRCode = $qr->generateQRCode();
echo $svgQRCode;
// Згенерувати PNG QR-код (бінарні дані)
$pngQRCode = $qr->generateQRCodePNG();
file_put_contents('qrcode.png', $pngQRCode);
// Згенерувати QR-код як Data URI (base64)
$dataURI = $qr->generateQRCodeDataURI();
echo '<img src="' . $dataURI . '" alt="QR Code">';
$options = [
'function' => NBUQRCodeGenerator::FUNCTION_UCT,
'recipient' => 'ТОВ "ГК Нафтогаз України"',
'account' => 'UA201234560000000260323012042',
'amount' => 2998.39,
'recipient_code' => '40121452',
'category' => 'SUPP/SUPP',
'reference' => 'AA15678-679',
'purpose' => 'Оплата за газ, особовий рахунок 123456789',
'lock_mask' => 'FEFF'
];
$qr = new NBUQRCodeGenerator($options);
echo $qr->generateURL();
$options = [
'function' => NBUQRCodeGenerator::FUNCTION_ICT,
'recipient' => 'Петренко Роман Петрович',
'account' => 'UA906543210000000260323012024',
'amount' => 63,
'recipient_code' => '40121425',
'category' => 'MP2P/MP2B',
'reference' => 'DR-5678-12',
'purpose' => 'За каву'
];
$qr = new NBUQRCodeGenerator($options);
echo $qr->generateURL();
$options = [
'function' => NBUQRCodeGenerator::FUNCTION_ICT,
'recipient' => 'ТОВ "Сільпо-Фуд"',
'account' => 'UA133071230000026006010423515',
'amount' => 111,
'recipient_code' => '40720198',
'category' => 'MP2B/GSCB',
'reference' => '№148/720/501',
'purpose' => 'Покупка товарів, №148/720/501',
'lock_mask' => 'FFFF'
];
$qr = new NBUQRCodeGenerator($options);
echo $qr->generateURL();
$options = [
'function' => NBUQRCodeGenerator::FUNCTION_ICT,
'recipient' => 'ТОВ "ФК ЕВО"',
'account' => 'UA673005280000026500504354077',
'amount' => 150,
'recipient_code' => '37193071',
'category' => 'OTHR/GDDS',
'reference' => '1225102576',
'purpose' => '?MerchantBusinessName="ROZETKA.UA", Покупка товарів, замовлення №821558965.',
'display' => '?<InstrForCdtrAgt><InstrInf>MerchID:01234-TermId:43210</InstrInf></InstrForCdtrAgt>',
'lock_mask' => 'FFFF', // Заборонити редагування всіх полів
'valid_until' => new DateTime('2025-03-21 12:00:00'),
'created_at' => new DateTime('2025-01-29 12:00:00')
];
$qr = new NBUQRCodeGenerator($options);
$qrUrl = $qr->generateURL();
echo $qrUrl;
$qrCodeSVG = $qr->generateQRCode();
echo '<img src="' . $qrCodeSVG . '" alt="QR Code">';
$validUntil = new DateTime('2025-09-21 12:00:00');
$createdAt = new DateTime();
$options = [
'recipient' => 'ТОВ "Компанія"',
'account' => 'UA123456789012345678901234567',
'amount' => 1000,
'recipient_code' => '12345678',
'purpose' => 'Оплата послуг',
'valid_until' => $validUntil,
'created_at' => $createdAt
];
$qr = new NBUQRCodeGenerator($options);
echo $qr->generateURL();
$qr = new NBUQRCodeGenerator();
$url = 'https://qr.bank.gov.ua/QkNECjAwMwo...';
try {
$data = $qr->parseURL($url);
print_r($data);
} catch (Exception $e) {
echo 'Помилка: ' . $e->getMessage();
}
$options = [
'recipient' => '', // Помилка - порожнє поле
'account' => 'UA123', // Помилка - неправильний формат
'amount' => -100, // Помилка - від'ємна сума
];
$qr = new NBUQRCodeGenerator($options);
if ($errors = $qr->getErrors()) {
echo "Помилки валідації:\n";
foreach ($errors as $error) {
echo "- $error\n";
}
} else {
echo $qr->generateURL();
}