Eine Implementierung der E-Invoicing-Anforderungen, -prozesse und -standards von Saudi-Arabien Zatca in PHP.
Wenn Sie das eingebaute EGS -Modul verwenden möchten, um Schlüssel zu generieren, und CSR. Das EGS -Modul im Paket hängt davon ab, dass OpenSL im System, auf dem es ausgeführt wird, installiert wird. Es wird verwendet, um ein ECDSA -Schlüsselpaar mit der secp256k1 -Kurve zu erzeugen. Auch um eine CSR zu erzeugen und zu unterschreiben.
Alle anderen Teile des Pakets funktionieren ohne OpenSSL einwandfrei. (Das heißt, es unterstützt reagierende und andere Frameworks)
Alle die Haupt-Futures, die erforderlich sind, um ein neues EGS einzubinden. Erstellen, unterschreiben und melden Sie eine vereinfachte Steuerrechnung, die derzeit unterstützt wird.
composer update oder composer install aus, um Abhängigkeiten zu installieren.php -S localhost:8000 anzuzeigenVOLLSTÄNDIGES BEISPIEL IN PHAGH-1.PHP und Phase-2.Php anzeigen.
// 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 wird von zatca-xml-php beeinflusst, das nicht verbunden, assoziiert, genehmigt, unterstützt, unterstützt oder in irgendeiner Weise mit Zatca (Zakat, Steuer- und Zollbehörde) oder einer seiner Tochtergesellschaften oder seinen verbundenen Unternehmen verbunden ist. Die offizielle ZATCA -Website finden Sie unter https://zatca.gov.sa.
Alle Beiträge werden geschätzt.
Ich plane nicht, Tax Invoices zu unterstützen (nicht vereinfacht). Wenn jemand diesen Teil angehen will.