Skip to content

Email & Notifications

Range Warden sends transactional emails for membership reminders, payment receipts, and account notifications. Email requires an SMTP server — any standard provider works (Resend, SendGrid, Postmark, Amazon SES, Gmail, etc.).

Required module: Email Required role: Admin

Navigate to AdminSystemEmail.

FieldDescriptionExample
SMTP EnabledMaster toggle for all outgoing emailOn
HostSMTP server hostnamesmtp.resend.com
PortSMTP port (typically 587 for TLS)587
UsernameSMTP login usernameresend
PasswordSMTP login passwordre_xxxxxxxxxx
From AddressThe “From” email address[email protected]
From NameDisplay name on outgoing mailGreenfield Range
Application URLBase URL of your Range Warden instance (used in email links)https://range.yourclub.org
  1. Fill in all fields.
  2. Click Save.
  3. Click Send Test Email to verify the connection works.

Your SMTP password is encrypted at rest using AES-256-GCM. It is never displayed in the admin panel — the field shows *** after saving. The password is only decrypted server-side when sending email.

Range Warden includes 8 default email templates that you can customize or disable individually.

Navigate to AdminSystemEmail Templates.

TemplateWhen it’s sentKey variables
WelcomeWhen a new member’s status is set to Active for the first timeMember name, member number, range name
Renewal ReminderAutomatically at configured intervals before membership expiryMember name, expiry date, days remaining, renewal URL
Expiry NoticeOn the day a membership expiresMember name, expiry date, renewal URL
Payment ReceiptAfter any payment is recordedMember name, amount, payment method, date
Refund ConfirmationAfter a refund is processedMember name, amount, original payment date
Password ResetWhen a user clicks “Forgot Password”Reset link (time-limited)
RSO Account CreatedWhen an RSO member is provisioned with portal accessRSO name, login details, portal link
TestManually triggered from Admin → EmailRange name, test message
  1. Click on a template to open the editor.
  2. Modify the subject line and body content.
  3. Use the visual editor for formatting, or switch to code mode to edit HTML directly.
  4. Insert template variables by clicking the variable name from the available list — they’re automatically inserted at your cursor position.
  5. Click Preview to see how the email will look with sample data.
  6. Click Save.

Each template has a list of available variables that get replaced with real data when the email is sent. Variables use double-brace syntax: {{MemberName}}, {{ExpiryDate}}, {{Amount}}, etc.

The available variables are shown alongside the editor when you’re customizing a template.

Each template has an Enabled toggle. When disabled, that email type is never sent — even if the triggering event occurs.

For example, disabling the Welcome template means no welcome email goes out when new members are activated.

Click Reset to Default on any template to restore the original subject and body content.

Renewal reminders are the most important automated email feature. They notify members when their membership is about to expire.

  1. A background job runs daily (at midnight).
  2. It checks for members whose memberships expire within the configured threshold days.
  3. For each matching member, a renewal reminder email is sent.
  4. The system tracks when the last reminder was sent to prevent duplicates.

In AdminSettings, set the renewal_reminder_days value. This is a comma-separated list of how many days before expiry to send reminders.

Default: 30,14,7 — This sends reminders at 30 days, 14 days, and 7 days before expiry.

Example customization: 60,30,14,7,3 — Start reminding 60 days out and send a final reminder 3 days before.

If Stripe is configured, renewal reminder emails include a direct payment link. Members can click the link, land on a Stripe checkout page, pay their renewal fee, and their membership is automatically extended — no login or RSO interaction required.

Without Stripe, renewal emails remind members to visit the range or contact staff to renew.

Toggle renewal_reminder_enabled in AdminSettings to turn the automated reminder system on or off entirely. You can also disable just the renewal reminder email template while keeping other emails active.

Here’s when each email is automatically sent:

EventEmail sentConditions
Member activated (first time)WelcomeTemplate enabled, member has email
Membership approaching expiryRenewal ReminderReminders enabled, within configured days
Membership expires todayExpiry NoticeTemplate enabled, member has email
Payment recordedPayment ReceiptTemplate enabled, member/guest has email
Refund processedRefund ConfirmationTemplate enabled, member has email
User clicks “Forgot Password”Password ResetAlways sent (critical account function)
RSO account provisionedRSO Account CreatedTemplate enabled, RSO has email

Emails are not sent when:

  • The template is disabled.
  • The member or guest does not have an email address on file.
  • A duplicate reminder was already sent within the deduplication window (24 hours).

All transactional emails are sent asynchronously in the background — they don’t block the action that triggered them. If an email fails to send (e.g., SMTP server is down), the action (payment, renewal, etc.) still completes successfully.

ProblemSolution
Test email not receivedCheck SMTP host, port, username, and password. Verify the from address is not blocked by your email provider. Check spam folders.
Renewal reminders not sendingVerify reminders are enabled in settings and the renewal reminder template is toggled on. Check that members have email addresses on file.
Links in emails are brokenVerify the Application URL in Admin → Email matches your actual Range Warden URL.
Emails going to spamUse a dedicated email sending service (Resend, SendGrid) rather than a personal email account. Set up SPF, DKIM, and DMARC records for your domain.
Template changes not applyingMake sure you clicked Save after editing. Clear your browser cache and refresh.