Laravel-ZATCA
Unofficial package to implement ZATCA QRcode for E-Invoicing.
Requirements
- PHP >= 7.4
- An mbstring extension
Dependencies
Installation
Via composer:
$ composer require mphpmaster/laravel-zatca
Usage
Generate Base64
$value = \MPhpMaster\ZATCA\TagBag::make()
->setCompany('Company name')
->setVatId('1234567891')
->setInvoiceDate('2021-11-24T03:48:00Z')
->setInvoiceTotalAmount('100')
->setVatAmount('15')
->toBase64();
// > Output
// AQxDb21wYW55IG5hbWUCCjEyMzQ1Njc4OTEDFDIwMjEtMTEtMjRUMDM6NDg6MDBaBAMxMDAFAjE1
Generate Plain
$value = \MPhpMaster\ZATCA\TagBag::make()
->setCompany('Company name')
->setVatId('1234567891')
->setInvoiceDate('2021-11-24T03:48:00Z')
->setInvoiceTotalAmount('100')
->setVatAmount('15')
->toTLV();
Get The QRCode Image
$value = \MPhpMaster\ZATCA\TagBag::make()
->setCompany('Company name')
->setVatId('1234567891')
->setInvoiceDate('2021-11-24T03:48:00Z')
->setInvoiceTotalAmount('100')
->setVatAmount('15')
->toImage();
// <img src="$value" alt="ZATCA QRCode" />
Testing
vendor/bin/phpunit
Copyright and license
Copyright © 2021 hlaCk (https://github.com/mPhpMaster)
Licensed under the MIT License (https://github.com/mPhpMaster/laravel-zatca/blob/master/LICENSE) license.