LoopMessage SMS Gateway
Purpose
LoopMessage SMS Gateway activates the LoopMessage SMS configuration supplied by SMS Gateway & API Routing. It updates that existing gateway record and uses the base module's request, routing and status code. It adds no standalone menu, sending wizard, callback controller or access role.
This guide describes the Odoo 19 source configuration. Adapter data was compared with 17, 18 and 20; no SMS, callback, provider-account change or runtime test was performed.
Before you start
Install eis_sms_apis and corvus_loopmessage_gateway for the same Odoo major version. The dependency uses Odoo SMS and declares no Enterprise-only requirement. Your hosting must permit custom addons. Provider account credentials and an authorised sender are separate prerequisites.
The wrapper sets its existing gateway to Active, leaves it unarchived, and sets Priority 360, even though credentials and sender values are placeholders. Installation is not proof that the provider connection is usable. Review the route in a controlled database before allowing live SMS traffic.
Access and setup
A Settings administrator opens SMS Gateways under the phone/SMS configuration menu and selects LoopMessage SMS. The base gateway and status models grant access to Settings administrators; this adapter adds no permissions for ordinary senders.
The supplied configuration is:
| Setting | Source configuration |
|---|---|
| Request | POST JSON to https://a.loopmessage.com/api/v1/message/send/ |
| Authentication | Token rendered directly as the Authorization header |
| Header | Content-Type: application/json |
| Body | contact, text, a literal sender, and channel set to sms |
| Recipients | One recipient per request |
| Response rules | HTTP 200 or text containing "message_id"; capture message_id |
Set Token to the provider-issued API value and replace [Your LoopMessage Sender ID] in the body. The template sends the token directly, without adding a Bearer prefix. It also deletes the base template's separate secret header and clears Username. If your provider account requires a second secret or another scheme, review the configured headers against that account rather than assuming the wrapper supplies it.
Workflow
- Open the existing gateway and inspect API Settings, Authentication, and JSON Body or Parameters. If preparing an unfinished route, use Toggle State from Active to Disabled and ensure Settings does not still select it as the default gateway.
- Replace the relevant placeholders with approved configuration values. Review Request Preview as a visual template; it does not validate credentials, resolve every placeholder or contact the provider.
- Review Country Prefix, Priority, and the default SMS Gateway in Settings. The base engine selects the first matching active prefix route by priority, then the configured default, then the first active gateway. A configured default is selected without checking its state or archive flag: disabling or archiving it does not reliably remove it from routing. Remove it from the default selection while preparing it. This wrapper does not specify a country-prefix rule. Use IAP bypasses custom routing; Fallback to IAP? applies when no gateway was selected, not after a failed provider send.
- Activate only after the configuration and route have been approved for use. Any connectivity test must be a separately authorised SMS send using the provider's permitted test arrangement. Saving or previewing a configuration is not a delivery test.
- After an authorised send, inspect Total SMS, Sent SMS, Failed SMS and the Status tab. The engine accepts configured HTTP success or a matching success substring, unless an explicit Error Key matches. Review provider errors separately before equating a recorded success with delivery.
Practice scenario
In an authorised training database, inspect LoopMessage SMS, identify its credential and sender placeholders, and compare its Priority 360 with another fictional route. Keep the training configuration disabled and unselected as default. Inspect the body/parameter structure without sending. This source-derived exercise has not been executed.
Troubleshooting and limitations
This wrapper explicitly selects the SMS channel; it does not configure iMessage or an inbound inbox. Installation/upgrade updates the existing gateway and removes its named secret-header record. Preserve an approved configuration record before upgrades and review the resulting header set. No delivery-callback mapping is supplied.
Delivery callbacks, when required, are configured in the base module's Delivery Callbacks tab. This adapter does not enable them or supply provider-specific payload mappings. The base endpoint uses its secret callback token and requires correlation with an existing SMS tracker. HTTP acceptance and a callback returning OK do not independently prove delivery.
Versions and useful links
Catalogue-qualified adapter versions are Odoo 17, 18, 19 and 20. Their provider XML and imports are identical in the reviewed comparison. The operational walkthrough is based on 19.0; the base engine's framework-specific differences still apply, so use matching packages. The adapter's XML is update data and can reapply supplied values when upgraded; review credentials, sender, state and routing after a module update.
Read SMS Gateway & API Routing for routing, permissions and callback setup. Use the Corvus apps catalogue to purchase the exact version. The live catalogue was checked; no provider-backed demo or message delivery was launched.
Open the Odoo 19 demo selector for this catalogue-qualified adapter. Catalogue qualification does not establish a working provider connection. No demo or SMS send was launched.