Skip to content

Email Templates

LicenseDock sends transactional emails for every customer-facing event in the order, subscription, and license lifecycle, plus a parallel set of admin notifications.

How Email Sending Works

  1. An event happens (order completed, subscription renewed, refund issued)
  2. LicenseDock queues an email row in #__licensedock_email_queue
  3. The LicenseDock – Process Email Queue scheduled task (run every 5 minutes) picks up queued emails and sends them
  4. Failed sends retry up to 3 times. Permanent failures notify the admin
  5. Stale emails stuck in the sending state for more than 5 minutes are reset to queued

This means checkout never blocks on the mailer, and a transient SMTP outage doesn't lose emails.

Customer Emails

TemplateTrigger
purchase_confirmationInitial order paid. Includes license keys and download links
welcomeNew Joomla user account auto-created from a guest checkout
account_activationActivation link for the auto-created account (set password)
license_deliveryLicense keys for products that don't bundle them in the receipt
abandoned_recoveryReaches out to a customer who left checkout. Sent on the configured intervals
trial_endingA trial is about to convert to a paid subscription
renewal_reminder_1First renewal reminder before subscription renews
renewal_reminder_2Second renewal reminder closer to the renewal date
payment_failedA subscription renewal payment failed
expiration_noticeSubscription has expired
subscription_cancelledCustomer cancelled auto-renewal
plan_change_confirmedPlan change applied immediately
plan_change_scheduledPlan change scheduled for the next renewal
plan_change_appliedScheduled plan change has just kicked in
plan_change_cancelledPending plan change was cancelled
refund_confirmationFull refund processed
partial_refund_confirmationPartial refund processed

Admin Emails

Sent to the store admin email for awareness. Each can be enabled or disabled per template.

TemplateTrigger
admin_new_orderOrder completed
admin_renewalSubscription renewed
admin_payment_failedRenewal payment failed
admin_refundRefund processed
admin_expiredSubscription expired
admin_subscription_cancelledCustomer cancelled auto-renewal
admin_plan_changeAny plan change activity (confirmed / scheduled / cancelled / applied)
admin_dispute_openedChargeback / dispute opened
admin_dispute_resolvedDispute resolved
admin_gateway_errorGateway API call failed

Editing Templates

Components → LicenseDock → Settings → Email Templates.

Each template has:

  • Subject – the email subject line
  • Body – HTML body
  • Reset to default – restore the shipped default
  • Preview – render with sample data

Templates support placeholder variables. Common variables include {customer_name}, {store_name}, {store_url}, {logo_url}, {order_number}, {product}, {plan}, {order_total}, {license_section}, {downloads_section}, {account_link}, {renewal_link}, {recovery_link}, {subscription_end}, {trial_end}, {regular_price}, {billing_cycle}, {new_plan}, {current_plan}, {proration_net}, {next_renewal}, {access_end_date}, {refund_amount}, {total_refunded}, {activation_link}, {activation_ttl_days}.

The exact variables available depend on the template – use the Preview button to see what's substituted.

Email Settings

Configure the sender and SMTP details under Settings → Email:

SettingNotes
Modejoomla (Joomla Global mailer) or custom (LicenseDock SMTP)
Host, Port, Encryption, Username, PasswordRequired when Mode is custom. Password is encrypted at rest
From Name / From EmailSender identity
Reply-To Name / Reply-ToOptional reply-to header
Email SignatureHTML appended to every email body
Test EmailSend a test message to confirm delivery

Email Log

Every queued email is recorded in Components → LicenseDock → Email Logs with:

  • Recipient, subject, body, attachments
  • Status (queued, sending, sent, failed)
  • Attempt count, error message
  • Scheduled time, send time

Use the log to debug deliverability or to confirm a customer received a specific message.

Joomla Extensions by Contona