- Can I use this bundle directly in Laravel, or is it strictly for Symfony?
- This bundle is designed for Symfony (4.3+ or 5.x) and relies on Symfony’s kernel, dependency injection, and configuration system. For Laravel, you’d need to use the underlying `alexeevdv/sumsub-client` directly or create a custom wrapper to bridge the gap. The bundle’s tight coupling to Symfony’s ecosystem makes it incompatible with vanilla Laravel.
- What Laravel versions or Symfony-based Laravel packages (like Laravel Symfony Bridge) support this bundle?
- This bundle requires Symfony 4.3 or 5.x, which can be integrated into Laravel via packages like `laravel/symfony-bridge` or `spatie/laravel-symfony-components`. However, ensure your Laravel version supports the Symfony kernel version the bundle targets. Test thoroughly, as Laravel’s DI container differs from Symfony’s.
- How do I configure environment variables for SumSub credentials in Laravel?
- Since this bundle expects Symfony’s `%env()` syntax, you’ll need to replicate the `.env` variables (e.g., `SUMSUB_APP_TOKEN`, `SUMSUB_SECRET_KEY`) in your Laravel `.env` file. For Laravel, use `env('SUMSUB_APP_TOKEN')` in your custom wrapper or Symfony bridge configuration instead of the YAML-based approach shown in the README.
- Does this bundle support webhook handling for real-time verification responses?
- The bundle abstracts SumSub’s API but lacks explicit documentation or examples for webhook handling. You’d need to manually implement a Symfony controller or Messenger component to process webhooks. SumSub’s official docs or a custom middleware layer may be required to handle real-time verification callbacks.
- What happens if SumSub’s API rate limits or fails? Does the bundle include retry logic?
- The underlying `alexeevdv/sumsub-client` handles HTTP requests, but the bundle does not document retry logic or rate-limiting strategies. For production resilience, wrap the client in a decorator or use a library like `symfony/http-client` with custom middleware to implement exponential backoff or circuit breakers.
- Is this bundle actively maintained? When was the last update, and how can I contribute?
- The bundle has no recent updates (last commit in 2022) and minimal documentation or community activity. To mitigate risks, fork the repository, submit patches to the upstream `alexeevdv/sumsub-client`, or consider contributing to a more actively maintained alternative like SumSub’s official Symfony bundle (`sumsub/symfony-bundle`).
- How do I test this bundle in a Laravel environment before production deployment?
- Since the bundle isn’t natively Laravel-compatible, mock the Symfony dependencies in a test environment using a package like `orchestra/testbench` or `symfony/panther` for browser-based tests. Test core flows (e.g., document verification, API token validation) with SumSub’s sandbox API, and verify error handling aligns with your Laravel exception system.
- Are there alternatives to this bundle for Laravel that offer better maintenance or features?
- For Laravel, consider SumSub’s official PHP SDK (`sumsub/sumsub-php-sdk`) or a custom wrapper around it. If you’re using Symfony components in Laravel, explore `sumsub/symfony-bundle` (SumSub’s official Symfony bundle) or fork this bundle to add Laravel-specific features. Always evaluate maintenance status and feature parity before committing.
- How do I handle SumSub’s webhook signatures in Laravel if I use this bundle indirectly?
- If using the underlying `alexeevdv/sumsub-client` in Laravel, validate webhook signatures manually by comparing the `X-Sumsub-Signature` header with a locally generated HMAC using your `SUMSUB_SECRET_KEY`. For Symfony, you could extend the bundle’s controller to include signature validation before processing webhook payloads.
- Will this bundle work with Laravel’s queue system (e.g., database queues, Redis) for async verification tasks?
- The bundle itself doesn’t integrate with Laravel queues, but you can dispatch SumSub verification jobs to Laravel’s queue system by wrapping the client in a service class. Use Laravel’s `Bus` facade to queue verification requests and process responses asynchronously, leveraging the bundle’s underlying client for API calls.