Code or the dashboard
Author template HTML with the React Email package in your repo, or edit it in the dashboard. Same stored template either way.
Repeated product email — receipts, resets, welcomes — tends to live as HTML strings scattered through your codebase. Store each one as a template instead: author it in code or the dashboard, pass variables at send time, and call it from REST, the Node SDK, batch jobs, and automation steps.
Store a reusable subject and body, marking the parts that change with tokens like {{FIRST_NAME}}.
Render it in the dashboard editor with sample variables to see the real email.
Pass templateId and variables to the send endpoint instead of the full body.
Override the stored subject, html, or text at send time when one message needs to differ.
Render a stored template with sample variables in the dashboard before anything goes out. What you preview is what sends: a {{TOKEN}} you forgot to fill stays visible instead of collapsing into blank copy.
Subject, HTML, and text live in one template, so a review covers the entire email at once.
An unfilled {{TOKEN}} renders as itself, so a gap is obvious the moment you open the preview.
Install editable welcome, reset, and receipt starters instead of hand-writing security email from scratch.
Transactional sends, batch jobs, and automation steps all resolve to the same stored template, so a correction can't miss a copy pasted in code.
Author template HTML with the React Email package in your repo, or edit it in the dashboard. Same stored template either way.
Each template stores a subject, HTML, and optional plain text, then fills your variables at send time.
New workspaces can install editable welcome, password reset, and receipt starters.
The same stored template backs your transactional sends, batch jobs, and automation steps.
Receipts, resets, alerts, and lifecycle email each resolve to one stored template, so a change lands everywhere it is used. Fix the wording in the dashboard and the next send renders it — no code change to correct a typo.
The {{TOKEN}} stays visible in the sent email instead of rendering as empty text, so you catch the gap before the recipient does.
Yes. Batch sends can reuse a template and pass variables per message.
Yes. Render the HTML with the React Email package or build it in the dashboard editor — either source mode produces the template you send by id.
Simulator outcomes are free. Move to a verified domain when the path is ready.