← The Retail Edge / Journal
Industry guides

Wholesale Inventory in Nigeria: Cartons, Packs, Pieces and Customer Credit

Evaluate Bizman Sales and Inventory for wholesale units, pricing and customer credit with a carton-to-piece ledger and debtor-ageing example.

6 November 2026 · 13 min read
Ask about this guide ↗

Start with Bizman Sales and Inventory when your wholesale business needs stock quantities and customer balances to agree. Ask BriskRetail to demonstrate a purchase in cartons, a mixed-unit sale, a partial payment and a return against the same records. A system that prints a professional invoice still needs to explain what left the warehouse and what the customer owes.

The practical challenge is familiar: a supplier quotes by carton, a regular buyer requests packs and loose pieces, and a salesperson agrees credit terms. If staff record “three” without a unit, or treat an invoice as money received, the stock and cash position can both become misleading.

This guide provides a carton-to-piece ledger, a pricing example and a customer-ageing worksheet. Every business, product, quantity and NGN figure in the examples is hypothetical. The examples illustrate operational records, not recommended credit terms, current supplier prices or tax treatment.

Commercial disclosure: BriskRetail supplies Bizman solutions and benefits commercially when customers choose its services. Bizman Sales and Inventory is our primary recommendation for a scoped wholesale evaluation. We have not tested its unit conversions, pricing rules, receivables or credit restrictions. Ask for the behaviour to be demonstrated on the configuration being quoted.

Research checked: 23 October 2026. Official software and GS1 documentation supports the specific examples cited. Documentary features in another product are not evidence of equivalent Bizman functionality or Nigerian implementation availability.

IMAGE 01 — COVER PLACEHOLDER · 1600 × 900 px · 16:9. Original illustration linking one carton to four packs and each pack to six pieces, beside separate stock and customer-balance records. Suggested alt text: “Wholesale records distinguish packaging quantities from customer debt.” No real customer documents or invented software screen.

1. Define one stock unit and explicit packaging relationships

Choose the unit in which you reconcile the product's physical stock. For the teaching product in this guide, the base unit is one piece. One pack contains six pieces; one carton contains four packs, so one carton contains 24 pieces. These relationships belong to this product, not every product the business sells.

Do not create a universal “carton equals 24” rule if other lines arrive in cartons of 12, 30 or mixed contents. Record each product's actual packaging and check it when suppliers change presentation. A pack-size change must not silently rewrite old transactions.

Odoo's version 19 unit documentation describes purchasing and selling in different units with conversion to an inventory unit. It also requires compatible unit categories for purchase conversions. This is the kind of relationship to request in a Bizman demonstration, rather than merely asking whether the system “supports cartons”. Source: Odoo units of measure.

GS1 US distinguishes packaging levels such as each, inner pack and case. Its guidance helps explain why a case identifier and an individual-item identifier should resolve to the correct packaging level. It is not a Nigerian barcode-registration procedure or permission to invent GTINs. Source: GS1 packaging levels.

For each product, capture the base unit, packaging quantity, supplier code and any verified barcode for each level used. Scan a carton and a piece in the demonstration. Confirm the displayed unit, price and deduction before accepting the setup.

2. Reconcile a mixed-unit stock ledger

The following synthetic ledger tracks a single product in pieces. It assumes received and returned goods have been checked and accepted as saleable. Holds and damage would need separate status records.

Movement Quantity entered Change in pieces Balance in pieces
Opening stock 5 cartons +120 120
Supplier receipt 3 cartons +72 192
Customer sale 2 cartons + 3 packs + 5 pieces −71 121
Accepted customer return 1 pack + 2 pieces +8 129
Approved supplier return 1 carton −24 105

The sale removes 2 × 24 + 3 × 6 + 5 = 71 pieces. The closing balance is 120 + 72 − 71 + 8 − 24 = 105 pieces. That quantity is equivalent to four cartons, one pack and three pieces: 4 × 24 + 1 × 6 + 3 = 105.

Equivalent quantity does not prove that four sealed cartons physically exist. Staff may have opened several cartons. If a buyer specifically needs sealed cartons, maintain the packaging-state information or physical check needed to fulfil that request. A base-unit total alone cannot answer it.

For Bizman Sales and Inventory, ask to see both the entered unit and the converted quantity in the movement history. Then count the test stock and reproduce the 105-piece balance. Changing a display from pieces to cartons should not create or remove stock.

Avoid duplicate product records that each claim to own the same physical goods. If carton and piece codes are separate selling presentations, demonstrate how both draw from the same inventory or how a controlled pack-breaking movement connects them. Selling a carton and later selling its already-deducted pieces must not be possible through disconnected balances.

3. Keep unit cost and selling rules separate

Assume a carton costs NGN 12,000 for 24 pieces. The illustrative cost is 12,000 ÷ 24 = NGN 500 per piece, excluding freight, other landed costs and tax effects. Record the basis so staff do not compare a carton selling price with a piece cost and mistake the result for margin.

Now suppose the business offers these hypothetical prices:

Selling presentation Pieces supplied Price Effective price per piece
One carton 24 NGN 14,400 NGN 600
One pack 6 NGN 3,900 NGN 650
One loose piece 1 NGN 700 NGN 700

Using those presentation prices, the mixed sale in the ledger costs 2 × 14,400 + 3 × 3,900 + 5 × 700 = NGN 44,000. Its assumed acquisition cost is 71 × 500 = NGN 35,500. The difference is NGN 8,500 before any excluded costs or adjustments; it is not net profit.

Decide whether a quantity threshold applies across all equivalent pieces or only to complete cartons. A customer buying 24 loose pieces might qualify for the carton rate under one policy and not another. Neither outcome should be an accidental result of how the cashier splits the invoice lines.

Odoo's pricelist documentation describes minimum-quantity and validity-period rules and notes that suggested prices can be overridden on sales orders. That distinction matters: automatic selection and control of overrides are different requirements. Source: Odoo pricelists.

Ask BriskRetail to demonstrate the agreed threshold, customer price list, expiry of a promotion and an unauthorised price change. Keep supplier-cost updates separate from customer-price approval. A new purchase cost should not silently alter already-issued documents.

4. Separate the order, delivery, invoice and payment

An order records what a customer requests. A delivery records goods leaving the business. An invoice records the amount billed. A verified payment records money received and allocated. Depending on the agreed workflow, these may occur on different dates or cover different quantities.

For a partial delivery, retain the undelivered balance explicitly. Do not mark all stock as issued merely because the customer ordered it, or mark an invoice paid because the salesperson expects a transfer later that day. Demonstrate how the proposed system links the documents without treating them as interchangeable.

Use the earlier NGN 44,000 sale as a simple example. If NGN 20,000 is independently verified and allocated to that invoice, NGN 24,000 remains due. The invoice total is still NGN 44,000. Receiving the remaining NGN 24,000 later reduces the receivable; it is not another sale of the same goods.

Record payment reference, date, amount and invoice allocation. A customer may send one payment covering several invoices, or pay an amount that does not match any one invoice. Keep an unallocated receipt visible until it is matched instead of applying it arbitrarily to make one overdue item disappear.

For payment verification itself, use the cash, card and transfer reconciliation guide. A payment message and a selected tender type are not substitutes for evidence that funds reached the business.

5. Define what the customer credit limit measures

A credit limit is a business policy that software may help enforce. Define which amounts count: outstanding invoices, confirmed orders not yet invoiced, or another clearly stated exposure measure. Prevent the same order and its resulting invoice from being counted twice.

Zoho Inventory's credit-limit guide distinguishes a restriction from a warning that users can proceed past, and provides an option to include sales-order amounts. This is useful evidence that “credit control” can mean different things even within one product. Source: Zoho Inventory credit-limit documentation.

Consider a hypothetical NGN 300,000 limit. Outstanding invoices are NGN 180,000; additional confirmed orders not represented in those invoices are NGN 70,000. Under a policy counting both, exposure is 180,000 + 70,000 = NGN 250,000, leaving NGN 50,000 headroom. A new NGN 60,000 order would exceed the limit by NGN 10,000.

If the policy counts only invoices, the decision differs. Make the chosen rule explicit and demonstrate it in Bizman Sales and Inventory. Ask which document triggers the check, whether it blocks dispatch as well as invoice creation, and who can approve an exception.

Also define how overdue debt affects new supply. A customer can be below the monetary limit and still have an unpaid overdue invoice. A limit alone is not a complete collection policy. Record approval, reason and review date for exceptions rather than permanently increasing a limit to accommodate one order.

IMAGE 02 — CREDIT EXPOSURE DIAGRAM PLACEHOLDER · 1440 × 960 px · 3:2. Original diagram showing NGN 180,000 outstanding invoices plus NGN 70,000 unbilled orders, against a hypothetical NGN 300,000 limit. Suggested alt text: “Credit exposure depends on the balances included in the agreed policy.”

6. Age the remaining debt by its due date

State the report's as-of date and ageing convention. For this example, use 31 October 2026, calendar days after the contractual due date, and only the remaining invoice balance after allocated payments and approved credits. The figures below concern one fictitious customer and no instalments.

Invoice Due date Original amount Allocated payments Approved credit Outstanding Age at 31 October
W-101 20 October NGN 120,000 NGN 50,000 NGN 0 NGN 70,000 11 days overdue
W-102 5 November NGN 90,000 NGN 0 NGN 0 NGN 90,000 Not yet due
W-103 25 September NGN 80,000 NGN 20,000 NGN 10,000 NGN 50,000 36 days overdue
Total NGN 290,000 NGN 70,000 NGN 10,000 NGN 210,000 NGN 120,000 overdue

The balance is 290,000 − 70,000 − 10,000 = NGN 210,000. The overdue amount is 70,000 + 50,000 = NGN 120,000. Only NGN 50,000 belongs in the illustrative 31–60 days overdue bucket; the rest is either 1–30 days overdue or not yet due.

An invoice date is not automatically its due date. Odoo's payment-term documentation describes separate due dates for instalments and explains their role in aged receivables. If a customer has instalments, evaluate each scheduled outstanding amount against its own due date rather than ageing the whole invoice as one debt. Source: Odoo payment terms.

A disputed invoice still needs a visible balance and a dispute status until the proper adjustment is approved. Do not erase it from the ledger because a salesperson expects a credit note. Equally, do not keep chasing an amount already settled but left unmatched in another report.

Assign an owner, next contact date and agreed action to overdue items. The ageing buckets are reporting categories, not automatic interest charges, legal collection rights or a recommended customer-credit period.

7. Handle returns on both the stock and account sides

When goods return, identify the original product, unit, quantity and transaction. Count and inspect them before deciding whether they are saleable, held, damaged or awaiting supplier action. A customer credit and a physical restock are related events, but neither proves the other has happened.

The eight-piece return in the stock example may require a financial credit based on the original selling terms. Do not automatically use today's price or multiply a pack quantity by a piece price without confirming the unit. If the return is rejected or partly accepted, preserve the actual quantities and reason.

An approved credit note reduces the customer balance; it does not necessarily mean cash has been refunded. If money is refunded, record that separate settlement and link it to the approved adjustment. Avoid granting both an account credit and an additional cash refund without the corresponding reconciliation.

Supplier returns also need a dispatch record and follow-up for the supplier's credit. Removing goods from the warehouse does not establish that the supplier has accepted the claim. Keep pending claims separate from confirmed credits and ordinary available stock.

8. Use a daily exception review

Review the records most likely to hide an error: negative stock, unknown packaging conversions, quantities changed after dispatch, overridden prices, overdue accounts receiving new orders and payments without allocations. A report should identify the transaction and responsible person, not simply show a total in red.

Count a sample in the units staff actually handle, then reconcile to the base unit. Compare customer statements with invoice balances and allocated receipts. Investigate differences instead of entering a balancing adjustment whose only purpose is to make two totals equal.

Keep permissions appropriate to the work. A salesperson may prepare an order while a designated reviewer approves a price exception or credit-limit change. Where staffing makes separation difficult, define a practical subsequent review with evidence. Shared administrator accounts make that evidence harder to interpret.

At the end of the review, each exception should have an outcome or a named next action. “Customer says paid” is a follow-up item; “verified receipt allocated to W-101” is a specific record outcome. “Stock adjusted” is incomplete without the quantity, unit, reason and approval.

IMAGE 03 — WHOLESALE EXCEPTION BOARD PLACEHOLDER · 1440 × 810 px · 16:9. Original board with unit mismatch, unallocated payment, price override and overdue exposure, each assigned an owner. Suggested alt text: “A wholesale exception review connects stock and receivables issues to evidence and follow-up.”

9. Test the proposed Bizman workflow end to end

Ask BriskRetail to demonstrate Bizman Sales and Inventory with your actual packaging rules and a synthetic customer account. Run the 105-piece stock ledger, the NGN 44,000 mixed sale, a partial payment and a return. Then reproduce the debtor-ageing example without spreadsheet corrections outside the agreed workflow.

Test a new order that exceeds the defined credit exposure, a below-limit customer with overdue debt and an unauthorised override. Record whether the response is a warning, a block or a manual review. Confirm how pending orders become invoices without doubling exposure.

Request pass, fail or unverified against each requirement, with configuration, support responsibility and any manual step in the proposal. Check exports preserve units, references and due dates. A successful demonstration should leave your warehouse and accounts staff able to explain the same transaction from their respective records.

Explore Bizman or request a Bizman Sales and Inventory wholesale demonstration. Bring supplier pack specifications, sample price lists, return rules and the credit policy you want to enforce so the discussion starts with your operation.

Ask about this guide

Have a question about “Wholesale Inventory in Nigeria: Cartons, Packs, Pieces and Customer Credit”? Tell us about your business and what you need help with. This is a private enquiry.

Protected by reCAPTCHA. Google’s Privacy Policy and Terms of Service apply.

We use your details to respond to your enquiry. Privacy policy.

Keep exploring