Реализация требований, процессов и стандартов в PHP в Saudi Arabia Zatca.
Если вы планируете использовать встроенный модуль EGS для генерации клавиш и CSR. Модуль EGS в пакете зависит от установки OpenSSL в системе, в которой он работает. Он используется для генерации пары клавиш ECDSA с использованием кривой secp256k1 . Также, чтобы генерировать и подписать 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 (Zakat, налогом и таможенным органом) или любой из ее дочерних компаний или его филиалов. Официальный веб -сайт Zatca можно найти по адресу https://zatca.gov.sa.
Все взносы благодарны.
Я не планирую поддержать Tax Invoices (не упрощенные). Если кто -то хочет заняться этой частью.