CRMcy Docs

Email templates

Customize the text and styling of every transactional email.

Last updated 2026-05-05

Every transactional email — invitation, invoice issued, payment received, ticket reply, password reset, expense approved — is rendered from a template stored per tenant. Templates use MJML for the layout (so they look identical across Gmail, Outlook, Apple Mail) and a Handlebars-style merge syntax {{customer.name}} for variable substitution. The editor at Settings → Email templates offers a live preview pane that re-renders on each keystroke, plus a "send test" button that fires a real email to your address using sample data.

Default templates ship with the platform; tenant overrides are stored as deltas so the upstream defaults can evolve without clobbering your customizations.

Related endpoints

  • GET /api/tenant/email-templates — list (each with default + override flags).
  • PUT /api/tenant/email-templates/:key — replace the override.
  • DELETE /api/tenant/email-templates/:key — revert to default.
  • POST /api/tenant/email-templates/:key/test — send to current user.

See the source at apps/web/src/app/(tenant)/settings/email-templates and the layouts at packages/email-templates.