zatca qr
v1.0.0
沙特阿拉伯Zatca在PHP中的电子供应要求,过程和标准的实施。
如果您打算使用内置的EGS模块生成密钥和CSR。软件包中的EGS模块取决于正在运行的系统中安装的OpenSSL。它用于使用secp256k1曲线生成ECDSA密钥对。还可以生成和签署CSR。
包装的所有其他部分都可以在没有OpenSSL情况下工作正常。 (这意味着它支持反应和其他框架)
上载新的EGS所需的所有主要期货。目前支持创建,签名和报告简化的税收发票。
composer update或composer install以安装依赖项。php -S localhost:8000查看阶段1.php和阶段2.php的完整示例。
// New Invoice and EGS Unit
$ egs = new ZATCA EGS ( $ egsUnit );
$ egs -> production = false ;
// New Keys & CSR for the EGS
list ( $ privateKey , $ csr ) = $ egs -> generateNewKeysAndCSR ( ' solution_name ' );
// Issue a new compliance cert for the EGS
list ( $ requestId , $ binarySecurityToken , $ secret ) = $ egs -> issueComplianceCertificate ( ' 123345 ' , $ csr );
// Sign invoice
list ( $ signedInvoiceString , $ invoiceHash , $ qr ) = $ egs -> signInvoice ( $ invoice , $ egsUnit , $ binarySecurityToken , $ privateKey );
// Check invoice compliance
echo ( $ egs -> checkInvoiceCompliance ( $ signedInvoiceString , $ invoiceHash , $ binarySecurityToken , $ secret ));
echo PHP_EOL ;zatca-qr受zatca-xml-php的影响,该ZATCA-XML-PHP与与Zatca(Zakat,tax and Tax and Tax and Tax and Tax Authority)或其任何子公司或其分支机构的任何方式相关,相关,授权,认可或以任何方式。 Zatca官方网站可以在https://zatca.gov.sa上找到。
所有贡献都将受到赞赏。
我不打算支持Tax Invoices (不是简化的发票)。如果有人想解决这一部分。