One cycle connects the customer, inventory, receivables, and collections
Wholesale doesn't end when the invoice goes out.
Before an order is confirmed, the system has to know the customer's price, the allowed discount, their credit limit, their current balance, the installments or checks they still owe, and which warehouse will fulfill the order.
And once the order is confirmed, a second cycle begins: reserving quantities, picking, loading, delivery, proof of delivery, then following up on collection until the balance is settled.
That's why inventory and receivables are managed together: no new order goes out to a defaulting customer without approval, and no balance shows as paid just because a check was received but hasn't cleared.
It starts with the customer account
In wholesale, a customer account is far more than a name and a phone number.
The system brings together in one place:
So before selling, the rep can see the last order, the last contact, the balance due, the overdue amounts, the customer's special prices, and whether a new order is even allowed.
Wholesale pricing is never a single price
The price can vary by customer type, quantity, territory, brand, payment method, or an annual agreement.
The system manages multiple pricelists, such as:
The correct price appears automatically once you pick the customer, the item, and the quantity.
And the rep can't change prices at will. The system enforces their allowed discount margin; anything beyond it routes to the commercial manager for approval, recording the price before and after the change, and the reason for the exception.
Products, units, and variants
Accurate sales and inventory both depend on defining the product properly.
The item card includes:
If a product is bought by the carton and sold by the piece or the pack, the system stores the relationship between units, so balances and prices never drift because of manual conversions.
And in businesses with thousands of variants, the model is defined once and the colors and sizes are generated from it: each variant with its own barcode and its own stock balance.
Imports and the true cost
The import cycle starts with a purchase order in the supplier's currency, and the shipment may pass through the factory, the port, freight, and clearance before it reaches the warehouse.
The system tracks:
Landed cost
An item's cost is never just the supplier's price.
The shipment picks up costs along the way:
These expenses are then spread across the items by weight, volume, quantity, or value, whatever fits the shipment.
So each item enters inventory at its actual cost, and the sales margin is calculated on a real number, not on the purchase price alone.
Purchase planning
A purchasing decision is never based on the current balance alone.
The system combines:
When a shortfall appears, it can be covered first from another warehouse, or added to the purchasing and import plan.
So you never buy a new quantity while the same quantity sits idle in another warehouse, and never accept a large order without knowing when you can supply it.
Sales start on any channel and run through one pipeline
A wholesale order may start from a phone call, WhatsApp, a field rep, a showroom, an institutional customer, or an online channel.
But every order enters the same cycle:
Contact → Quote → Price & credit review → Sales order → Picking → Delivery → Invoice → Collection
Every contact is logged on the customer account, and the manager can see how customers are distributed across reps, how many follow-ups happened, which orders are open, and which opportunities stalled without an order.
Telesales
During the call, the rep sees the customer's balance, their latest orders, their special prices, and what's available.
The quote or sales order is created from the call itself, instead of jotting the order on paper or WhatsApp and entering it later.
The field rep
The rep uses their phone to show items, prices, and availability, and to record an order, a visit, or a collection.
Orders and prices stay bound to the same access rights: being out of the office is never a license to bypass company policy.
Credit checks before the order is confirmed
Having the quantity in stock doesn't mean the order is ready to go.
Before the sales order is confirmed, the system reviews:
If the order exceeds the limit, or the customer has a significant overdue balance, it can move to Credit Hold instead of going straight to the warehouse.
The order is released after payment, or by the authorized approver, with a record of who approved the exception and why.
So sales growth never turns into uncontrolled growth in receivables.
Reserving the goods
Once the order is confirmed, the system reserves the quantity for that customer, so it can't be sold again by another channel or another rep.
The order can be fulfilled from:
The system distinguishes between:
So a rep never promises a customer stock that shows in the balance but is already reserved for someone else's order.
Picking in the warehouse
The moment the sales order is confirmed, the picking order reaches the warehouse.
The process typically moves through these stages:
Awaiting picking → In progress → Partially or fully picked → Packed → Ready to load
The picker scans barcodes to verify the item, quantity, and variant. And sales sees what has been picked and what remains, in real time.
If the full quantity isn't available, the order isn't marked as complete. The available part can be delivered while the remainder stays open with an expected date.
Weights and loads
In businesses that move large volumes, the system uses each item's weight and volume to compute the order's totals.
That helps with:
Field delivery
After picking, orders are assigned to a vehicle, a driver, or a carrier as part of a defined trip.
The driver sees on their phone:
And at drop-off they can record:
An order doesn't count as delivered just because it left the warehouse, only once the customer's receipt is proven, or the reason for non-delivery is recorded.
And at the end of the trip, returned goods, collected amounts, and documents are settled with the driver or the rep.
Supply contracts and institutional customers
A wholesale deal isn't always a quick one-off order. It may be an ongoing supply arrangement tied to a contract or an institutional purchase order.
In that case, the system keeps:
The contract can run across multiple deliveries and invoices without ever losing the link back to the original agreement.
The invoice doesn't close the sale
The invoice may be issued before or after delivery, depending on company policy, but its status stays tied to what actually happened.
For each order, the system shows:
A sales order is never closed just because the invoice went out, not while goods remain undelivered or the balance remains uncollected.
Collections are independent of the invoice
In practice, a rep may collect money from a customer without immediately deciding which invoices it settles.
So the system lets you record the collection first as a standalone payment on the customer's account, then reconcile it later against one invoice or several.
A collection can be:
The statement shows a running balance across invoices, payments, settlements, and returns, instead of a detached list that never explains where the balance came from.
The check cycle
Receiving a check doesn't mean the money is in the bank.
A check moves through clear stages:
Received → In the portfolio → Deposited → Under collection → Cleared
And it can take an exceptional path:
Postponed, replaced, or bounced
For every check, the system keeps:
Large batches of checks can be recorded and tracked by due date, with alerts before maturity and an immediate notification on a bounce.
And a customer's outstanding balance is only cleared according to the approved accounting policy for the check's status, so no customer shows as paid up while the check hasn't cleared.
Receivables follow-up
The aged receivables report splits customer balances by how long they've been overdue, showing reps, collections, and management:
Every collection call is logged with its outcome and the next follow-up date.
So collection never depends on a rep's memory or a manual sheet, and no customer promise is lost when the account moves to someone else.
Returns and settlements
A customer may return an item because of a picking error, damage, a spec mismatch, or a commercial agreement.
The return starts from the original sales order or invoice, recording the reason, the condition of the goods, and the quantities.
After inspection, the goods go back to:
Then the correct financial effect follows: a credit note, an exchange, a deduction on the balance, or a refund, per policy.
A customer's balance is never adjusted by hand without a stock move and a financial document explaining the change.
Sales commissions
Basing commissions on sales order value alone isn't enough: an order may be cancelled, partially returned, or never collected.
Commission can be earned on whichever basis the company adopts:
And the effect of returns, credit notes, and uncollected balances is deducted per policy.
So commissions are computed from actual operational data, not from a report the rep writes about themselves.
Multiple warehouses, one view of stock
Each warehouse keeps its own balance and its own operations, while management sees a single unified view.
The system tracks:
When goods move, they first leave to an in-transit location and only enter the receiving warehouse after scanning, so nothing vanishes between the two.
Inventory counts and reconciling differences
Cycle counts run regularly on specific items or locations, alongside a full inventory count when needed.
The counted quantity is compared to the expected balance, and every difference needs a reason, an owner, and an approval.
A difference can be traced back to:
An inventory count here isn't a way to bury the cycle's mistakes. It's how you pinpoint exactly where inventory went off track.
More than one sales channel
Wholesale may run alongside retail branches, an online store, or marketplaces.
All channels share the same product card, inventory, and accounts, but each keeps:
So you can see wholesale's net return on its own, without building a separate system or duplicating product and customer data.
The accounting behind the operation
Every operation creates its accounting effect at the source.
Purchasing and imports set the item's cost and the supplier's account; receiving raises inventory value; a sale records revenue and cost of goods; a return reverses its effect; a collection settles the customer's account; and checks post according to their status.
Profitability can be tracked by:
And shown separately:
So management knows the difference between high sales, real profit, and cash actually collected.
Who owns the decision?
One person may hold several roles depending on company size, but every decision must have a clear owner.
| Role | Decisions they own |
|---|---|
| Commercial management | Pricing policy, discount limits, targets, and commercial exceptions. |
| Sales manager | Customer allocation, pipeline and order follow-up, and rep performance sign-off. |
| Telesales | Contact, order entry, and quoting, within their access rights. |
| Field rep | Visits, orders, follow-ups, and the collections assigned to them. |
| Credit & collections | Credit limits, overdue balances, promises to pay, and releasing held orders. |
| Purchasing & imports | Suppliers, purchase orders, shipments, and delivery schedules. |
| Product management | Codes, variants, units, weights, and item data. |
| Warehouse | Receiving, reservation, picking, loading, transfers, and inventory counts. |
| Transport & distribution | Trips, vehicles, drivers, proof of delivery, and end-of-trip settlement. |
| Customer service | Complaints, returns, exchanges, and root-cause follow-up. |
| Treasury | Cash, banks, checks, check portfolios, and settlements. |
| Finance | Invoices, journal entries, statements, valuation, profitability, and reporting. |
- Decisions they own
- Pricing policy, discount limits, targets, and commercial exceptions.
- Decisions they own
- Customer allocation, pipeline and order follow-up, and rep performance sign-off.
- Decisions they own
- Contact, order entry, and quoting, within their access rights.
- Decisions they own
- Visits, orders, follow-ups, and the collections assigned to them.
- Decisions they own
- Credit limits, overdue balances, promises to pay, and releasing held orders.
- Decisions they own
- Suppliers, purchase orders, shipments, and delivery schedules.
- Decisions they own
- Codes, variants, units, weights, and item data.
- Decisions they own
- Receiving, reservation, picking, loading, transfers, and inventory counts.
- Decisions they own
- Trips, vehicles, drivers, proof of delivery, and end-of-trip settlement.
- Decisions they own
- Complaints, returns, exchanges, and root-cause follow-up.
- Decisions they own
- Cash, banks, checks, check portfolios, and settlements.
- Decisions they own
- Invoices, journal entries, statements, valuation, profitability, and reporting.
Some processes pass through several departments, but pricing, credit, releasing goods, and settling balances can never be left without a responsible owner.
Controls over the wholesale cycle
Access rights define what each user can see or change, and the approvals matrix sets clear boundaries for:
And the system records who created each operation, who approved it, who modified it, with the date and reason for every change.
What does management track?
The key indicators include:
What does Odoo actually run?
Odoo brings into one cycle: