- Is intracto/campaign-monitor-bundle compatible with Laravel?
- No. It is a Symfony bundle built around Symfony's bundle extension, configuration tree and DI container, and it ships no Laravel service provider or facade. A Laravel application cannot run the bundle's extension lifecycle, so nothing is auto-wired. The only reusable parts are the config keys and constructor arguments, which are trivial to reproduce in your own provider.
- What does intracto/campaign-monitor-bundle actually do?
- It is a thin glue layer that stores your Campaign Monitor API key and client ID in Symfony configuration and registers the official createsend-php client as a container service. It adds no campaign logic, webhook handling, retries or queueing of its own. It saves a small amount of wiring time, not capability.
- How do I install intracto/campaign-monitor-bundle in a Laravel project?
- You generally should not. Composer may pull the package, but without a Symfony kernel the bundle never boots and no Campaign Monitor service is registered. If you want the underlying SDK, require campaignmonitor/createsend-php directly and bind your own client in a Laravel service provider.
- Which Campaign Monitor PHP SDK does the bundle wrap, and is that SDK still maintained?
- It wraps the official createsend-php library and pins a version through Composer. The bundle shows no demonstrated maintainership, so that pin may not track Campaign Monitor's current API or PHP 8.x releases. Check the composer.json constraints and confirm the SDK version you get is still supported before committing.
- Does intracto/campaign-monitor-bundle work with Laravel 10 or 11 and PHP 8.x?
- Unlikely without conflicts. Symfony bundles of this vintage typically pin framework-bundle 2.x or 3.x with PHP 5.x or 7.x constraints, which clash with modern Laravel and PHP 8.x. Older transitive Guzzle versions can also collide with Laravel's HTTP client stack, so test resolution in a scratch project first.
- How do I add and update Campaign Monitor subscribers in Laravel without the bundle?
- Require createsend-php directly, then register a singleton in a service provider that builds the CampaignMonitor client from config('services.campaignmonitor.api_key') and your client ID. Inject that client wherever you need list and subscriber operations. Keep credentials in config and environment files, never in business logic.
- Is there a Laravel-native alternative to intracto/campaign-monitor-bundle?
- There is no widely adopted Laravel package for Campaign Monitor, which is why the SDK plus a short service provider is the usual approach. The bundle is a reference for how to wire the client, not a Laravel integration. Consuming the SDK directly gives you a smaller dependency surface and a vendor-backed library.
- Does the bundle handle Campaign Monitor webhooks, rate limits or retries?
- No. It only wires the API client into the container; webhook ingestion, rate-limit backoff, queued jobs and idempotency are entirely your responsibility. Those are the expensive and high-risk parts of an ESP integration. Budget for them explicitly instead of treating the package as the integration.
- Is intracto/campaign-monitor-bundle safe to use in production?
- Treat it as high dependency and ownership risk. It has roughly 4 stars, zero dependents and no visible maintainership, so there are no upstream fixes to rely on for PHP 8.x or security issues. Because its job is holding API credentials for subscriber PII, an unmaintained wrapper is a compliance concern under GDPR or CCPA, and your team owns the processing agreement.
- How should I test a Campaign Monitor integration in Laravel?
- Wrap the SDK calls you need behind a small interface and swap in a fake or mock in your test suite so unit tests never reach the live API. Use a dedicated Campaign Monitor sandbox list for the few integration tests that must talk to the real service. Avoid mocking SDK concrete classes everywhere; a thin adapter keeps the tests readable.