Skip to content

Zaslat/QRPlatba

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QR Platba

Latest Stable Version Total Downloads Build Status Coverage Status

Knihovna pro generování QR plateb v PHP. QR platba zjednodušuje koncovému uživateli provedení příkazu k úhradě, protože obsahuje veškeré potřebné údaje, které stačí jen naskenovat. Nově lze použít i jiné měny než CZK a to pomocí metody setCurrenty($currency).

Tato knihovna umožňuje:

  • zobrazení obrázku v <img> tagu, který obsahuje v src rovnou data-uri s QR kódem, takže vygenerovaný obrázek tak není třeba ukládat na server ($qrPlatba->getQRCodeImage())
  • uložení obrázku s QR kódem ($qrPlatba->saveQRCodeImage())
  • získání data-uri ($qrPlatba->getQRCodeInstance()->getDataUri())
  • získání instance objektu QrCode ($qrPlatba->getQRCodeInstance())

QRPlatbu v současné době podporují tyto banky: Air Bank, Česká spořitelna, ČSOB, Equa bank, Era, Fio banka, Komerční banka, mBank, Raiffeisenbank, ZUNO.

Instalace pomocí Composeru

composer require zaslat/qr-invoice

Příklad

<?php

require __DIR__ . '/vendor/autoload.php';

use Defr\QRPlatba\QRInvoice;

$qrInvoice = new QRInvoice();

$qrInvoice->setAccountIBAN('Valid-IBAN-account')
    ->setGenerateQRInvoice(true) // Generuje QR kód pro QR Platbu i QR Fakturu
    ->setVariableSymbol('2016001234')
    ->setMessage('Toto je první QR platba.')
    ->setSpecificSymbol('0308')
    ->setSpecificSymbol('1234')
    ->setCurrency('CZK') // Výchozí je CZK, lze zadat jakýkoli ISO kód měny
    ->setDueDate(new \DateTime())
    ->setSvgDimension(190); // Velikost <svg> objektu.

echo $qrInvoice->getQRCodeImage(); // Zobrazí <img> tag s kódem, viz níže  

Ukázka

Lze použít i jednodušší zápis:

echo QRInvoice::create('12-3456789012/0100', 987.60)
    ->setMessage('QR platba je parádní!')
    ->getQRCodeImage();

Další možnosti

Uložení do souboru

// Uloží png o velikosti 100x100 px
$qrInvoice->saveQRCodeImage("qrcode.png", "png", 100);

// Uloží svg o velikosti 100x100 px
$qrInvoice->saveQRCodeImage("qrcode.svg", "svg", 100);

Aktuální možné formáty jsou:

  • Png
  • Svg
  • Eps
  • binární

Pro další je potřeba dopsat vlastní Writter

Zobrazení data-uri

// data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUAAAAFAAQMAAAD3XjfpAAAA...
echo $qrInvoice->getQRCodeInstance()->writeDataUri();

Odkazy

Contributing

Budu rád za každý návrh na vylepšení ať už formou issue nebo pull requestu.

About

Knihovna pro generování QR plateb v PHP

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages

  • PHP 97.6%
  • Shell 2.4%