diff --git a/src/PowderCoating.Web/Helpers/HelpKnowledgeBase.cs b/src/PowderCoating.Web/Helpers/HelpKnowledgeBase.cs index 222144c..b5e4ff7 100644 --- a/src/PowderCoating.Web/Helpers/HelpKnowledgeBase.cs +++ b/src/PowderCoating.Web/Helpers/HelpKnowledgeBase.cs @@ -1057,27 +1057,44 @@ public static class HelpKnowledgeBase **What's New:** [/ReleaseNotes](/ReleaseNotes) — A changelog of platform updates. Accessible from the user menu (top-right → "What's New"). When the platform team publishes a new release note, all users receive a bell notification linking directly to this page. ### Email & SMS Notifications - The system also sends email and SMS notifications for key events: + The system sends email and SMS notifications for key events: - Quote sent to customer - Quote approved/rejected by customer - Job status changes - - Job ready for pickup + - Job completed (email + SMS) - Invoice sent - Payment received - Overdue payment reminders Configure which notifications are enabled at [Company Settings](/CompanySettings) → Notifications tab. - Email/SMS notification history: [/NotificationLogs](/NotificationLogs) — under Settings/Admin + Email/SMS notification history: [/NotificationLogs](/NotificationLogs) In-app notification history: [/InAppNotifications](/InAppNotifications) - ### SMS Platform Setting - SMS/text-message features are controlled by a platform-level toggle in Platform Settings (SuperAdmin only at [/PlatformSettings](/PlatformSettings), in the Features group). When SMS is **off** (the default until Twilio is configured): - - SMS consent fields are hidden on all customer records - - SMS notification templates are hidden from Company Settings → Notification Templates - - SMS channel filter is hidden in the Notification Log - - No outbound SMS messages are sent via Twilio - When SMS is turned **on**, all of the above become visible and active. Turning it back off hides everything again without deleting any stored phone numbers or SMS settings — the data is preserved. Only a SuperAdmin can toggle this setting. + ### SMS Notifications + SMS text messages are an opt-in feature at both the company level and the customer level. + + **Enabling SMS for your company:** + Go to Company Settings → Notifications tab → SMS Notifications. Toggle "Enable SMS notifications" on. + The first time you enable it you will be asked to agree to the SMS terms of service, which covers your obligation to obtain prior written consent from each customer before texting them (required by the FCC/TCPA). Once agreed, you can toggle SMS on and off freely without re-agreeing unless the terms are updated. + + **Enabling SMS per customer:** + On each customer's record (Edit Customer), check the **SMS Opt-In** box and enter a **Mobile Phone** number. A customer will not receive SMS messages unless both boxes are set. You are responsible for obtaining the customer's verbal or written consent before enabling this. + + **What events send an SMS:** + - Job completed — notifies the customer their job is done and ready for pickup. + + **Compose-before-send (Admin/Manager):** + When a Company Admin or Manager marks a job complete, the system pre-fills an SMS draft based on your notification template and opens a compose modal before sending. You can personalize the message on the spot. The message must contain "STOP" opt-out language — it is appended automatically if missing. + + **Auto-send (Shop Floor workers):** + When a Shop Floor worker marks a job complete, the SMS is sent immediately using the template — no compose step. + + **Send SMS button:** + On any completed job's Details page, Company Admins and Managers see a **Send SMS** button that opens the same compose modal, allowing you to send a follow-up message at any time. + + **Customer opt-out:** + If a customer replies STOP to any message, they are automatically opted out and will not receive further SMS messages. They can reply START to re-subscribe. ### Platform Announcements Occasional platform-wide announcements from the Powder Coating Logix team are delivered directly to your notification bell — not as page banners. These may cover new features, scheduled maintenance, or policy updates. They appear as **Announcement** type items in the bell dropdown. diff --git a/src/PowderCoating.Web/Views/Help/Customers.cshtml b/src/PowderCoating.Web/Views/Help/Customers.cshtml index 98ad6de..8037385 100644 --- a/src/PowderCoating.Web/Views/Help/Customers.cshtml +++ b/src/PowderCoating.Web/Views/Help/Customers.cshtml @@ -89,6 +89,8 @@
  • Contact Name — the person you deal with day to day.
  • Email — used for quote and invoice notifications.
  • Phone — primary contact number.
  • +
  • Mobile Phone — used for SMS notifications. Required if you want to text this customer.
  • +
  • SMS Opt-In — check this only after you have obtained the customer's consent to receive text messages. Visible only when SMS is enabled for your company.
  • Address — billing and shipping address fields.
  • diff --git a/src/PowderCoating.Web/Views/Help/Settings.cshtml b/src/PowderCoating.Web/Views/Help/Settings.cshtml index 612c931..11693c8 100644 --- a/src/PowderCoating.Web/Views/Help/Settings.cshtml +++ b/src/PowderCoating.Web/Views/Help/Settings.cshtml @@ -361,7 +361,7 @@
  • Each reminder sent is recorded in the notification log, visible via Settings › Notification Templates & Logs.
  • -