Joy Loyalty · Notification Email · Email Editor v1
Thay form soạn email cũ bằng một editor block trực quan ngay trong Joy admin: kéo-thả, xem trước đúng như khi gửi, và gửi email thật — bật dần theo từng shop, không ảnh hưởng khách đang dùng bản cũ.
shop.useEmailEditorV2 · pending QA
2026-06-01
Email thông báo (earn points, tier achieved, milestone, referral…) ở bản V1 soạn bằng form cứng.
Một trình soạn email trực quan dạng block, nhúng thẳng vào trang Notifications của Joy admin.
17 loại block (Heading, Text, Image, Button, Banner, Footer, Divider, Spacer, Social, HTML + khối động Joy: Loyalty Card, Product, Coupon). Kéo-thả, sửa trực tiếp trên canvas, 4 theme màu, nội dung theo từng ngôn ngữ (EN/VI…), khung mô phỏng hộp thư (inbox) để xem y như khách thấy.
Cùng một bộ máy dựng email (block → MJML → HTML) chạy cho cả preview lẫn gửi thật → "xem sao gửi vậy". Merge-tag ({{shop_name}}…) và điều kiện Liquid ({% if %}) được thay giá trị đúng lúc gửi. Bật theo từng shop qua flag, khách V1 không đổi gì.
Luồng A — Soạn & lưu:
emailDocV2) — save bar + ⌘S, không đụng bản V1.Luồng B — Gửi email thật cho khách:
{{tag}} + điều kiện bằng dữ liệu thật.Merchant vào Settings → Notifications → chọn 1 email (shop đã bật flag) là thấy editor: cây block bên trái, canvas (khung inbox) ở giữa, thư viện block + thuộc tính bên phải, panel Settings (Performance · Trigger · Subject & Preview · Sender · Send test).
Congratulations!
Hi Lan Nguyen,
Great news! You've officially leveled up to $500 Club 🎉
Next milestone: Platinum Club — You need 200 points more to get there.
Demo trực tiếp: editor trên dev shop (Settings → Notifications, flag shop.useEmailEditorV2 bật) — dev route /dev_zone/email_editor_v2.
| Hạng mục | Trạng thái | Kết quả thật |
|---|---|---|
| Gửi email V2 thật | ✓ verified on dev | Bấm "Send test" → email V2 tới inbox thật (Mailgun), render đúng block + biến đã thay. |
| Xem trước khớp gửi | ✓ | Canvas giải cả {% if next_milestone_name %} → hiện "Next milestone: Platinum Club", không lộ chữ {% %}. |
| Khách V1 không bị ảnh hưởng | ✓ | Khi flag tắt / chưa có bản V2 → email đi đúng đường V1 cũ, không đổi 1 ký tự. |
| Chuyển nội dung V1 → V2 | ✓ | Mở lần đầu tự chuyển nội dung V1 sang block (không mất chữ), hoặc dùng 1 trong 17 template mẫu. |
shop.useEmailEditorV2 — rollout dần, an toàn (khách chưa bật giữ nguyên bản V1).