Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Sendinblue Mailer

Sendinblue Mailer Laravel Package

symfony/sendinblue-mailer

Symfony Mailer bridge for Sendinblue (Brevo). Provides a transport to send emails through the Sendinblue API while using Symfony Mailer features and configuration, integrating easily into Symfony apps for transactional and marketing email delivery.

Deep Wiki
Context7

symfony/sendinblue-mailer provides a Symfony Mailer transport for sending email through Sendinblue (Brevo). It plugs into Symfony’s mailer system so you can use the standard MailerInterface while routing delivery via Sendinblue’s API.

Ideal for apps that want a clean, framework-native integration with a third-party ESP, it supports typical Mailer workflows and configuration patterns.

  • Sendinblue/Brevo transport for Symfony Mailer
  • Simple setup via DSN/environment configuration
  • Works with existing Symfony Mailer messages and headers
  • Suitable for transactional email and app notifications
  • Leverages Symfony’s mailer abstractions for consistent delivery
Frequently asked questions about Sendinblue Mailer
Can I use symfony/sendinblue-mailer in a Laravel app without Symfony Mailer installed?
No, this package requires Symfony Mailer (≥6.0) as a dependency. If your Laravel app uses the native Mail facade (SwiftMailer), you’ll need to migrate to Symfony Mailer first. The effort is minimal—just update your `composer.json` and configure the DSN in `.env`. Laravel 9+ supports this transition smoothly.
How do I configure Sendinblue’s SMTP relay in Laravel using this package?
Set the `MAILER_DSN` in your `.env` to `sendinblue://default:your_api_key@default`. Then update `config/mail.php` to use Symfony’s transport layer. This offloads email delivery to Sendinblue’s servers, reducing load on your Laravel app. No additional SMTP settings are needed beyond the DSN.
Will my existing Laravel Mailables work with symfony/sendinblue-mailer?
Yes, if your app uses Symfony Mailer’s transport layer. If you’re still on SwiftMailer, you’ll need to refactor to Symfony’s `Mailable` classes or wrap sends manually. The package leverages Symfony’s abstraction, so existing logic (e.g., `Mail::to()->send(new OrderShipped())`) remains compatible with minor adjustments.
How do I handle Sendinblue webhook events (e.g., email opens) in Laravel?
Create a public route (e.g., `Route::post('/sendinblue-webhook')`) to receive webhooks. Use Laravel’s `Bus` or `Events` system to dispatch custom events (e.g., `EmailOpened`). Validate payloads with Sendinblue’s signature header to ensure security. Example: `Event::dispatch(new EmailOpened($data));` in your webhook controller.
Does this package support Sendinblue’s drag-and-drop email templates?
Yes, but templates must be pre-configured in Sendinblue. In Laravel, reference them by ID in your `Mailable` class using a custom method like `sendinblueTemplateId()`. Dynamic content (e.g., Blade variables) must be passed via Sendinblue’s API variables or pre-rendered HTML. Static templates are the simplest approach.
What Laravel versions are compatible with symfony/sendinblue-mailer?
This package works with Laravel 9+ due to its dependency on Symfony Mailer 6.x. Laravel 8.x may require Symfony Mailer 5.x, but the package explicitly targets Symfony 6+. Test thoroughly if downgrading, as BC breaks exist between major Symfony versions. Always pin versions in `composer.json` for stability.
How do I test email sends locally before deploying to production?
Use Symfony Mailer’s `null` transport for local testing by setting `MAILER_DSN=null://default`. Mock Sendinblue’s API responses with PHPUnit or Pest by overriding the `HttpClient` dependency. For template testing, preview designs in Sendinblue’s dashboard before integrating with Laravel. Webhook testing requires a local endpoint (e.g., Laravel’s `testing` mode).
Are there alternatives to symfony/sendinblue-mailer for Laravel?
Yes. For Sendinblue, consider `spatie/laravel-sendinblue` (Laravel-specific wrapper) or direct API calls via Guzzle. For other providers, Laravel’s `Mail` facade supports drivers like Mailgun, Postmark, or AWS SES out of the box. Symfony’s abstraction is ideal if you’re already using Symfony components, but Spatie’s package offers tighter Laravel integration.
Will using Sendinblue’s SMTP relay improve my Laravel app’s performance?
Yes, offloading email delivery to Sendinblue reduces server load, especially for high-volume sends. However, performance gains depend on your current setup. If your Laravel app is already optimized (e.g., queued emails, async processing), the impact may be minimal. Monitor server metrics before/after migration to assess improvements.
How do I handle failed email sends or retries with this package?
This package doesn’t include built-in retry logic, but you can wrap Symfony Mailer in Laravel’s queue system. Dispatch emails via `Mail::later()` or `Mail::queue()` to handle failures asynchronously. For critical emails, implement a fallback (e.g., fallback to another transport) using Symfony’s `Transport` interface. Log exceptions to track issues.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport