The waybill you forgot to create is the return you’ll pay for — automate Bosta on every Shopify order
How a Wassel workflow auto-creates a Bosta waybill the moment a Shopify order is paid, pushes tracking back to the order, and notifies the customer — before your ops team has had their first coffee.
The missed waybill problem
Picture the end of a busy Friday. Forty-three orders came in — the usual Friday spike. Your ops coordinator created waybills for thirty-nine of them before she went home. Four were missed. Two of those four are COD orders. Bosta never picks them up. Customers call Saturday morning. You apologise. You reshoot the waybill manually. Bosta tries again Monday. By that point, the customer cancelled. You eat the failed-delivery fee anyway.
This is not an unusual story. In Egypt, where COD still accounts for more than 60% of B2C orders on most stores, a missed waybill is never just a delay — it's a failed shipment, a returned product, and a customer who tells three people your store is unreliable.
The fix is not hiring a second ops coordinator. The fix is removing the human step entirely.
What the workflow actually does
The Wassel blueprint runs on a single trigger:
On shopify.order.paid or shopify.order.fulfilled: create the Bosta waybill with the delivery address, phone, and COD amount. Write the waybill number and tracking URL back to the Shopify order. Send the customer a WhatsApp message with their tracking link.
Four things happen in sequence, all under two minutes:
- Shopify fires the trigger the moment payment clears — or the moment a staff member marks the order as fulfilled, if you're on a manual fulfilment model.
- Bosta receives the waybill creation request with the parsed address, customer phone, and COD amount already populated. No copy-pasting from Shopify into the Bosta dashboard.
- Shopify gets the waybill number and Bosta tracking URL written back to the order's notes and fulfilment record, so your team can look up any order in one place.
- WhatsApp Cloud sends the customer their tracking link immediately — before they've thought to send you a "where is my order?" message.
The address parsing step matters. Egyptian addresses are famously freeform — "Building 7, beside the pharmacy, Maadi" is a real address in your Shopify orders. The agent normalises what it can and flags the ones it can't, so your ops team reviews the exception list rather than the entire batch.
Why it matters
- Zero missed waybills, regardless of order volume. The agent doesn't get tired at order 40 or skip the COD flag because it's Friday.
- COD amount accuracy. The waybill pulls the order total directly from Shopify. No manual typing means no waybill created for 350 EGP when the order was 530 EGP — a common source of failed COD collection.
- Tracking visibility before the customer asks. The WhatsApp message goes out within minutes. Support tickets that start with "where is my order?" drop sharply; we've seen 40 to 70% reductions in stores that moved to proactive tracking messages.
- Failed-delivery loop handling. When Bosta marks a shipment as "failed attempt", the agent flags it in Shopify and triggers a follow-up WhatsApp message asking the customer to confirm their address or reschedule. You stop finding out about failed deliveries from angry customers — you find out from your agent's exception queue.
Copy this into your own agent
The blueprint is on the Wassel template library. It works with any Shopify plan that supports webhooks — which is every paid plan. On the Bosta side, you'll need your API key from the Bosta business dashboard; the setup takes about five minutes.
If you're on a manual fulfilment model where ops triggers fulfilment, point the workflow at the fulfilment webhook instead of the payment webhook. The waybill creation logic is identical either way.
One thing we'd ask you to check before going live: make sure your Shopify orders always capture the customer's phone number. Some themes make phone optional at checkout. For COD orders especially, Bosta needs a valid Egyptian mobile number — without it, the waybill creation fails and the exception lands back in your queue. A simple checkout customisation to make phone required on COD orders is worth doing once and forgetting forever.