- How do I install infobip/infobip-api-php-client in a Laravel app?
- Install it with Composer using composer require infobip/infobip-api-php-client. It targets PHP 8.1+ and Guzzle 7 and does not ship a Laravel service provider or facade. You should bind the client in your own service provider and keep credentials in a published config file.
- Does this package support Laravel 9, 10, and 11?
- Yes, it is a plain Composer package with no framework coupling, so it works with Laravel 9, 10, and 11 on PHP 8.1+ with Guzzle 7. Check the Composer constraints before upgrading Laravel or the SDK. No Laravel-specific auto-discovery or config is provided.
- Is there a Laravel service provider or facade for Infobip?
- No, the SDK does not ship a service provider, facade, config file, or notification channel. Treat it as a transport library and build an application-owned adapter such as an SmsSender interface. Register the Infobip client as a singleton in your own service provider and publish a config file with base URL, API key reference, and timeout defaults.
- How do I send an SMS with the Infobip PHP client from Laravel?
- Instantiate the client with your region-specific base URL and API key, build the SMS request with the SDK request builder, and map the response into your own domain result. Wrap this inside an application-owned SmsSender implementation so SDK types do not leak into controllers or jobs. In production, send through a queued job rather than directly in the request cycle.
- How do I handle Infobip delivery reports in Laravel?
- Configure the delivery-report webhook in Infobip and expose a Laravel route and controller to receive it. Validate the payload, update your message status records idempotently, and log failures for observability. The SDK does not provide webhook handling, retry policy, or idempotency for you.
- Can I use this SDK for WhatsApp, Viber, email, and 2FA as well as SMS?
- Yes, the SDK covers Infobip's omnichannel APIs including SMS, WhatsApp, email, voice, and 2FA verification flows. That broad coverage is the main reason to adopt the SDK over raw HTTP. For a narrow SMS-only scope, the generated surface can be more overhead than value.
- Why am I getting authentication or routing errors from the Infobip API client?
- Infobip uses region-specific base URLs, so an incorrect base URL often produces confusing authentication or routing failures rather than a clean error. Confirm the base URL matches the region tied to your account and API key. Store it in config and cache it in production instead of resolving it at request time.
- Should I use this SDK or call the Infobip REST API directly with Laravel's Http client?
- For a narrow scope such as transactional SMS plus delivery reports, calling the REST API directly through Laravel's Http client is defensible and often lower total cost of ownership. For a multi-channel roadmap covering SMS, WhatsApp, Viber, 2FA, and email, the SDK's endpoint coverage pays for its ergonomics tax. Decide based on the channels you expect to support over the next 12 months.
- How do I test Infobip integration without sending real messages?
- Keep the SDK behind your own adapter interface and unit test the DTO mapping with a fake PSR-18 client. That lets you assert request shapes and response handling without network calls or real spend. Use a staging account and a small allowlist of test destinations for end-to-end checks before production rollout.
- Is infobip/infobip-api-php-client safe for production and how often does it break?
- The license is MIT, but repository metadata is unverified and adoption is modest, so your team is effectively the QA function. The client is generated from Infobip's OpenAPI specification and has shipped breaking changes across majors, including DTO reshaping. Pin the major version, isolate SDK types in one adapter file, add spend and retry guardrails, and complete DPA and data-residency review before sending EU or UK traffic.