We use optional, privacy-safe analytics to understand which pages help visitors. Nothing optional runs until you choose. Privacy policy

Skip to content
API Integration GuideWorkflow + HTTP Request

Integrate order updates with SMS and supported iMessage

Order-update messaging is an integration problem before it's a copywriting problem: the platform that knows the order state (Shopify, WooCommerce, Magento, a custom backend) has to reach the customer's phone reliably, and know whether it did.

The pattern is uniform across stacks: an order-event webhook or hook fires, your handler builds a short message from the order payload, posts it to the SendiMessage API with the order id embedded in the status_callback URL, and delivery events return to mark the notification confirmed on the order. The platform guides linked below show the exact hook for each system.

Request This SetupBook an Integration Review

What this integration enables

Order confirmed
Fire on payment capture — the first and most-read message.
Order shipped
Fulfillment webhooks carry tracking data for the message body.
Out for delivery / delivered
Carrier milestones from your fulfillment stack become final-mile updates.
Payment issues
Failed captures trigger a message before the order silently stalls.
Reply to support
"Where's my order?" replies route to your helpdesk via the reply webhook.

Architecture

How it fits together: Order event, then Your handler, then SendiMessage API, then Customer, then Webhook events.
  1. Order eventPlatform webhook or hook (paid, fulfilled, delivered)
  2. Your handlerBuilds the message from the order payload
  3. SendiMessage APIPOST /send-message with the order id in the status_callback URL
  4. CustomerSMS, or iMessage on supported lines and destinations
  5. Webhook eventsDelivery confirmations and replies return; match them by the stored message_handle

Example request

cURL
curl -sS https://api.sendimessage.com/v1/send-message \
-H "X-API-Key: $SENDIMESSAGE_API_KEY" \
-H "X-API-Secret: $SENDIMESSAGE_API_SECRET" \
-H "Content-Type: application/json" \
-d '{
"number": "+15555550123",
"content": "Your appointment is tomorrow at 10:00 AM."
}'
# → {
# "status": "QUEUED",
# "message_handle": "4e828182-a640-483f-bfe9-17ffcaa51d48",
# "to": "+14155550123",
# "service": null,
# "is_outbound": true,
# "error_message": null,
# "date_sent": null
# }

Delivery events and incoming replies

Delivery events let you mark the notification on the order timeline; replies become support conversations tied to the order. Match events back using the message_handle you stored at send time (re-query GET /v2/messages/{message_handle} for authoritative state).

webhook event
// "outbound" event → your your_store endpoint
// Verify the SendiMessage-Signature header (t={timestamp},v1=HMAC-SHA256 of
// "{timestamp}.{raw body}", keyed with your webhook secret), then use
// GET /v2/messages/{message_handle} for authoritative state and match it to
// your order_id in your_store.

Limitations and honest notes

  • iMessage delivery is available on supported messaging lines and destinations. Recipients without iMessage receive SMS when fallback is configured — never assume universal iMessage availability.
  • Messages are accepted asynchronously — the API returns status QUEUED and final status arrives via webhook or the message endpoints.
  • No official SDK for this ecosystem yet — the example uses plain HTTP against the REST API. Official SDKs are published for JavaScript/TypeScript (npm: sendimessage), Python (PyPI: sendimessage), PHP (Composer: sendimessage/sdk), and Go (github.com/sendimessage/sendimessage-go). Every SDK is dependency-free and covers the full public API surface.
  • Send messages only to recipients who expect them. Transactional and operational messaging is the primary use case — unsolicited bulk marketing is not.

Frequently asked questions

Which commerce platforms have guides?
Shopify, WooCommerce, and Magento (Adobe Commerce) have dedicated integration guides; any platform with order webhooks follows the same pattern.
Should order updates use iMessage?
Routing is automatic — recipients on supported destinations get iMessage, everyone else gets SMS. The update arrives either way, which is what matters for order communication.

Ready to connect Order Update Messaging?

Request a messaging line and a SendiMessage integration specialist will review your Order Update Messaging workflow and guide the setup.