Skip to content

Email

CRM’s email area covers three things: the addresses your people send from, a Compose screen for writing a one-off message to a customer, and a library of reusable templates. Reps and support agents use the first two; whoever owns your outbound wording keeps the templates.

Mail CRM sends on its own — quote delivery, password resets — is covered under Where else CRM sends mail. Inbound support mail runs the other way and belongs to Service & cases.

Every outbound message CRM sends — composed, quote or password reset — goes out through one SMTP relay configured on the server at deployment: host, port, credentials and a default From address. None of that is editable from the app, and until an operator sets it nothing will send.

Connecting a mailbox in the app does not change where mail goes out from. It registers an address that Compose can put in the From header, and that is all it does.

Email accounts shows three provider cards — Gmail, Outlook and Custom SMTP — above the list of mailboxes you have registered. The cards are labels, not buttons; + Connect Account opens the dialog. Pick a provider, give the email address and an optional display name, and for Custom SMTP fill in a host, a port (587, 465 or 25), a username and a password.

What the form asks for What CRM does with it
Provider, email address, display name Stored. The address becomes a From option on the Compose screen.
SMTP host, port, username, password Discarded. The API has no field for them, so they are dropped on the way in and never stored.
Gmail / Outlook authorization Never requested. The dialog says you will be redirected to Google or Microsoft to authorize; no redirect happens and the account is created straight away.

Accounts are personal: you see only the ones you connected, not your colleagues’. Every account shows as Connected from the moment it is created — no process ever moves one to another status. Disconnect removes it from your list and wipes any stored tokens; the Reconnect button, which only appears on an account in an error state, has no endpoint behind it and would fail if one ever appeared.

To send as more than one address, register each of them.

Email is one of the areas gated on sign-in alone rather than on the permission matrix, so do not rely on unticking a right to fence it off. Treat the template library as shared tenant configuration rather than personal content, and govern it by convention and by who holds an account on the tenant.

Compose email is a single form:

  • From — a dropdown of your connected accounts. With none registered, the field is empty and a warning says so; you cannot send until you add one.
  • To and CC — comma-separated addresses. There is no BCC field on the screen.
  • Template — pulls a saved template’s subject and body into the fields below, where you edit them before sending. See Templates.
  • Subject and Message. The message box takes HTML source and is sent as the HTML body; there is no rich-text editor, no preview and no attachments.

From, To and a subject are required before Send Email activates.

The screen files the message against a lead, contact, account, deal or case when the record is named in the URL it was opened with — relatedToType, relatedToId and relatedToUuid. When they are present a banner at the foot of the form confirms what the message will be filed against.

Nothing in the app supplies those parameters today: no record page has a “Send email” action that opens Compose. Opened from a bookmark, the form sends the message with no record attached. If the link matters to you, add the parameters to the URL by hand.

CRM hands the message to the relay first and only then records it, so the stored row reflects the real outcome — Sent with a timestamp, or Failed if the relay refused it. Alongside the outcome it keeps the sender, the recipients, the subject, the body and the related record.

The message log is readable through the API — a paged list filtered by direction or by related record, which returns only your own messages, and a single message by id. The open and click counters it carries are never incremented: CRM adds no tracking pixel and rewrites no links, so both stay at zero.

Email templates is the library the Compose screen’s Template dropdown reads from. The table lists the template name, its subject line, a category and when it was last updated, with Edit and Delete on each row and + New Template above. The editor asks for a name, a subject line, a category and an HTML body, typed as source in a plain textarea.

Templates belong to the tenant, not to a person: everyone sees every template and anyone who can reach the screen can edit or delete one. Names must be unique among live templates — reusing the name of one still in the list is rejected. Deleting is a soft delete: the template drops off the list and out of the Compose dropdown, and its name becomes available again.

The Category dropdown is not saved. The API has no category field, so the value is dropped on the way in and the Category column always shows a dash. Distinguish templates by name for now.

A panel under the table lists the placeholders templates recognise: {{contact.first_name}}, {{contact.last_name}}, {{contact.email}}, {{account.name}}, {{deal.name}}, {{deal.amount}}, {{user.name}} and {{company.name}}.

Substitution happens in one place only: an API call that takes a template and a set of values and returns the subject and body filled in. Choosing a template in Compose does not substitute anything — it copies the subject and body across exactly as written, and sending does not fill them in either, so a {{ }} placeholder left in the text is what the recipient reads. Replace them by hand before you send.

Case reply templates are a separate library with its own placeholders and its own rules — see Service & cases.

Path What happens
Password reset Sends the reset link, valid for one hour. On a deployment with no SMTP password set, the link is written to the server log instead of being mailed, so the flow still works in development.
Quote delivery Sends the quote as a PDF attachment under a formatted summary of the number, dates and total, then stamps the quote as presented — moving an approved quote to Presented — and writes an audit entry. It sends from the relay’s default address rather than a connected account, and is not recorded in the email log above. See Sales.
Campaign sends Do not work in this release — the send fails before any mail is attempted. See Campaigns.
Approval requests The approval engine tries to mail each approver, but the sender lookup it does first reads a column the email-account table does not have, so the attempt fails before a message is composed. It is deliberately best-effort and silent, so the approval itself proceeds normally. The approver’s only signal is the high-priority task the request opens on their task list — submitting for approval raises nothing in the bell. See Automation.
Case replies Posting on a case writes the message to the case thread and notifies anyone you @-mentioned. It does not mail the customer, whichever message type you pick. Answer the customer from Compose and keep the thread as the record.
Notification preferences The email, push and SMS boxes on the notification preferences screen are stored but not acted on. Ticking Email there sends no mail and there is no digest.
  • Service & cases — inbound mail, support mailboxes and the case thread that outbound replies belong beside.
  • Campaigns — bulk sending to campaign members.
  • Notifications — what CRM tells users in-app, and which channels deliver.