We’ve had some good discussion lately around mobile carrier data in Polaris on Discord now that many libraries are using MessageBee (or similar) instead of Polaris’s old email-to-SMS functionality, which has been broken for several years. Sharing a summary here on the forum in case it helps others.
Do we still need accurate specific mobile carrier options?
Short answer: no, but you probably need at least ONE generic one.
Several libraries noted that:
-
Carrier data becomes outdated quickly (roughly 12–15% of U.S. residents change carriers each year). So there is likely very little value in trying to maintain it if your current SMS system doesn’t need it.
-
Polaris’s built-in email-to-SMS feature hasn’t been used in years at many sites.
-
MessageBee and most other current providers don’t rely on knowing the patron’s actual carrier.
Common approach: one generic carrier
A pattern that’s working well:
-
Keep one generic carrier or rename the Get Patron Mobile Carrier Info one (e.g., “Any Mobile Carrier”, “Yes” or similar).
-
Bulk-update all patrons who receive text messages to that carrier.
-
Remove or suppress all other carrier options.
The “undefined / negative ID” carrier hack
One library shared another workaround:
-
Polaris has an “Undefined Carrier” with a weird negative CarrierID.
-
That carrier must exist, or Polaris behaves badly.
-
Instead of fighting it, they repurposed it:
-
Set its gateway to the MessageBee domain (e.g., @librarymsg.messagebee.com).
-
Changed the carrier display text to something user-friendly like “Yes”.
-
Updated PAC/LEAP wording to: “Would you like to receive text messages from the library?” and then present the “Yes” option in the drop down.
-
Result:
-
Patrons who select Yes get texts.
-
Patrons who leave it unchanged get nothing.
-
All patrons using SMS were bulk-updated via SQL to that single carrier.
-
All other carriers were removed from the dropdown.
Important gotchas
-
Double check with your new provider just to make sure they don’t need carrier specific entries before making any changes.
-
Do not delete the undefined/negative-ID carrier. Things break.
-
If a carrier option is suppressed, Polaris may reassign patrons to Carrier: None.
-
Carrier = None will likely NOT export SMS data to MessageBee (confirmed by multiple libraries).
-
Innovative/MessageBee implementations sometimes incorrectly state that “None” is fine — it isn’t.
-
Patrons must be tied to some carrier record, even a fake/generic one.
-
Bulk updates
-
Polaris Client/LEAP does not support bulk carrier changes.
-
Options libraries have used:
-
SQL (if you have access).
-
Ticket to have Innovative apply the bulk change.
-
Upgrade vigilance (older issue, but worth noting)
If you make this change and then upgrade from an older version of Polaris:
-
Watch carrier lists during Polaris upgrades.
-
Occasionally new carriers would appear and be auto-enabled.
This seems less common now, but still worth a quick check post-upgrade.
If others have found different approaches (especially cleaner ones), it’d be great to hear how you’re handling carriers with MessageBee or Innovative SMS.