netipar/szamlazzhu
Laravel package for integrating Számlázz.hu, the Hungarian online invoicing service. Create, query, and manage invoices, generate PDFs, and automate tax and accounting workflows through a fluent API, with configuration and service provider support for quick setup in Laravel applications.
^2.0 line or upgrade Laravel first. v3.0.0 will not install on older Laravel versions.php artisan vendor:publish --tag=szamlazzhu. This publishes both the config file and the sessions migration in one step. The migration gets a fresh timestamp and includes a down() method.config/szamlazzhu.php) and set your szamlazz.hu API key and any environment-specific options. Review the package README for the exact config keys.InvoiceHeader, attach one or more Item instances, and send the invoice through the package’s client. Use InvoiceHeader::setSimpleItems() when you want simplified items to appear on the invoice image.InvoiceHeader, add items, set buyer/seller data, then call the create-invoice method. Keep invoice construction in a dedicated service or action class so it is testable and reusable.InvoiceHeader::setSimpleItems() for the simpleItems field introduced from SDK 2.12.4. This is useful when the printed/PDF invoice image should show a simplified item list. It throws ValidationException for delivery notes and corrective invoices before any request is sent, so validate the invoice type first or catch the exception and return a clear domain error.database session driver, old MD5-keyed rows remain in the sessions table and can be cleaned up separately.szamlazzhu tag, keep them in sync when upgrading.ResponseException for responses that cannot be converted to JSON. This replaces the previous PHP TypeError, so update any catch blocks or exception handlers that expected TypeError.public const string SYSTEM_DOWN.InvoiceHeader::setProfitVat() (arresAfa) and Item::setPriceGapVatBase() (arresAfaAlap) in new code. They still work, but the upstream SDK removes them after 2027-02-15, and calling them on PHP 8.4+ triggers a deprecation notice.composer.json before upgrading; if you cannot move to Laravel 12/13 yet, pin ^2.0.database session driver the old rows are not removed automatically. Clean up stale sessions if they matter for storage or privacy.setSimpleItems() restrictions: Delivery notes and corrective invoices throw ValidationException before the API call. Do not assume every invoice type accepts simplified items; gate the call by invoice type or handle the exception explicitly.ResponseException is more accurate than the old TypeError. Make sure your exception handler catches ResponseException so API outages or HTML error pages surface as domain errors.szamlazzhu tag publishes both config and migration. If you have customised the config, review the published file before overwriting. The migration’s fresh timestamp and down() method make rollbacks safer.ValidationException usually means invalid invoice data or an unsupported invoice type/feature combination; ResponseException usually means the remote API returned something non-JSON. Log the request context around the package call to distinguish local validation from remote failures.How can I help you explore Laravel packages today?