Savaraflow
Open console
← Solutions

Retail and fulfilment

Keep customers up to date on their orders.

Send a confirmation when an order is placed and a pickup message when it is ready. Use the same order reference to track the request and its delivery status.

The outcome

Fewer “where is my order?” calls, and customers who arrive when their order is actually ready.

The journey

What your customer receives

Order placed → WhatsApp confirmation → SMS when ready for pickup

  1. 01Order placed

    WhatsApp

    Hi Amina, thanks for your order #1842. We’ll message you here when it’s ready.

  2. 02Ready for pickup

    SMS

    Acacia Studio: order #1842 is ready. Collect before 6 pm at Kampala Road. Reply STOP to opt out.

  3. 03Collected

    WhatsApp

    Thanks for collecting order #1842, Amina. Enjoy, and see you again soon.

Implementation

How to set it up

  1. Start from an order event

    Trigger your server-side integration only when the order changes to the stage you want to communicate.

  2. Build a stable request

    Use the order and event ID in an idempotency key. Keep the same key and payload if you retry the same event.

  3. Track the message

    Store SavaraFlow’s message ID against the order. Use Delivery logs or a signed webhook to follow the provider outcome.

Send it from your order system

Call the API when the order status changes. The idempotency key ties each message to one event.

notify-order-ready.tsTypeScript
await fetch(`${process.env.SAVARA_HOST}/api/v1/messages`, {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.SAVARA_API_KEY}`,
    "Content-Type": "application/json",
    // one key per order event, so retries never double-send
    "Idempotency-Key": `order-${order.id}-ready`,
  },
  body: JSON.stringify({
    channel: "SMS",
    to: order.customerPhone,
    body: `Acacia Studio: order #${order.number} is ready. Collect before 6 pm.`,
    consent: true,
  }),
});

Use a recipient who has agreed to receive messages on this channel. API reference

Best practice

Tips from the setup

  1. Send on real events

    Trigger from a status change in your system, not on a timer, so the message is always true.

  2. Keep it short

    Order number, what changed and what to do next. One SMS segment is cheaper and easier to read.

  3. Store the message ID

    Save it against the order so support can see exactly what the customer received.

Channels

Built with

WhatsApp

Connect your Meta business number, send approved templates, and manage customer replies in SavaraFlow’s team inbox.

Explore WhatsApp

SMS

Use SMS for reminders, pickup alerts, and other messages that need to reach a phone number. SavaraFlow quotes the destination and segment count before a live send.

Explore SMS

Automations

Build a flow that starts from a customer’s first message, a message outside business hours, or a request from your own system. Each step is checked for consent and funds like any other send.

Explore Automations

Questions about order updates

Should I use WhatsApp or SMS?

Use WhatsApp for customers who have agreed to it and are likely to reply, and SMS when you need to reach any phone. Fallback can try the next consented channel for saved contacts.

What if my server retries the request?

Use the same Idempotency-Key and payload. SavaraFlow returns the original message instead of sending twice.

More use cases

Other workflows to explore

Run through the steps in the sandbox.

See a simulated response before sending a live message.

Open the sandbox

Choose what SavaraFlow can save on this device. You can change your choice here at any time.