spatie/laravel-webhook-client
Receive and process incoming webhooks in Laravel. Verify signatures, store webhook payloads, and handle them asynchronously via queued jobs. Includes flexible configuration for endpoints and processing logic.
Architecture fit: The package is purpose-built for Laravel, leveraging core features like Eloquent models, queue system, and middleware. It integrates seamlessly with Laravel's routing and configuration patterns, using queued jobs for async processing which aligns with Laravel's best practices for handling external requests. The architecture cleanly separates signature validation, storage, and processing concerns.
Integration feasibility: High feasibility due to straightforward Composer installation, well-documented publishing commands for config/migrations, and clear route setup instructions. The default implementations (e.g., ProcessEverythingWebhookProfile) reduce initial setup complexity, while customization points (signature validators, webhook profiles) provide flexibility for advanced use cases.
Technical risk: Dependents count of 0 raises questions about real-world adoption despite 1172 stars. The listed release date (2026-02-21) appears erroneous (future date), casting doubt on maintenance status. Database storage of all payloads without proper TTL configuration could cause table bloat. Signature validation relies on HMAC-SHA256 which is secure but misconfiguration of secrets could lead to spoofing.
Key questions: What is the actual maintenance cadence and Laravel version compatibility? How does the package handle duplicate or out-of-order webhook events? What are the performance benchmarks for high-volume webhook ingestion (e.g., 1000+ req/sec)? Are there known issues with specific queue drivers (e.g., Redis vs. database)?
Stack fit: Optimized for Laravel 8+ with PHP 7.4+. Works with any Laravel-supported queue driver (Redis, SQS, database). Fully compatible with standard Laravel middleware patterns and Eloquent models. Requires no external dependencies beyond Laravel core.
Migration
How can I help you explore Laravel packages today?