CODFamilia
Features How it works Pricing Blog FAQ Academy Sign up Sign in

COD order management: from order placed to cash collected

Managing cash-on-delivery orders means following every parcel from arrival to collection. Order states, the order record, profit calculation and reports.

The essentials

What is it?
COD order management is the tracking that runs from receiving an order to receiving the cash the courier collected. It consists of moving every order through a known sequence of states — confirmation, packing, dispatch, delivery or return — and knowing at any moment where each one stands.
Who is it for?
It concerns any seller dispatching cash on delivery in Morocco, as soon as the volume exceeds what one person holds in their head. It also concerns confirmation agents, account managers and hub operators: they all work on the same order at different moments.
How does it work?
Each order carries a state and a history. The state says what remains to be done, the history says who did what and when. Courier statuses land on the order instead of being looked up parcel by parcel, and profit is computed on delivery and posted to the seller's wallet.
What is it for?
Because in COD the money arrives after the spending: product, packaging, advertising and delivery are all paid for before anything is collected. An order lost track of is a straight loss. Clean management does not make you sell more, it stops you losing what you have already sold.
How do you use it?
You need one place where an order exists, a limited set of states, and a profit calculation that is never redone by hand. CODFamilia keeps that single thread for every order, pulls in the courier status and credits the profit on delivery, with delivery to 65 Moroccan cities.

COD order management is the practice of following each cash-on-delivery order from the moment it arrives to the moment the profit is paid out, from a single record holding the customer, the items, the amounts, the fees, the parcel status and the history of its changes.

The states an order passes through

A COD order passes through about ten states, and each exists because a different decision is taken there. Collapsing them is the first cause of disorder: recording only "sent" or "not sent" no longer distinguishes a customer who needs calling back from a parcel waiting for collection.

State What has just happened Why the state exists
Lead Arrived, not yet checked You pay to get a lead, you only earn on a delivery
In confirmation An agent is calling the customer The lead is locked, so only one agent calls
Callback due No answer, or another time requested A scheduled callback beats an abandoned lead
Confirmed Item, total price and address agreed The lead becomes an order and stock is committed
Cancelled Customer declined, or the lead was never serious Close the line rather than leave it in the queue
Parcel created A reference is open at the courier Tie the order to the number that will be tracked
Packed Product picked, parcel labelled Know what awaits collection and what stock is short
Shipped The parcel is moving to its city The delivery fee is committed, delivered or not
Delivered Parcel handed over, cash collected Trigger the profit calculation and its credit
Returned Refused, or delivery impossible Charge the return fee and put the product back in stock

What breaks when orders live in a spreadsheet

A spreadsheet holds the first few dozen orders perfectly well. It stops holding them not because of volume but because of the number of people: as soon as an agent, a packer and a courier touch the same order, the file becomes one copy among several.

  • No single source of truth — The order exists in the spreadsheet row, on the courier's screen and in the memory of the agent who called. When the three disagree, nothing settles it.
  • Re-entry — The same address is typed on the order, typed again for the courier, copied onto the label. Every copy adds its own typo, and a wrong address is a return you pay for.
  • Statuses that contradict each other — The spreadsheet says "shipped" because somebody wrote it on Monday; the courier has said "returning" since Wednesday. The seller learns the difference when counting the money.
  • Nothing records who did what — A spreadsheet overwrites the old value: you see the current address, never the one printed on the label.
  • Profit known too late — A margin recalculated by hand arrives after the month is over, and nearly always overstated because one fee was forgotten.

What a single order record must hold

A useful record is not a complete one: it holds what is needed during a call, during packing and during a dispute, without opening anything else.

  • The customer — Name, phone number and their other orders: someone already delivered to is not treated as a stranger.
  • The address and the city — The city sets the delivery fee. Mistyped, it distorts the profit before the parcel leaves.
  • The items — Exact reference and quantity: a size or colour variant is the leading cause of exchanges.
  • The total the customer pays — The amount the courier must collect, the one quoted on the phone.
  • The fees — Confirmation, the city's delivery fee, and the return fee where it applies — on the order, not in a separate calculation.
  • The parcel — Courier reference and latest known status, pulled onto the order.
  • The history — Every change of state with its date and author, plus the call notes.
  • The profit — Derived from the lines above, never typed in by hand.

Why status history decides disputes

Disagreements in COD are about dated facts: the customer says they cancelled before dispatch, the courier says an attempt was made, the seller says nobody told them about the return. None of those sentences can be checked against a current state; they are checked against a sequence of timestamped ones.

That is why history must be appended and never overwritten. If the order keeps the time of the call, the amount agreed during it, the time the parcel was created and every courier status, the discussion ends in a minute; otherwise it ends in an estimate, and the seller pays for it. The same record makes failures readable: returns clustered on one city, one product or one lead source show up in the dates, not in a monthly total.

How profit is computed, and when it is credited

The profit on a COD order is only known on delivery, because collection is what creates it. Before that there is only an expected margin, and cash flow built on an expected margin eventually comes up short.

The calculation should be checkable line by line. On CODFamilia it is written with no percentage at all: seller profit = total paid by the customer − CODFamilia product price − confirmation fee − delivery fee. The confirmation fee is 10,00 MAD, charged once per order; the delivery fee depends on the city. No commission is taken on revenue. A seller who confirms their own leads pays no confirmation fee: they pay in telephone hours instead, which scales badly beyond a certain volume.

On delivery, the profit is credited to the seller's wallet; the seller then requests a withdrawal, subject to a minimum, and receives a supporting document. For orders already shipped but not yet delivered, an advance against profit can be requested, capped at a share of those profits and deducted from future ones: it is cash borrowed from yourself, and costly in clarity if it becomes permanent.

The reports that change a decision

A report is only worth having if it changes what you do tomorrow. Three questions are worth following, and all of them turn on the delivery rate: the share of dispatched orders the customer actually pays for.

  1. Which products get delivered — A product ordered often and delivered rarely consumes advertising, delivery and returns while returning nothing. It should be withdrawn, not pushed harder.
  2. Which cities cost money — Fees differ from one city to another and refusals are not spread evenly either. A city can be profitable on one product and loss-making on another.
  3. Which lead sources hold up — Comparing sources on delivered orders rather than on leads received is what corrects an advertising budget.

Frequently asked questions about COD order management

What is the difference between a lead and an order?
A lead is an intention: someone left their details asking for a product, and nothing has been verified. An order is a lead confirmed by phone, with an agreed item, total price and address. The distinction is economic: you pay to acquire a lead, you only earn on a delivered order.
When is the profit credited?
On delivery, that is, once the courier has collected the cash. The profit is then posted to the seller's wallet, and a withdrawal can be requested subject to a minimum. Before delivery it is only an expected margin.
Can an order be changed after confirmation?
As long as the parcel has not been created at the courier, a correction is still possible — a clarified address, an adjusted quantity. Once the parcel exists and the label is printed, the change no longer happens on the seller's side: it goes through support, because the courier is involved.
How can a parcel be tracked without visiting the courier website?
The status is pulled onto the order itself. CODFamilia is integrated with OzonExpress: the latest known parcel state appears on the order record together with its history, with no parcel-by-parcel lookup.
What happens to a returned order?
The product goes back into stock and the return fee is charged to the original order. Two cases are configured separately because they do not cost the same: the customer saw the product and refused it, or the customer stayed unreachable.
Is there a commission on revenue?
No. The calculation is: total paid by the customer − CODFamilia product price − confirmation fee − delivery fee. The confirmation fee is 10,00 MAD per order and the delivery fee depends on the city. No percentage is taken on sales.
Can orders be imported from a store or a file?
Yes. A YouCan store connects directly, a Google Sheets file can feed orders in, and there are webhooks as well as a public REST API with API keys. A store of any other type can send its orders through that API or a webhook.
At what point does a platform become worth it?
The tipping point is not volume but the moment several people touch the same order: an agent calling, somebody packing, a courier delivering. From then on the problem is no longer counting but agreeing.
Who handles orders day to day?
The seller decides and monitors; confirmation agents call the customers; an account manager looks after a set of sellers; a hub operator packs the parcels. A seller may also choose to confirm their own leads, in which case no confirmation fee applies.

Also worth reading

One thread per order, from arrival to cash collected

Phone confirmation, courier status pulled onto the order, profit computed on delivery and credited to the wallet, delivery to 65 Moroccan cities.

Sign up