- How do I integrate signature capture into an existing Laravel Eloquent model?
- Add the `RequiresSignature` trait and implement the `CanBeSigned` contract to your model. This enables signature capture for that model. For PDF generation, also implement `ShouldGenerateSignatureDocument` and define your template method.
- Does this package support certified PDFs with digital signatures?
- Yes, it uses TCPDF to generate certified PDFs with digital signatures. You’ll need to configure SSL certificates (via OpenSSL or TCPDF’s demo cert) for compliance with ISO 32000-1 standards. The package abstracts the complexity of certificate management.
- What Laravel and PHP versions are supported?
- The package supports Laravel 11–13 and PHP 8.2–8.5. If you’re using Laravel 10 or older, check the UPGRADING.md file for migration guidance, though full support isn’t guaranteed.
- How do I customize the storage location for signatures or PDFs?
- Use the published `config/sign-pad.php` file to configure storage disks for signatures and documents. You can specify any Laravel-supported disk (e.g., local, S3) and even set custom paths for separation of concerns.
- Can I use this package with multi-signature workflows (e.g., co-signers)?
- Yes, the package supports multiple signatures per document. You can define multiple `SignaturePosition` instances in your template. For complex workflows (e.g., sequential signing), extend the `CanBeSigned` contract or use observers to manage states.
- How do I handle the frontend signature pad assets in a Laravel Mix/Vite project?
- Publish the assets with `php artisan vendor:publish --tag=sign-pad-assets`, which places them in `public/vendor/sign-pad/`. For Laravel Mix/Vite, manually include the JS/CSS in your build or configure the package to use CDN-hosted assets to avoid conflicts.
- What happens if I need legally binding e-signatures (e.g., for contracts)?
- This package provides ISO 32000-1 compliant certified PDFs via TCPDF. For higher assurance (e.g., eIDAS or HIPAA compliance), consider integrating a third-party service like Adobe Sign or DocuSign alongside this package for validation.
- How do I redirect users after they complete a signature?
- Configure the `redirect_route_name` in `config/sign-pad.php`. The route will receive a `$uuid` parameter, which is the UUID of the signature model in the database, allowing you to redirect to a specific signed document or confirmation page.
- Are there performance considerations for generating certified PDFs at scale?
- Generating certified PDFs is resource-intensive. For high-volume signing (e.g., 1000+ docs/day), queue the PDF generation using Laravel Queues and implement `ShouldQueue` on your model or document generation logic.
- What alternatives exist for Laravel signature capture if this package doesn’t fit my needs?
- Alternatives include standalone libraries like `zurb/foundation-sites` for basic signature pads or dedicated e-signature services like Adobe Sign, DocuSign, or HelloSign. These offer more advanced features (e.g., audit logs, legal compliance) but require external APIs.