Everyone

Email Templates Overview

How Opterius Commerce sends transactional emails — editable templates, events, and multilingual support.

Last updated 1776211200

How Transactional Emails Work

Opterius Commerce sends automated emails to clients when specific events occur — invoices are created, payments are recorded, tickets are replied to, and so on. Each event is backed by an email template that defines the subject line and body of the message.

Templates are editable through the admin panel. You can change wording, add branding, include extra instructions, and translate content for other languages — without touching code.

Where Templates Live

All templates are managed at Admin → Settings → Email Templates.

The list shows every template by event name, the locale it applies to, and the last time it was edited. Click any template to open the editor.

How Emails Are Sent

Commerce uses Laravel Mail under the hood. Emails are dispatched via the SMTP settings configured in your environment (MAIL_HOST, MAIL_PORT, MAIL_USERNAME, MAIL_PASSWORD, MAIL_FROM_ADDRESS). There is no separate mail configuration inside the admin panel — the sending infrastructure is set at the server/env level.

[!IMPORTANT] If emails are not being delivered, verify your SMTP credentials in .env first. The template system only controls content — delivery depends on your mail server configuration.

The Template System

Each template has two parts:

Part Description
Subject The email subject line. Supports variables like {client_name}.
Body The email body. Supports HTML and plain text. Supports variables.

Variables are placeholders in curly braces ({invoice_number}, {ticket_url}, etc.) that are replaced with real values when the email is sent. See Template Variables for the full reference.

The Eight Notification Events

Event Triggered When
welcome A new client registers or is created by an admin.
invoice_created A new invoice is generated for a client.
invoice_paid A payment is recorded against an invoice.
invoice_overdue An invoice passes its due date unpaid.
service_activated A service is set to active status.
service_suspended A service is suspended.
ticket_reply A staff member posts a reply to a support ticket.
password_reset A client requests a password reset link.

See Notification Events for the full event reference including recipients and timing.

Multilingual Support

Each event can have one template per locale. When an email is triggered, Commerce checks the client's locale and uses the matching template. If no template exists for that locale, it falls back to the en (English) template.

See Multilingual Email Templates for setup instructions.

Disabling an Email

To stop a particular email from being sent, delete its template or blank out the subject field. When Commerce tries to send that event and finds no template (or an empty subject), it silently skips the email. No error is logged.

[!TIP] If you want to temporarily disable an email without losing its content, rename the subject to something like DISABLED - Invoice Created — this prevents it from matching normally, and you can restore it later.

Related Articles