When a store sends us a delivery task, it doesn’t sit in a queue waiting for someone to notice it. Your order enters an automated workflow that validates the data, checks serviceability, rates the delivery, creates a waybill (or holds it with a clear reason), and keeps everyone informed at every step.
Understanding this process helps you know exactly what’s happening with your deliveries — and what your customers are experiencing. This is the modern, integrated pipeline that replaced the old middleware-and-manual-checking approach.
How Your Order Reaches Us
There are two supported ways to get a delivery task to The Frozen Food Courier™ — both powered by the Cibarix™ integration layer:
- Automatically, via our WooCommerce plugins. The CBX Woo Connector watches your store and dispatches each qualifying order to us the moment it’s ready — no copy-paste, no CSV, no manual re-keying. Paired with CBX Woo Shipping it also gives your checkout accurate cold-chain rates.
- Programmatically, via the hosted Carrier API. Any platform (Wix, a custom store, an ERP, another courier) can
POSTashipment_requesttocarrier/v1/shipmentand receive our decision back over the same connection. This is the integration path for anything that isn’t a WooCommerce store running our plugin.
Either way, the order lands on the same engine and travels the same status journey below.
What Happens the Moment We Receive an Order
Before anything is promised to your customer, every incoming task runs through three gates — automatically, in seconds:
- Validate. Is the address complete (street, suburb/complex, city, province, postal code)? Is there a mobile number for SMS/WhatsApp and an email for detailed notifications? Is the order reference present and the merchant recognised? If the shipping address is missing, we fall back to the billing address.
- Service-check. We confirm the delivery point falls inside our cold-chain service footprint and can be resolved to a real location on the map. Addresses that can’t be geocoded, or that fall outside our areas, are flagged here rather than discovered later.
- Rate. We price the delivery against our live rate card so the cost is known up front — the same engine that powers the checkout rates from CBX Woo Shipping.
The important part: when a task is accepted, we create a waybill — the single work order that threads every hop of the delivery. When a task can’t be accepted cleanly, it is held with a reason (or rejected with a reason) — never silently dropped. You always know why, and what to do about it.
The Complete Order Status Journey
Every delivery task progresses through a series of statuses from the moment we receive it until final delivery. Here’s the complete journey.
ACCEPTED — Order Received, Validated, Rated
What’s happening:
- We’ve received your delivery task (via the plugin or the Carrier API)
- Validation, service-check and rating passed
- A waybill has been created in our system
- The delivery is added to the queue
What happens next: your customer receives their first notification — the pre-delivery introduction email.
Who gets notified:
- ✅ Customer: pre-delivery notification email
- ✅ You (merchant): task-accepted confirmation — in your WooCommerce order if you’re on the connector, or over the API for programmatic integrations
Pre-Delivery Notification: First Customer Contact
This is your customer’s introduction to us. They receive an email that:
Confirms we’re handling their delivery:
- “We’ve received a delivery instruction from [Your Business Name]”
- Shows their delivery address
- Provides our contact details
Helps us deliver efficiently:
- Reminds them to capture our number (for gate access, etc.)
- Asks them to notify us if they’ll be unavailable
- Requests access information for security estates/complexes
Hello [Customer Name], We're The Frozen Food Courier™, and we've received your delivery from [Your Business Name]. We'll be delivering to: [Their Address] To ensure smooth delivery: • Save our contact number: [Our Number] • Let us know if you'll be unavailable on delivery day • For security estates: Please inform us of access codes/procedures We'll notify you when your delivery is scheduled with a specific time window. Best regards, The Frozen Food Courier™ Team
Why this matters: this early communication reduces delivery failures, helps us access secure areas, and sets professional expectations from the start.
ONHOLD — Held With a Reason
What’s happening:
- The task has been held because something needs resolving before we can promise a delivery — most often address verification
- We’re validating or geocoding the delivery location
- The hold always carries a reason, so you know exactly what to fix — usually resolved within a few hours
Why orders go on hold:
- Address cannot be geocoded automatically
- Missing critical information (estate name, complex details, stand number)
- Unusual or new address format
- what3words address needs verification
Common address challenges in South Africa:
- Stand/AH numbers that don’t appear on maps
- Security estates with multiple access points
- Township addresses with limited formal addressing
- New developments not yet in mapping databases
What we do:
- Attempt to geocode using all available data
- Cross-reference with other mapping systems
- May contact you or the customer for clarification
- Verify access information for estates/complexes
Who gets notified:
- ✅ You (merchant): on-hold notification with the reason
- ❌ Customer: no notification (to avoid confusion while we resolve)
How to prevent on-hold status: encourage customers to provide what3words addresses — this eliminates the large majority of address validation issues. See our Help Us Find You guide for details.
PLANNED — Added to Delivery Calendar
What’s happening:
- Address validation complete
- Task added to our delivery planning system
- Route optimization beginning
- Being slotted into the delivery calendar
Our planning process: we plan deliveries daily across Gauteng and Cape Town to maximise efficiency:
- Group deliveries by geographic zone
- Optimize routes to minimise distance and time
- Account for frozen goods cold-chain requirements
- Balance delivery windows with route efficiency
- Assign to an appropriate refrigerated vehicle
Why efficient planning matters:
- Earlier deliveries for customers (less waiting time)
- Better frozen goods protection (fewer door openings per route)
- Lower costs (fuel efficiency passed to customers)
- Environmental benefits (optimized routes = less emissions)
Who gets notified:
- ✅ You (merchant): planned confirmation
- ❌ Customer: not yet (waiting for final schedule confirmation)
SCHEDULED — Route Locked, Time Window Confirmed
What’s happening:
- Delivery route finalized and locked
- Time window assigned
- Driver allocated
- Customer notification sent
What customers receive: the scheduled delivery notification includes:
- Confirmed delivery date
- Specific time window (e.g. “2:00 PM – 4:00 PM”)
- Driver name and contact
- Reminder about access requirements
- What to do if they’ll be unavailable
Hello [Customer Name], Your delivery from [Your Business Name] is scheduled for: 📅 Date: Tuesday, 15 October 2025 ⏰ Time Window: 2:00 PM - 4:00 PM 🚚 Driver: [Driver Name] We'll send you an update when the driver departs and again when they're on the way to you. If you'll be unavailable during this window, please contact us immediately to reschedule. Track your delivery: [Tracking Link]
For merchant collections: if we’re collecting from you during the day, you also receive a scheduled collection notification with your time window.
Who gets notified:
- ✅ Customer: scheduled delivery notification (email + SMS/WhatsApp)
- ✅ You (merchant): scheduled confirmation
DISPATCHED — Driver Departed
What’s happening:
- Driver has departed the depot/collection point
- Refrigerated truck loaded and en route
- Beginning the delivery route
What customers receive: the morning-of-delivery notification confirms the driver has departed, reminds them of the time window, provides driver contact details, and includes a live tracking link.
Good morning [Customer Name], Your delivery is on the way! Our driver has departed and will arrive during your scheduled window: 2:00 PM - 4:00 PM Driver: [Driver Name] | Contact: [Number] Track live: [Tracking Link]
Who gets notified:
- ✅ Customer: dispatched notification (email + SMS/WhatsApp)
- ✅ You (merchant): dispatched confirmation
ENROUTE — Heading to the Customer
What’s happening:
- Driver has selected this delivery as the next stop
- Actively navigating to the delivery location
- Customer receives the “almost there” notification
What customers receive: the en route notification tells them the driver is now heading to their address, gives an updated ETA, and provides a live tracking link showing the truck position in real time.
[Customer Name], we're on our way to you! Your delivery will arrive in approximately 15 minutes. Live tracking: [Link] Please ensure someone is available to receive the delivery.
The power of real-time tracking: customers can watch the truck approach on a live map — exact truck location, an updated ETA countdown, the route being followed, and accurate arrival time (within 1–2 minutes). This transparency dramatically reduces anxiety and “where’s my delivery?” calls.
Who gets notified:
- ✅ Customer: en route notification (email + SMS/WhatsApp)
- ✅ You (merchant): en route update
COMPLETED — Successfully Delivered
What’s happening:
- Delivery successfully handed over to the customer
- Driver confirms completion in the system
- Task marked complete and documentation archived
What customers receive: a delivery confirmation with completion timestamp, confirmation of items delivered, a thank-you message and a feedback request.
Delivery Complete! ✓ Your order from [Your Business Name] was delivered at 2:35 PM. Thank you for choosing The Frozen Food Courier™. How was your delivery experience? [Feedback Link]
What you receive: an order-completion confirmation and delivery timestamp. If you’re on the CBX Woo Connector, your WooCommerce order is automatically marked delivered; if you integrate via the Carrier API, the same “completed” status is pushed to you over a signed webhook.
Who gets notified:
- ✅ Customer: delivery-completion confirmation
- ✅ You (merchant): completion notification, with automatic order-status update if you’re connected via the plugin or the API
FAILED — Delivery Unsuccessful
What’s happening:
- Delivery attempted but unsuccessful
- Reason documented (customer not available, access issues, wrong address, etc.)
- Goods returned or held for re-attempt
Common failure reasons: customer not home, no access to a security estate (gate code not provided), address incorrect or inaccessible, customer requests reschedule, or weather/safety concerns.
What customers receive: a failed-delivery notification explaining the reason, next steps, how to update delivery details, and contact information for assistance.
Delivery Update - Action Required We attempted delivery at 2:40 PM but were unable to complete it. Reason: No one available to receive delivery Your options: 1. Reschedule for tomorrow: [Link] 2. Update delivery address: [Link] 3. Arrange collection: [Link] Contact us: [Number] | [Email]
What you receive: a failed-delivery notification with the documented reason, options for resolution, and a summary of the customer contact attempt.
REJECTED — Task Cannot Be Processed
What’s happening: the task was rejected during validation or service-checking and can’t be processed as submitted. As with a hold, the rejection always carries a specific reason — and it’s returned immediately, at the point of submission, so a bad order never disappears into a black box.
Common rejection reasons: out of service area, missing critical required information, invalid merchant code, duplicate order ID, or an address that cannot be validated at all.
What you receive: a rejection notification with the specific reason, the required corrections, and how to resubmit. If you’re on the Carrier API, this comes straight back in the response to your shipment_request.
Task Rejected - Action Required Order #12345 could not be processed. Reason: Delivery address is outside our service area (Location: Rustenburg - Not currently serviced) Options: • Contact us about extending service to this area • Arrange alternative delivery method Our service areas: Gauteng & Cape Town
Who gets notified:
- ✅ You (merchant): immediate rejection notification with reason
- ✅ Customer: notified if we have their contact details, explaining the issue
CANCELLED — Task Cancelled
What’s happening: the task was cancelled by you (the merchant). Cancellation is only possible during the PLANNED or SCHEDULED stages, and all parties are notified.
- ✅ During PLANNED (before the route is locked)
- ✅ During SCHEDULED (route locked but not yet dispatched)
- ❌ After DISPATCHED (cannot cancel once the driver is en route)
Why the restriction exists: once dispatched, the driver has already started the route, fuel is consumed, and other deliveries are planned around yours. Cancellation at this stage disrupts the entire route. When you cancel in time, the task is removed from the queue, the route is re-optimized if necessary, and notifications go to all parties.
Notification Methods: How We Communicate
We use multiple channels to ensure everyone stays informed.
Who receives: customers and merchants. When: all status changes. Content: detailed information, tracking links, contact details. Advantage: complete information in one place, a permanent record.
SMS
Who receives: customers only. When: critical updates (SCHEDULED, DISPATCHED, ENROUTE, COMPLETED, FAILED). Content: brief summary with tracking link. Advantage: immediate, works on all phones, high open rate.
Who receives: customers only. When: same as SMS. Content: rich formatted messages with tracking links. Advantage: more detailed than SMS, supports images and formatting, very popular in SA.
Delivery-Status Feedback to Your Store
Who receives: your e-commerce system. When: all status changes. How: if you run the CBX Woo Connector, we write each status straight into the matching WooCommerce order, so it moves in step with the delivery. If you integrate via the Carrier API, the same status updates are delivered as signed webhooks your platform can trust and act on. Advantage: automatic order-status updates, a seamless customer experience, and no middleware to babysit.
Timeline: A Real-World Example
Day 1 — Monday 10:00 AM: customer places an order on your website; your store sends us the delivery task automatically (ACCEPTED); customer receives the pre-delivery notification.
Day 1 — Monday 11:30 AM: address validated successfully; task added to the planning queue (PLANNED).
Day 1 — Monday 4:00 PM: route optimized and finalized; delivery scheduled for a Wednesday 2–4 PM window (SCHEDULED); customer receives the scheduled notification.
Day 3 — Wednesday 8:00 AM: driver departs the depot with the route (DISPATCHED); customer receives the “on the way” notification.
Day 3 — Wednesday 2:15 PM: driver selects the customer’s delivery as the next stop (ENROUTE); customer receives the “almost there” notification with live tracking.
Day 3 — Wednesday 2:35 PM: driver arrives and completes the delivery (COMPLETED); customer receives confirmation; your order is marked complete automatically via the plugin or API.
Total: about 2 days and 4.5 hours from order to delivery — with no manual data entry anywhere in the chain.
Your Key Differentiator: Included Premium Service
Many courier services charge extra for notifications, tracking and customer communication. We include all of it in your delivery fee:
- ✅ Pre-delivery customer introduction
- ✅ Multi-channel notifications (email, SMS, WhatsApp)
- ✅ Real-time tracking with live ETA
- ✅ Professional customer communication
- ✅ Failed-delivery management
- ✅ Rescheduling coordination
- ✅ Complete delivery documentation
- ✅ Automatic status feedback into your store (plugin or signed API webhooks)
Why this matters: this isn’t just about notifications — it’s about giving your customers a premium delivery experience that reflects positively on your brand. When customers receive professional, timely updates and can track their delivery in real time, they attribute that quality to you.
The NPS impact: our average Net Promoter Score is 4.9 out of 5. That score reflects on your business, because we’re delivering on your behalf.
How to Optimize Your Delivery Success Rate
Best practices for merchants:
- Encourage what3words addresses — sharply reduces ONHOLD status and ensures first-time delivery success. See our Help Us Find You guide.
- Provide complete customer contact details — mobile number (for SMS/WhatsApp), email (for detailed notifications), and an alternative number if available.
- Include delivery instructions in order notes — gate codes for estates, building access, delivery preferences, best contact method.
- Set realistic dispatch-ready dates — ensure goods are properly frozen before dispatch.
- Use proper packaging — protects goods during delivery.
What your customers can do: provide a what3words address for direct gate access, include access information (estate gate codes, building procedures, intercom codes) upfront, be available during the delivery window (or arrange someone to receive), and respond to the pre-delivery notification to confirm availability or request a time change.
Connect Your Store
This whole workflow is only as good as the connection feeding it. Pick the integration that fits your store:
- CBX Woo Connector — automatic dispatch and status feedback for WooCommerce stores.
- Carrier API —
POSTashipment_requesttocarrier/v1/shipmentfrom any platform, with signed webhook status updates. - Browse all Cibarix™ plugins — including CBX Woo Shipping for accurate cold-chain rates at checkout.
Questions? 📧 hello@thefrozenfoodcourier.co.za — we’re here to ensure every delivery succeeds.
The Frozen Food Courier™ — professional delivery with complete visibility.
