Last modified by Isaac Mejia on 2026/05/05 14:27

From version 2.1
edited by Isaac Mejia
on 2026/04/30 14:41
Change comment: There is no comment for this version
To version 1.1
edited by Isaac Mejia
on 2026/04/30 14:34
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,131 +1,123 @@
1 -= Sending Bulk Messages from the Contract Report =
1 +~== Overview ==
2 2  
3 -**Applies to:** Member Manager\\
4 -**Audience:** Club staff, owners, managers\\
5 -**Last updated:** 2026-04-29
6 -
7 -----
8 -
9 -== Overview ==
10 -
11 11  Member Manager lets you send bulk emails and text messages to members directly from the Contract Report. This is useful when you want to message a specific contract group — for example, all members on a Frozen contract, all members in a specific program, or all members with contracts ending this month.
12 12  
13 13  The feature uses the same email and SMS infrastructure as the Members tab, so opt-out preferences, communication settings, and personalization tokens all behave the same way.
14 14  
15 -----
7 +~-~-~-~-
16 16  
17 -== Before You Start ==
9 +~== Before You Start ==
18 18  
19 19  Make sure your members have:
20 20  
21 -* Email addresses on file with the TCPA email opt-in checked (for emails)
22 -* Mobile phone numbers on file with the TCPA text opt-in checked (for texts)
23 -* Reminders preference set to a value that allows the channel you're sending on:
24 -** **Nothing** → receives neither email nor text
25 -** **Email Only** → receives email only
26 -** **Text Only** → receives text only
27 -** **Both** → receives both
13 +~* Email addresses on file with the TCPA email opt-in checked (for emails)
14 +~* Mobile phone numbers on file with the TCPA text opt-in checked (for texts)
15 +~* Reminders preference set to a value that allows the channel you're sending on:
16 +~** ~*~*Nothing~*~* → receives neither email nor text
17 +~** ~*~*Email Only~*~* → receives email only
18 +~** ~*~*Text Only~*~* → receives text only
19 +~** ~*~*Both~*~* → receives both
28 28  
29 29  Members who don't meet these requirements will be filtered out automatically and excluded from the send. The recipient count shown before send already reflects this filtering.
30 30  
31 -----
23 +~-~-~-~-
32 32  
33 -== Step-by-Step ==
25 +~== Step-by-Step ==
34 34  
35 -=== 1. Run a Contract Report Query ===
27 +~=== 1. Run a Contract Report Query ===
36 36  
37 -Navigate to **Reports → Contract Report**. Set your filters (status, program, location, contract dates, etc.) and run the query.
29 +Navigate to ~*~*Reports → Contract Report~*~*. Set your filters (status, program, location, contract dates, etc.) and run the query.
38 38  
39 -=== 2. Switch to the Detail View ===
31 +~=== 2. Switch to the Detail View ===
40 40  
41 -The bulk messaging buttons only appear on the **Detail** view, not the Summary view.
33 +The bulk messaging buttons only appear on the ~*~*Detail~*~* view, not the Summary view.
42 42  
43 -{{info}}
35 +~{~{info}}
44 44  If you ran the query on Summary and then switched to Detail, re-run the query on Detail before clicking the messaging buttons.
45 -{{/info}}
37 +~{~{/info}}
46 46  
47 -=== 3. Choose Your Action ===
39 +~=== 3. Choose Your Action ===
48 48  
49 49  Four buttons appear at the top of the report:
50 50  
51 -|=Button|=What It Does|
52 -|**Email All Found**|Sends an email to every member in the current result set|
53 -|**Email Selected**|Sends an email to only the members you've checked in the table|
54 -|**Text All Found**|Sends a text to every member in the current result set|
55 -|**Text Selected**|Sends a text to only the members you've checked in the table|
43 +~|=Button|=What It Does|
44 +~|~*~*Email All Found~*~*|Sends an email to every member in the current result set|
45 +~|~*~*Email Selected~*~*|Sends an email to only the members you've checked in the table|
46 +~|~*~*Text All Found~*~*|Sends a text to every member in the current result set|
47 +~|~*~*Text Selected~*~*|Sends a text to only the members you've checked in the table|
56 56  
57 -{{info}}
49 +~{~{info}}
58 58  If a member has multiple contracts that match your query, they will only receive one message — the system deduplicates by member ID before sending.
59 -{{/info}}
51 +~{~{/info}}
60 60  
61 -=== 4. Compose Your Message ===
53 +~=== 4. Compose Your Message ===
62 62  
63 -**For emails:**
55 +~*~*For emails:~*~*
64 64  
65 -* (Optional) Pick an existing template from the dropdown to pre-fill the subject and body.
66 -* Enter a subject line.
67 -* Edit the body in the rich text editor. You can use bold, italics, lists, links, and images the same way you would when emailing from a member profile.
68 -* Use personalization tokens to customize each message:
69 -** **#FIRST NAME#** — member's first name
70 -** **#LAST NAME#** — member's last name
71 -** **#LOGIN#** — member's portal login
57 +~* (Optional) Pick an existing template from the dropdown to pre-fill the subject and body.
58 +~* Enter a subject line.
59 +~* Edit the body in the rich text editor. You can use bold, italics, lists, links, and images the same way you would when emailing from a member profile.
60 +~* Use personalization tokens to customize each message:
61 +~** ~*~*#FIRST NAME#~*~* — member's first name
62 +~** ~*~*#LAST NAME#~*~* — member's last name
63 +~** ~*~*#LOGIN#~*~* — member's portal login
72 72  
73 -**For texts:**
65 +~*~*For texts:~*~*
74 74  
75 -* Enter your message as plain text.
76 -* A character counter shows you how long the message is. Stay under 160 characters for a single SMS segment — longer messages will be sent as multiple segments and may cost more.
77 -* Personalization tokens (#FIRST NAME#, etc.) work in texts too.
67 +~* Enter your message as plain text.
68 +~* A character counter shows you how long the message is. Stay under 160 characters for a single SMS segment — longer messages will be sent as multiple segments and may cost more.
69 +~* Personalization tokens (#FIRST NAME#, etc.) work in texts too.
78 78  
79 -=== 5. Preview the Recipient Count ===
71 +~=== 5. Preview the Recipient Count ===
80 80  
81 81  The dialog shows you how many members will actually receive the message after TCPA and reminders filtering is applied. This is your final send count — use it to sanity-check the audience size before you click Send.
82 82  
83 -=== 6. Send ===
75 +~=== 6. Send ===
84 84  
85 -Click **Send**. The message dispatches through MSI's normal email (SendGrid) and SMS (Mobiery) infrastructure. You'll see a confirmation when the send is complete, including the final recipient count.
77 +Click ~*~*Send~*~*. The message dispatches through MSI's normal email (SendGrid) and SMS (Mobiery) infrastructure. You'll see a confirmation when the send is complete, including the final recipient count.
86 86  
87 -----
79 +~-~-~-~-
88 88  
89 -== Frequently Asked Questions ==
81 +~== Frequently Asked Questions ==
90 90  
91 -**Why is my recipient count lower than my report results?**\\
83 +~*~*Why is my recipient count lower than my report results?~*~*~\~\
92 92  The count shown before send is after TCPA and reminders filtering. Members without opt-in or with reminders set to Nothing (or to a channel that doesn't match what you're sending) are automatically excluded.
93 93  
94 -**Can I save a draft and come back to it later?**\\
86 +~*~*Can I save a draft and come back to it later?~*~*~\~\
95 95  No. The compose dialog resets when you close it. Compose and send in one session.
96 96  
97 -**Where do bulk sends show up afterwards?**\\
89 +~*~*Where do bulk sends show up afterwards?~*~*~\~\
98 98  Each send is logged to the system's message log with the recipient count, channel (email or SMS), and source = contract_report. They are not currently distinguished from member-tab messages in the standard message reports — that's a planned enhancement.
99 99  
100 -**Can a member be messaged twice if they have multiple contracts?**\\
92 +~*~*Can a member be messaged twice if they have multiple contracts?~*~*~\~\
101 101  No. The system deduplicates by member ID before sending. If a member has 3 matching contracts, they receive 1 message.
102 102  
103 -**What happens if a member's phone number or email is invalid?**\\
95 +~*~*What happens if a member's phone number or email is invalid?~*~*~\~\
104 104  Bad addresses fail per-recipient — the rest of the send continues normally. The send count returned reflects only successful dispatches.
105 105  
106 -**Can I use this on other reports?**\\
98 +~*~*Can I use this on other reports?~*~*~\~\
107 107  Not yet. The Contract Report is the first report wired up to bulk messaging. The backend supports any report; additional reports can be added as a future enhancement.
108 108  
109 -**Why don't I see the buttons?**
101 +~*~*Why don't I see the buttons?~*~*
110 110  
111 -* You may be on the Summary view — switch to Detail.
112 -* You may not have permission for messaging on this report — check with your account administrator.
113 -* You may have switched views without re-running the query — re-run it on Detail.
103 +~* You may be on the Summary view — switch to Detail.
104 +~* You may not have permission for messaging on this report — check with your account administrator.
105 +~* You may have switched views without re-running the query — re-run it on Detail.
114 114  
115 -----
107 +~-~-~-~-
116 116  
117 -== What This Feature Does NOT Do (Yet) ==
109 +~== What This Feature Does NOT Do (Yet) ==
118 118  
119 119  These items were in the original feature plan but are not in this release:
120 120  
121 -* **Pre-send breakdown by contract status** — you don't currently see a breakdown by Active, Frozen, Cancelled, etc. before confirming.
122 -* **Multi-contract transparency** — no expandable list showing which members have multiple contracts.
123 -* **Reporting differentiation** — message reports don't currently separate contract-based sends from member-based sends.
113 +~* ~*~*Pre-send breakdown by contract status~*~* — you don't currently see a breakdown by Active, Frozen, Cancelled, etc. before confirming.
114 +~* ~*~*Multi-contract transparency~*~* — no expandable list showing which members have multiple contracts.
115 +~* ~*~*Reporting differentiation~*~* — message reports don't currently separate contract-based sends from member-based sends.
124 124  
125 125  If any of these are important to your workflow, please let your CSM know.
126 126  
127 -----
119 +~-~-~-~-
128 128  
129 -== Need Help? ==
121 +~== Need Help? ==
130 130  
131 -If you run into trouble, contact MSI Support and reference **Member Manager Sprint 33 / Bulk Messaging from Contract Report**.
123 +If you run into trouble, contact MSI Support and reference ~*~*Member Manager Sprint 33 / Bulk Messaging from Contract Report~*~*.