- What is squareetlabs/laravel-verifactu used for?
- It is a Laravel package for Spain's VeriFactu anti-fraud invoicing requirements. It provides helpers to generate QR codes, build and sign invoice records, and submit them to the AEAT, along with configuration and models. Treat it as a compliance adapter around your billing system rather than a replacement for your invoicing domain logic.
- Which Laravel versions does this VeriFactu package support?
- It is advertised as compatible with Laravel 10 through 12.x. You should still verify the PHP version and database driver requirements in the package's composer.json before installing. Test on your exact Laravel and PHP combination in a sandbox, since minor framework upgrades can affect service providers and queue jobs.
- How do I install and configure laravel-verifactu?
- Install it via Composer with composer require squareetlabs/laravel-verifactu, then publish the package config and migrations. Configure your company details, certificate paths, and AEAT environment, test or production, in the published config file. Because it is a service-provider package, no manual registration is normally needed on Laravel 10 and above, but check the README for required environment variables.
- Does this package submit invoices to AEAT or only generate records?
- The package's stated scope includes building, signing, and submitting invoice records to the AEAT, not just generating local records. However, with only around 23 GitHub stars and no public dependents, submission behavior and status reconciliation should be validated against the AEAT sandbox before production. Confirm whether it handles submission responses, retries, and status updates in the version you install.
- Does laravel-verifactu generate QR codes for invoices?
- Yes, QR code generation for VeriFactu invoice records is one of the package's advertised features. The QR content and format must match current AEAT specifications, so verify the generated output against official examples. Keep QR generation behind your own adapter if you need to swap implementations later.
- Can I use this package with my existing invoice tables and numbering?
- The package is likely designed to work with its own VeriFactu records via Eloquent models, which may conflict if it expects to own your invoice tables or numbering. Prefer mapping your existing invoices into VeriFactu records through an internal gateway or anti-corruption layer. That keeps pricing, billing, and invoice numbering as the system of record while the package handles compliance concerns.
- How does the package handle hash chaining and record integrity?
- VeriFactu requires invoice records to be chained with hashes so tampering can be detected, and the package provides helpers for building and signing those records. Your application remains responsible for sequencing, immutability, and audit evidence around that chain. Watch for concurrency issues: invoice numbering and hash chaining must be serialized per company or tenant to avoid broken chains.
- Is laravel-verifactu suitable for multi-tenant applications with per-company certificates?
- Multi-tenancy is one of the higher-risk areas because each company or tenant needs isolated sequences, certificates, and hash chains. The package provides configuration and models, but per-tenant certificate storage and rotation usually require custom code on your side. Run a spike with at least two tenants and concurrent invoice creation before committing to production.
- What are the production risks of using this package for VeriFactu compliance?
- The biggest risk is regulatory rather than code: AEAT schema versions, hash-chain rules, QR content, record immutability, and submission semantics must be correct. Other concerns include certificate secrets, idempotency and duplicate submission, queue reliability, time synchronization, and upgrades when AEAT specifications change. The MIT license limits lock-in, but low adoption means you should expect to own fixes and maintain the integration yourself.
- What alternatives exist and how actively is this package maintained?
- Alternatives include other Spanish VeriFactu-oriented Composer packages, custom AEAT SOAP integrations, or commercial compliance services, but evaluate each against current AEAT specifications. This package has a small community footprint, around 23 stars and no dependents, so check recent commits, open issues, and release cadence. If you adopt it, budget for an internal owner and a tested upgrade path for schema changes.