PDF, QR, email and audit evidence

Configure the SMTP dependency for Delivery Note email

Follow this guide to use the core CRM’s approved outbound-email configuration because the module has no separate mail settings. The guide then takes you through the correct route, the checks to complete before making changes, the workflow in order, and the evidence to review afterwards.

Audience: AdministratorsPermission: Manage system email settingsModule v1.0.0
Jump to steps
Where to goAdmin Area → Setup → Settings → Email

What you’ll accomplish

Use the core CRM’s approved outbound-email configuration because the module has no separate mail settings. This guide follows the supplied Delivery Note module’s live hooks, controller actions, model rules, views and stored side effects.

Follow these steps

  1. Configure the CRM’s sender address and company identity.
  2. When using SMTP, enter the approved host, port, username, encrypted password and encryption mode.
  3. Send the CRM’s normal test email.
  4. Create a controlled Delivery Note with a test Recipient Email.
  5. Check dispatch and signed-confirmation messages.

Fields and options to review

  • email_protocol
  • smtp_host
  • smtp_port
  • smtp_email
  • smtp_password
  • smtp_encryption
  • companyname

Rules the system enforces

  • The module decrypts the stored SMTP password through the CRM encryption library when possible.
  • If decryption returns no value, it falls back to the stored value.
  • When SMTP is not selected, the module initialises the email library for HTML fallback delivery.
  • The module does not change server mail or TLS configuration.

How to confirm it worked

  • Delivery Note messages use the same authorised outbound-email infrastructure as the CRM.

Safety checks and troubleshooting

  • Never place plaintext SMTP credentials in documentation, screenshots or module source.
Stay within the supported flowDo not force database values, expose secure tokens, bypass permission checks, replace a stored signature or invent a status or interface that the supplied code does not implement.