Mailjet (E-posta) entegrasyonu (v1.2.74)
Mailjet, transactional ve pazarlama e-postaları için REST API sunan bir servistir. Panel, SendGrid ile aynı mantıkta App\Mail\Transport\MailjetApiTransport ile v3.1 Send uç noktasını kullanır; ek Composer paketi gerekmez. Anahtarlar admin Entegrasyonlar → Mailjet kartından veritabanına yazılır.
1) Mailjet hesabı ve API anahtarları
- mailjet.com üzerinden hesap oluşturun.
- Account → API Keys: API Key (kullanıcı adı gibi) ve Secret Key değerlerini kopyalayın; ikisi de panelde zorunludur.
- Gönderici alan adınızı doğrulayın (Sender / domain authentication); aksi halde teslimat ve itibar sorunları yaşanır.
2) Panelde yapılandırma
- Yönetici → Entegrasyonlar → Mailjet (E-posta) kartını açın.
- Entegrasyonu etkinleştir işaretleyin.
- API Key ve Secret Key alanlarını doldurun; Gönderici e-posta doğrulanmış bir adresten olmalıdır.
- Pazarlama ve Transactional kutuları: aynı anda ikisini işaretleyemezsiniz. SendGrid kartı da aktifken aynı kanal (pazarlama veya transactional) yalnızca bir kartta açık olabilir — ayrıntı için bilgi bankasındaki SendGrid ve Mailjet: pazarlama / transactional kanal kuralları maddesine bakın.
- Sandbox modu yalnızca test içindir; üretimde kapatın.
- Kaydet ardından Bağlantıyı test et.
3) SendGrid ile birlikte kullanım (v1.4.135+)
İki e-posta kartı birden aktif olduğunda panel, transactional kutusunun yalnızca birinde açık olmasına ve pazarlama kutusunun da yalnızca birinde açık olmasına izin verir. Çakışan kayıt denemesi uyarı ile reddedilir; önce diğer kartta ilgili kutuyu kapatmanız gerekir.
MailServiceProvider önce SendGrid transactional + varsayılan mailer mantığına bakar; uygun değilse Mailjet transactional devreye girebilir (her iki kartın bayrakları yukarıdaki kurallara uygun olmalıdır).
4) Event callback (webhook)
Mailjet panelinde Event notifications için URL:
POST https://<panel-adresiniz>/webhooks/mailjet
Webhook gizli anahtar doldurduysanız URL sonuna ?t=<aynı-gizli-değer> ekleyin; panel isteği bu parametre ile doğrular. Olaylar: bounce, blocked, spam, unsub (ve benzeri) müşteri e-postası eşleşirse consent_marketing_email otomatik kapatılır (SendGrid webhook’una paralel).
5) KVKK — yurt dışına aktarım rızası
Mailjet AB/Fransa merkezli olup veriler yurt dışında işlenir. Pazarlama gönderiminde panel, consent_overseas_transfer rızası olmayan müşterileri kampanya sorgusundan çıkarır.
6) Test postası ve günlükler
Entegrasyonlar sayfasındaki Test maili gönder düğmesi: önce SendGrid transactional (tanımlı ve seçiliyse), sonra Mailjet transactional (tanımlı ve seçiliyse), aksi halde Laravel varsayılan mailer ile gönderir. Ayrıntılı iz için Posta günlüğü ve sistem loglarında mailjet / MailjetApiTransport araması yapılabilir.
İlgili kod
App\Services\Integrations\MailjetService, App\Mail\Transport\MailjetApiTransport, App\Http\Controllers\MailjetWebhookController, App\Providers\MailServiceProvider, App\Http\Controllers\IntegrationController, App\Support\MailIntegrationChannelValidator, routes/web.php.