Shopify + ERPNext

Order management built for cash-on-delivery markets.

One desk from storefront to courier receipt — dispatch through any carrier, pack by barcode, handle returns, and reconcile what the courier actually paid you, down to the rupee.

Self-hosted on your own infrastructure. Your order data stays yours.

Why another OMS

COD breaks the tools everyone else sells you.

When the money arrives weeks after the parcel — from a third party, minus deductions — order software written for card payments stops describing reality.

Generic tools ignore COD

Order platforms built for card-paid markets assume the money arrived with the order. In a COD market the money arrives weeks later, from the courier, minus deductions — and nothing in the tool models that.

Free courier tools lock you in

The dashboard your courier gives away only dispatches through that courier. The moment you want a second carrier for reach or rates, your orders live in two systems that do not agree.

Nobody checks the payout

A courier remits a lump sum against hundreds of parcels, net of shipping and tax. Without line-by-line matching you are trusting a spreadsheet — and shortfalls simply never surface.

Capabilities

Everything the order desk needs, in one place.

Built and proven running a live Pakistani e-commerce operation — not assembled from a template.

Dual-channel Shopify sync

Webhooks land orders the moment they are placed, and a five-minute poll runs behind them as a failsafe. Miss a webhook and nothing is lost.

Orders sorted on arrival

Every order is classified the second it lands — incomplete address, payment pending, repeat customer with an open order — so your desk works a queue instead of a list.

The whole fulfilment lifecycle

Pick, pack, dispatch, deliver, return. One system from the storefront to the courier receipt, with every state change logged against the order.

Scan-verified packing

Scan the order barcode to pack, or scan every item to verify contents before the parcel closes. Wrong-item shipments stop at the bench, not at the customer.

Multi-location shipments

An order spanning two warehouses splits into separate shipments, each with its own tracking, and only rolls up to packed once every part is packed.

Any courier, one desk

Generate consignment numbers, cancel them, check serviceable cities and print barcoded labels across Tranzo, MNP and Leopard — without leaving the order.

COD reconciled to the rupee

Upload the courier statement and it matches cash collected and shipping charged back to each order, auto-verifies what agrees, and flags what does not.

Role-based access

Nine roles from picker to accounts, with per-user page and field overrides. Your packer sees the packing bench, not your margins.

Customer confirmation page

Send a link over WhatsApp; the customer confirms the order and address themselves, then the same link becomes live tracking. Fewer failed COD deliveries.

See how each part works

How it works

One order, tracked end to end.

Every order moves through the same path, and every step is gated — you cannot pack what was never picked, or generate a consignment for an order nobody confirmed.

  1. 01 Order lands Webhook or sync
  2. 02 Auto-classified Address, payment, history
  3. 03 Confirmed By desk or by customer
  4. 04 Picked Picking centre
  5. 05 Packed Barcode or item scan
  6. 06 CN generated Courier consignment
  7. 07 Dispatched Collected and shipped
  8. 08 Delivered Tracking confirms
If the parcel comes back
  1. Returned
  2. Received back
  3. Restocked & credited
The part nobody else does

Know exactly what the courier owes you.

A courier remits one lump sum against hundreds of parcels, net of shipping and tax. Most merchants accept the figure because checking it by hand is impossible. This system checks it for you.

With ERPNext connected, reconciliation is not a report you read — it is accounting that posts itself.

  1. 01

    Upload the statement

    Drop in the courier’s settlement file. Every line is read, including the sales tax and withholding tax columns most systems throw away.

  2. 02

    Matched back to orders

    Cash collected and shipping charged are matched line by line against the orders they belong to. Anything that agrees is verified automatically.

  3. 03

    Posted to your accounts

    With ERPNext connected, the settlement posts itself: courier cash in one payment entry, each prepaid method cleared from its own account, returns reversed against their credit notes.

  4. 04

    Variances flagged, never buried

    A row that does not reconcile is marked as a variance and left for a human. The system will not quietly clear a shortfall to make the numbers look tidy.

  • 150k+ Order backfill Bulk import built for six-figure catalogues of order history
  • 5 min Sync failsafe Polling behind the webhooks so nothing is silently missed
  • 15 min Tracking refresh Courier scan events pulled in automatically, all day
  • 9 Operational roles From picker to accounts, with per-user overrides
Questions

Before you ask

Do we need ERPNext to use this?

No. The ERPNext integration is optional and switched off by default — the order desk, warehouse, dispatch and courier reconciliation all work without it. Turn it on when you want invoices, credit notes and courier settlements posted into your accounts automatically.

Can it run on our own server?

Yes — that is the normal deployment. The system installs on your infrastructure, so your order and customer data stays under your control. We handle the setup and hand over a running system.

Which couriers are supported?

Tranzo, MNP and Leopard ship today, covering consignment generation, cancellation, serviceable-city lookup, tracking updates and barcoded labels.

Can you add the courier we use?

Yes. The courier layer is built as swappable adapters, so adding a carrier means writing one adapter against their API rather than changing the system. Tell us who you ship with and we will scope it.

How long does deployment take?

Typically two to four weeks, depending on how many couriers you use and whether you want the ERPNext accounting integration. That covers installation, connecting Shopify, importing your history, configuring couriers and training your team.

What happens to our existing Shopify orders?

They come across. A bulk import pulls your full order history through Shopify’s bulk API — it runs in the background, survives interruption and resumes from where it stopped, so even very large stores import cleanly.

Get started

Tell us about your operation.

How many orders a month, which couriers, and whether you run ERPNext. We will come back with a straight answer on fit and timeline.

We reply within one working day. Your details are used only to answer this enquiry — see our privacy notice.