Platform Comparisons
Keep Stock and Orders Consistent from Sale to Delivery

A small store keeps orders and stock consistent by maintaining one catalogue, recording every sale, defining when stock is reserved, and separating payment from fulfilment. Reconcile cancellations, returns and physical counts against those records. For a Nigerian merchant handling online, chat and counter orders, this routine should guide software selection.
Decision summary
Good inventory and order management for small business starts with three questions: what can you promise a customer, which orders need action, and which payments remain unconfirmed? A single stock total cannot answer all three. Your operating routine must connect the product, order, payment and delivery records without treating them as interchangeable.
Use one catalogue and one order queue. Assign responsibility for payment verification, packing and stock adjustments. A spreadsheet can support a small operation if access and changes are controlled; multiple independently edited copies make reconciliation harder. Move to a commerce platform when the required permissions, order history or channel workload exceed that arrangement.
Baci’s commerce platform is being built around a mission to make practical digital commerce infrastructure more accessible to African merchants, starting with Nigeria. Here, that ambition has a concrete test: can the merchant maintain a product catalogue, capture sales and follow orders through payment and delivery without losing track of stock?
This is an official-source review of published features and terms, checked on 15 October 2026, supplemented by the supplied Baci source-code audit dated 11 October. That audit establishes implementation evidence, not production availability. No merchant-account workflow was tested, and no reduction in stock errors, increase in sales or other measured impact is claimed.

Illustration: physical stock and stock available to promise are different quantities.
Build one catalogue before automating orders
Give every sellable variant a stable identifier. A black medium shirt and a blue large shirt need separate quantities even when they share a product page. Record the product name, variant, selling price, cost where useful, counted quantity and policy for selling beyond available stock. Use the same identifiers when entering a chat order or matching a supplier delivery.
Baci’s public inventory features overview lists stock tracking, variants and low-stock alerts. The supplied audit additionally identifies CSV imports and serialized-inventory workflows. Bulk import is plan-gated; the audit does not establish entitlement or successful imports in a deployed merchant account.
Assign a catalogue owner. Count incoming goods before increasing quantities, and record damage, samples and corrections with a reason. A silent change from eight units to six may fix today’s number while hiding the process failure that caused the discrepancy.
Separate physical stock from stock available to promise
Suppose a merchant counts 12 identical items, has committed three to accepted orders and sets one damaged item aside. The available-to-promise quantity is eight. This is an illustrative operating example, not a Baci screen or a tested platform calculation. Incoming goods should remain outside that available quantity until received and checked.
Shopify’s official inventory-state documentation makes a similar distinction between on-hand, available, committed, unavailable and incoming quantities. Those documented states are a useful category benchmark. They do not establish that Baci implements the same allocation model.
Choose a written reservation rule. Reserving when an order is accepted protects the last unit from being promised twice, but unpaid orders need an expiry and release process. Reserving only after payment requires coordination between payment review and sales staff. Verify how the selected platform changes quantities at order creation, payment, cancellation and shipment; avoid a manual deduction that duplicates an automatic one.
Use one order pipeline from sale to reconciliation
Every sale needs an order record, including sales received by phone, chat or at a counter. Capture the variant, quantity, customer contact, agreed amount, payment method and fulfilment method. Keep the original order identifier when following up so staff do not create a second order for the same conversation.
The supplied Baci audit identifies staff-entered orders, payment recording and order-status management across web and mobile-admin implementations. It also identifies invoices and receipts. These are implementation findings requiring account-level verification. They do not establish an offline-first POS terminal, offline synchronisation or certified accounting functionality.
Use the following operational stages, mapped to the actual statuses your system supports:
- Awaiting payment: the order exists, but payment has not been verified. Apply the reservation policy.
- Ready for fulfilment: the order meets your dispatch conditions. For pay on delivery, this may occur while payment remains outstanding.
- Packed: staff have checked the item, variant, quantity and destination.
- Dispatched or ready for pickup: record carrier handover or the pickup arrangement.
- Delivered or collected: record completion evidence separately from payment settlement.
- Exception: assign an owner to cancellation, failed delivery, return, refund or stock discrepancies.
A rider collecting a parcel is different from the customer receiving it. A customer receiving a pay-on-delivery order is different from the merchant receiving the money. For a Nigerian store offering that payment method, these distinctions should be explicit in the daily order review.
Give cancellations and returns separate stock and money checks
When an unpaid order expires, release its reservation once. When a paid order is cancelled, track any refund separately from the stock adjustment. A refund does not prove the item has returned to the shelf, and a parcel returning to the shop does not prove it is sellable.
Inspect returned goods before restoring available stock. Keep damaged or incomplete items aside, record the reason and link the adjustment to the order. This is recommended operating practice; the available evidence does not establish Baci’s complete returns, refunds or automatic-restocking behaviour.
Reconcile exceptions daily and count stock regularly
At opening, review orders awaiting packing, outstanding payment checks and overdue handovers. At close, reconcile manual sales, payment confirmations, cancellations and delivery collections. Each unresolved exception needs a named owner and next action, rather than another informal message.
Rotate physical counts, prioritising high-value or frequently sold items. Compare the shelf count with the system’s physical-stock figure, then check reservations separately. Record both the variance and its likely cause. Repeated unrecorded counter sales call for a different fix from supplier shortages or damaged returns.

Illustration: inspect returns before restoring sellable stock, and reconcile payment separately.
Feature comparison
The table compares evidence relevant to this workflow. Shopify is a documented category benchmark, not proof of Baci parity. Public feature descriptions establish what a provider advertises; successful operation, setup requirements and account entitlements still require verification.
| Decision area | Baci evidence | Shopify benchmark | What to check |
|---|---|---|---|
| Merchant fit | Public stock tools; audited implementations connect catalogue and order operations. | Official help describes inventory and order administration. | Can staff complete your real sales routine? |
| Published costs | Naira subscriptions; details below. | US-dollar subscriptions; details below. | Calculate subscription, provider, delivery and setup costs together. |
| Storefront and catalogue workflow | Advertises variants and stock tracking. Imports are implementation-evidenced and gated. | Documents locations, stock counts, transfers and purchase orders. | Test variants, quantity adjustments and migration requirements. |
| Payments and delivery availability | Configuration and shipment workflows are implementation-evidenced; eligibility and route limits apply. | Shopify Payments eligibility depends on business country. | Verify the exact gateway, currency, account and delivery route. |
| Support and setup | Published plans distinguish standard, priority and account-manager support. | Pricing lists live chat, with enhanced support on higher tiers. | Confirm who resolves import, payment and fulfilment failures. |
| Limits and unknowns | Dedicated offline POS, multi-location stock and complete returns handling are not established by this review. | Documented inventory breadth still requires configuration and merchant-fit checks. | Require a demonstration for every business-critical dependency. |
Shopify’s inventory help covers locations, transfers, counts and supplier purchase orders. Its order help covers payment capture, fulfilment, edits, returns and refunds. These are useful questions to bring to a Baci demonstration, rather than capabilities to assume from a shared feature label.
Pricing and cost model
On 15 October 2026, Baci’s public pricing page lists Free at ₦0 with one store and a maximum of 10 products, Pro at ₦5,000 per month with unlimited products, and Premium at ₦15,000 per month with multiple staff accounts. Pro lists a custom domain and priority support; Premium lists a dedicated account manager. Recheck the current Baci pricing and plan limits before subscribing.
Pro also advertises no transaction fees. That wording does not establish zero payment-processing costs. Confirm provider charges and other service costs separately. Public labels such as API access and wholesale features do not establish the exact workflow or runtime entitlement.
Shopify’s Nigeria pricing page, checked the same day, lists Basic, Grow and Advanced at US$19, US$54 and US$299 per month respectively when billed yearly. Monthly billing is US$27, US$72 and US$399 respectively. The page lists third-party payment-provider transaction rates of 2%, 1% and 0.6% for those plans; confirm applicable charges alongside the provider’s own terms.
These are different subscription commitments, not equivalent bundles. For a Naira-budgeted business, include foreign-exchange exposure when assessing dollar subscriptions. Do not convert an overseas subscription into a promised Naira bill. Also budget for domains, delivery, required apps, migration and staff time spent resolving exceptions.
Estimate total monthly cost as subscription plus applicable transaction charges, processing, delivery, additional services and operating effort. A low headline subscription can be outweighed by repeated manual corrections. Conversely, paying for advanced functionality creates little value if your staff do not need it or cannot complete the setup.
Checkout and payments
Payment status should follow a defined verification process. A screenshot or attempted checkout is insufficient on its own to mark an order paid. Record pending, confirmed, failed and refunded payments distinctly, and limit who can change the record. For pay on delivery, track the collection and remittance steps.
The supplied Baci audit identifies configurations for Paystack, Korapay, Credit Direct and pay on delivery. Country, currency, provider eligibility, subaccount requirements and merchant configuration apply. This does not establish universal availability, successful activation or settlement timing. Verify the intended option in the deployed account and complete a low-value end-to-end test.
Nigeria is not listed on Shopify’s official supported-country page for Shopify Payments, checked on 15 October 2026. Shopify directs businesses in countries outside its list to third-party payment providers. That is a specific checkout dependency for a Nigeria-based merchant, rather than evidence that Shopify cannot support an online store there.
Baci’s audited shipping implementation includes zones, rates, pickup settings, quotes, booking and tracking workflows. Carrier credentials, configuration and route coverage still apply. A quote does not establish a successful booking, and a tracking number does not establish delivery. Check one representative destination and agree how failed handovers and returned parcels will be handled.
Best fit
Baci is worth evaluating for a small retailer whose immediate requirements centre on a storefront, variants, stock visibility and an organised order routine. Its mission to make commerce infrastructure more accessible becomes useful where those tools address specific operational handoffs. Published Naira plans provide a starting budget reference; they do not prove that every required workflow is enabled.
If dedicated offline POS, multiple stock locations, wholesale operations or API access are essential, request the exact workflow, entitlement and deployed demonstration before deciding. Unverified does not mean absent. It means the available evidence cannot settle that buying decision.
Run a small pilot before moving the whole catalogue
Create several representative products, including variants and a low-stock item. Place an online order and a staff-entered order. Check what happens to available and physical quantities at each stage. Then test payment failure, cancellation, pickup or delivery, and a return scenario with the product team.
Include two staff members if shared access matters. Ask them to attempt simultaneous orders for the last unit, then inspect the result. Record any manual reconciliation required. These are proposed acceptance checks, not tests performed for this article.
Keep a copy of the starting quantities and ask how product and order records can be extracted before migration. General Baci catalogue export was not established by the supplied audit. Resolve portability and support responsibilities while the pilot is small.
Verdict
Choose the operating rules first: one catalogue, every sale recorded, explicit stock reservations, separate payment and fulfilment states, and traceable adjustments. Baci’s advertised stock tools and published Naira subscriptions make it relevant to assess for a Nigerian small store. Shopify provides a broader documented inventory benchmark, with US-dollar subscription commitments and country-dependent payment requirements.
The deciding evidence should be a successful pilot of your own workflow. Baci’s implemented order, payment and delivery foundations connect its Africa-commerce mission to practical merchant tasks, but deployment, entitlements and provider success remain account-level checks. The evidence supports evaluation, not a promise of platform parity or improved business outcomes.
FAQ
How can a small business keep stock and orders consistent?
Use one catalogue, record every sale, define when stock is reserved, and separate payment from fulfilment. Record cancellations, returns and damage with reasons. Reconcile exceptions daily and compare physical stock with the correct system quantity regularly.
Does Baci support inventory management?
Baci’s public features page advertises stock tracking, variants and low-stock alerts. The supplied source audit also identifies CSV imports and serialized-inventory implementations. Imports are plan-gated, and deployment, entitlement and actual behaviour should be verified in the intended merchant account.
Can every Nigerian merchant use every Baci payment or delivery option?
Universal availability is not established. Audited payment and shipping implementations depend on country, currency, provider eligibility, credentials, configuration and route coverage. Verify the exact payment method and destination, then complete an end-to-end test before relying on them.
Should a small merchant choose Baci or Shopify?
Compare the required workflow and total cost, then run a pilot. Baci publishes Naira plans and stock-management features. Shopify documents broader inventory operations and lists US-dollar subscriptions. Nigeria is not currently listed for Shopify Payments, so a Nigeria-based business must assess eligible third-party payment arrangements.