From 380f3bc0e719378eb85767ff75cccf62afe4c685 Mon Sep 17 00:00:00 2001 From: louispaulb Date: Thu, 21 May 2026 16:36:06 -0400 Subject: [PATCH] docs(campaigns): document support@targo.ca as the default gift-campaign sender MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Validated live with Mailjet: targo.ca is verified at the DOMAIN level (SPF + DKIM + DMARC published in Cloudflare), so any *@targo.ca sender works without per-mailbox approval. Tested 1 send from support@targo.ca → accepted, delivered. Why support@ rather than noreply@ for campaigns: - Campaigns INVITE a reply (questions about the gift, "I didn't get mine", "the link doesn't work", etc.) - noreply@ is for transactional system mail where there's nothing useful for a human to reply to - Different intent → different sender The hub's transactional emails (invoices, magic links) continue to use noreply@targo.ca; campaigns specifically use support@targo.ca. README updated accordingly with the rationale. Note for future: if we ever want a @gigafibre.ca sender, that's ~30 min of Mailjet setup (add domain, publish SPF/DKIM CNAMEs in Cloudflare). Not done today because all customer-facing email flows through targo.ca and support@ is the right mailbox for this campaign intent. --- scripts/campaigns/README.md | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/scripts/campaigns/README.md b/scripts/campaigns/README.md index e2da8a7..dacf781 100644 --- a/scripts/campaigns/README.md +++ b/scripts/campaigns/README.md @@ -84,6 +84,27 @@ The `--sandbox` flag does TWO things: so the test gifts (non-redeemable in sandbox) don't actually land in any real customer inbox +### `--from` sender + +The Mailjet account has `targo.ca` verified at the domain level (SPF + +DKIM + DMARC), so any `*@targo.ca` sender works out of the box. The +default we use for gift campaigns is: + +``` +--from "Gigafibre Support " +``` + +Reasoning: it's a human-monitored mailbox (unlike `noreply@`), so if a +recipient hits reply with a question about their gift, someone sees it +and can help. The hub's transactional emails (invoices, magic links) +still go from `noreply@targo.ca` — campaigns are different in that +they invite a reply. + +If you ever need a `@gigafibre.ca` sender, that's a 30-min DNS + Mailjet +setup (add the domain in Mailjet → publish SPF/DKIM CNAMEs in +Cloudflare) — not done yet because all customer-facing email currently +flows through `targo.ca`. + ## Stage 2 — send the personalized French emails ## Dry run (no emails sent, HTML written for preview) @@ -96,7 +117,7 @@ node send_gift_campaign.js \ --subject "🎁 Un cadeau pour vous, de la part de Gigafibre" \ --amount "50 $" \ --expiry "31 décembre 2026" \ - --from "Gigafibre " \ + --from "Gigafibre Support " \ --dry-run ``` @@ -118,7 +139,7 @@ node send_gift_campaign.js \ --subject "🎁 Un cadeau pour vous, de la part de Gigafibre" \ --amount "50 $" \ --expiry "31 décembre 2026" \ - --from "Gigafibre " \ + --from "Gigafibre Support " \ --smtp-host in-v3.mailjet.com --smtp-port 587 \ --smtp-user "$SMTP_USER" --smtp-pass "$SMTP_PASS" \ --throttle-ms 600