Skip to Content
WooCommerce Plugin

WooCommerce Plugin

The IDeliver for WooCommerce plugin connects your WordPress / WooCommerce store to IDeliver. When a customer places an order and it reaches your chosen status (e.g. Processing), the plugin automatically forwards the order to IDeliver and a rider is dispatched — no code, no manual copy-paste.


Download

Current version: 1.0.0  |  Requires: WordPress 6.0+, WooCommerce 7.0+, PHP 8.1+

⬇ Download ideliver-for-woocommerce.zip

This is a standard WordPress .zip file. Install it directly from your WordPress admin panel — no FTP required.


Requirements

RequirementMinimum
WordPress6.0
WooCommerce7.0
PHP8.1
IDeliver accountActive merchant account at merchant.ideliver.ng 

Installation

Step 1 — Upload the plugin

  1. In your WordPress admin, go to Plugins → Add New Plugin
  2. Click Upload Plugin at the top of the page
  3. Click Choose File, select the ideliver-for-woocommerce.zip file you downloaded
  4. Click Install Now, then Activate Plugin

Step 2 — Open the settings

Go to WooCommerce → Settings → Integrations → IDeliver Delivery

You will see four sections: IDeliver Account, Dispatch Settings, WooCommerce Webhook, and Debug.


Configuration

IDeliver Account

FieldWhere to find itRequired
Merchant IDIDeliver Dashboard → Settings → Account✅ Yes
API KeyIDeliver Dashboard → Settings → API KeysOptional (needed for status refresh)
Webhook SecretIDeliver Dashboard → Settings → Integrations → WooCommerce✅ Yes
API Base URLLeave as https://api.ideliver.ng unless self-hosting

After filling in your Merchant ID and API Key, click Test Connection to verify the credentials are working.

Dispatch Settings

SettingDescription
Auto DispatchToggle automatic dispatch on/off
Trigger on StatusChoose which WooCommerce order status(es) trigger dispatch. Default: Processing. Hold Ctrl/Cmd to pick multiple.
Skip Virtual / DownloadableOrders containing only virtual or downloadable products are skipped (no physical delivery needed)
Add Order NoteAdds a private note to the WooCommerce order when dispatched or when dispatch fails

The plugin can register WooCommerce webhooks automatically, so IDeliver is notified in real time as orders change:

  1. Fill in your Merchant ID and Webhook Secret first
  2. Click Register WooCommerce Webhooks
  3. The plugin creates two active webhooks in WooCommerce → Settings → Advanced → Webhooks:
    • IDeliver — order.created
    • IDeliver — order.updated

You can also copy the Webhook URL shown in the settings and add it manually in WooCommerce.

The auto-register step is idempotent — clicking it more than once is safe. It skips topics already pointing to your IDeliver URL.


How auto-dispatch works

Customer places order WooCommerce order reaches trigger status (e.g. "Processing") Plugin signs the order payload with HMAC-SHA256 Signed POST → https://api.ideliver.ng/webhooks/woocommerce/{your-merchant-id} IDeliver creates a delivery + dispatches a rider Order meta updated: dispatch ID, status, tracking URL

The plugin prevents double-dispatch: if an order has already been sent to IDeliver, it will not be dispatched again when the status changes again (e.g. from Processing → Completed).


Order metabox

Every WooCommerce order edit page shows an IDeliver Dispatch panel in the right sidebar:

FieldDescription
Status badgeCurrent dispatch status (Not dispatched / Submitted / Assigned / Delivered / Failed …)
Dispatch IDThe IDeliver internal order ID
Dispatched atWhen the order was first sent to IDeliver
RiderRider name once assigned
Track OrderLink to live tracking page for the customer
Dispatch NowManually trigger dispatch (shown when not yet dispatched)
Retry DispatchShown when previous dispatch failed
Refresh StatusPulls latest status from IDeliver API (requires API Key)

Orders list column

A compact IDeliver column appears in WooCommerce → Orders, showing a coloured status icon at a glance:

IconMeaning
Not dispatched
🔵Submitted / Accepted
🟡Pending
🟢Assigned / Picked up / Delivered
Delivered
🔴Failed
Cancelled

Dispatch status reference

StatusMeaning
not_dispatchedOrder has not been sent to IDeliver yet
submittedOrder received by IDeliver, awaiting processing
pendingIDeliver is finding an available rider
acceptedA rider accepted the job
assignedRider assigned and heading to pickup
picked_upRider collected the order
in_transitOrder is on the way to the customer
deliveredOrder delivered successfully
failedDispatch failed (see order notes for reason)
cancelledOrder was cancelled before delivery

Manual dispatch

If auto-dispatch is off, or if an order was placed before the plugin was configured:

  1. Open the order in WooCommerce → Orders → [Order number]
  2. In the IDeliver Dispatch sidebar panel, click Dispatch Now
  3. The order is sent to IDeliver immediately

If a previous dispatch attempt failed, click Retry Dispatch to try again.


Wallet & billing

Dispatching an order deducts the delivery fee from your IDeliver wallet. Make sure your wallet has sufficient balance at merchant.ideliver.ng/wallet  before orders are dispatched.

If your balance is too low, the dispatch will fail and a note will be added to the order. Top up and click Retry Dispatch.


Troubleshooting

ProblemSolution
”IDeliver is not fully configured” noticeEnter Merchant ID and Webhook Secret in WooCommerce → Settings → Integrations → IDeliver
Orders not dispatching automaticallyCheck that Auto Dispatch is enabled and the order status matches your Trigger on Status setting
Test Connection failsVerify your API Key is correct and your server can reach api.ideliver.ng (outbound HTTPS port 443)
Dispatch fails with “Insufficient balance”Top up your IDeliver wallet at merchant.ideliver.ng/wallet 
”Order contains only virtual products”Expected behaviour — virtual orders are skipped. Disable Skip Virtual in settings if you want to dispatch them
Refresh Status shows “API Key required”Add your API Key in settings. Only dispatch (not status refresh) works without an API Key
Duplicate webhooks in WooCommerceThe plugin checks for duplicates before registering — safe to click Register again
Want debug logsEnable Debug Logging in the plugin settings. Logs appear in WooCommerce → Status → Logs → ideliver-woo

Uninstalling

Deactivate and delete the plugin from Plugins → Installed Plugins. Order meta data (_ideliver_*) stored on existing orders is not deleted — your order history is preserved.


  • Webhooks & Events — Receive IDeliver order status updates in your own system
  • Orders & Deliveries — Full order lifecycle documentation
  • Quick Start — Set up your IDeliver account from scratch
  • SDKs — Programmatic integration via REST API or generated clients