E-commerceStarting an Ecommerce Business: Orders, Delivery and Cash Flow
Connect ecommerce orders, stock, delivery, COD payments and customer care. A practical story with AI chat, Social Hub and room to grow into ERP.
Recurring billing is only part of a subscription. Check the margin, forecast the stock and let customers change or stop the next cycle without confusion.
Penulis
Anichur Rahaman

The launch dashboard shows 1,200 sign-ups. Then 118 distinct first-renewal invoices fail,40 customers ask what they agreed to, and the warehouse discovers a pick list it did not plan for. This is an illustrative coffee-refill business, not a customer case study. The sign-up count is real inside the example; it is not evidence of profitable repeat orders.
A subscription creates a continuing promise about price, timing, goods and choice. Billing, inventory, fulfilment, finance and customer service must agree on that promise. Here is how to assess the economics and design a renewal that can wait, recover or stop without charging twice or shipping the wrong box.
Replenishment repeats a known consumable; usage can still vary and customers may accumulate stock. A curated box changes contents and adds sourcing/substitution work. A membership sells access or perks whose cost must be covered. A prepaid delivery bundle brings cash forward while leaving goods owed. None is automatically the safest model; start where product use, supply and customer expectations are understood.
State the actual recurring price, quantity, frequency, shipping and tax treatment, first charge, next charge, trial conversion and how to skip, pause or cancel. Capture informed recurring-payment consent with the relevant terms/version; a tokenised saved card alone is not that permission. Preserve what was agreed and communicate approved changes.
Use a truthful comparison price. Free shipping and gifts consume margin too. Test any discount against the full variable cost of the promise and customer behaviour, rather than declaring 10% a universal default. A cancellation flow should not depend on accepting a retention offer.
All values are illustrative USD. A refill pack sells once for 33.00 or on subscription for 30.00, excluding tax. The saving is 3.00÷33.00≈9.09%, not 10%. Assume goods cost 10.00, pick/pack/shipping 6.00 and a hypothetical processor fee of 2.9%+0.30, rounded half up to cents per charge. This is not a quote from any provider. No tax is charged in this arithmetic. Actual processing fees may apply to the full amount charged, including tax and separately billed shipping.
The table includes every variable cost assumed for this simple case. Real support, failed-attempt fees, refunds, returns, damage, disputes, replacements and extra shipping must be included when present. Contribution is not net profit; overhead, acquisition and financing remain. A discount is not necessarily the whole margin difference because payment fees also change.
| Per order, USD | One-time | Subscription |
|---|---|---|
| Price excluding tax | 33.00 | 30.00 |
| Goods cost | −10.00 | −10.00 |
| Pick, pack and shipping | −6.00 | −6.00 |
| Hypothetical payment fee | −1.26 | −1.17 |
| Contribution before acquisition/overhead | 15.74 | 12.83 |
For the next table, assume each acquired subscriber pays for the first cycle, earns contribution 12.83 per monthly cycle, and then independently leaves with constant probability c before each later cycle. No skips, pauses, reactivation, refunds, cost changes or discounting. Expected paid cycles are 1÷c and lifetime contribution 12.83÷c. These are model outputs, not observed customer lifetime or a guaranteed LTV.
With acquisition cost 45.00, simple payback 45÷12.83≈3.51 cycles ignores attrition. Expected cumulative cohort contribution through n cycles is 12.83×[1−(1−c)^n]÷c. It first covers 45 at cycle 4 for 6% churn and cycle 5 for 12%. Some people leave before repaying acquisition; these are expected cohort results, not everyone’s payback date. Use measured cohort survival and actual contribution when the constant-churn assumptions fail.
| Constant-churn model | 6% monthly | 12% monthly |
|---|---|---|
| Expected paid cycles | 16.67 | 8.33 |
| Lifetime contribution USD | 213.83 | 106.92 |
| Lifetime contribution ÷ CAC | 4.75 | 2.38 |
| Simple payback cycles | 3.51 | 3.51 |
| Expected cohort payback cycle | 4 | 5 |
Collected cash and earned revenue differ. A prepaid bundle can fund operations while leaving unfulfilled obligations. IFRS 15’s overview ties revenue to satisfied performance obligations where applicable; finance must set the actual treatment. Do not recognise a whole prepaid shipment programme merely because the charge succeeded.
A future billing date is planned demand, not a paid order or a guaranteed shipment. Build demand by date, SKU, quantity and supplier lead time, separating confirmed orders, scheduled renewals, skips, cancellations, holds and new acquisition assumptions. Keep physical available-to-promise stock distinct from a purchasing forecast.
A separate teaching planning example starts with 2,000 monthly plans, each requiring one unit. Assume 6% cancel before the cycle,8% of the survivors skip, and 150 additional orders are already paid and eligible to ship. Conditional first-attempt payment success for eligible existing renewals is 95%. The expected values below are fractional planning quantities, not fractional parcels.
Potential demand is about 1,880 units if later payment recovery succeeds; first-pass paid demand is about 1,793. Neither is a purchase order. Model recovery timing, supplier delays, seasonality, new buyers, correlated failures and safety stock separately. Do not buy for the paid scenario and promise every recovery immediately.
| Planning step | Calculation | Expected units |
|---|---|---|
| Existing plans | 2,000 | 2,000 |
| After assumed cancellations | 2,000 × 0.94 | 1,880 |
| After assumed skips | 1,880 × 0.92 | 1,729.60 |
| Potential incl.150 paid new orders | 1,729.60 + 150 | 1,879.60 |
| First-pass paid incl.150 new orders | 1,729.60 × 0.95 + 150 | 1,793.12 |
Create a durable cycle/order identity so concurrent scheduler runs cannot create two renewals. Recheck the latest effective skip, cancellation, address, price and consent before commitment. Define how a cancellation racing a charge is handled and show its effective date; the customer needs an outcome, not a timestamp with no meaning.
Choose an explicit inventory/payment policy. A bounded pre-charge reservation can protect scarce stock, but reserving every renewal weeks early can starve normal sales. A charge-first design needs a genuine stock check, truthful delivery promise and controlled refund/backorder route if stock cannot be secured. No single order of operations fits every product.
In the illustration, the fulfilment release gate requires both acceptable payment evidence and a valid reservation for the agreed goods. Pending or unknown payment stays held. Coordinate reservation expiry with payment recovery: releasing stock while a delayed success can still release shipment creates another oversell risk. Recheck and reconcile before release. Packing, dispatch, delivery and refunds remain separate facts.

Stripe’s current retry documentation describes provider-specific decline, payment-method and retry limits; apply the actual account/method contract. Customer authentication or a replacement method may be required. A hard decline is not fixed by repeatedly charging the same unusable method. Do not run a second independent retry engine beside the provider’s collection schedule.
Own the unresolved invoice/cycle, next permitted attempt, maximum age/attempts and customer notification. For retryable technical failures, use bounded backoff with jitter as appropriate. Notify clearly and offer a secure update route. Set stock holds and grace periods from supply, customer terms, network rules and law; a universal one/two-week range or payday guess is not a policy.
An API timeout can hide success. Idempotency rules have scope and retention limits; keep your own durable cycle/payment mapping and query the original result before creating a replacement charge. Webhook delivery can duplicate or arrive out of order: authenticate, deduplicate and verify current authorised state. An event receipt alone must not release another parcel.
If the payment succeeded but shipping failed, recover fulfilment, not collection. If the cycle ends unpaid, release only reservations that can safely be released and follow the declared subscription policy. A paused billing state is not necessarily cancelled, refunded or forbidden from all future invoice creation. Show what will actually happen next.
Make skip, pause, swap and cancel easy to find. Show which order is affected, any price change, the next bill/delivery and whether an already committed parcel can still be stopped. Distinguish stopping future renewal from withdrawal, returning goods and receiving a refund. Record the actor and effective outcome, and send a durable confirmation without exposing card or address details to unauthorised staff.
Legal snapshot reviewed 5 November 2026, not a complete country checklist. US: the February 2026 Federal Register action restored the pre-amendment rule after the 2024 amendments were vacated. The March 2026 ANPRM is a consultation, not a replacement final rule; it explains continuing ROSCA disclosure, consent and simple stop-charge duties. Check state/local rules too.
EU: Directive 2023/2673 sets 19 June 2026 application of national measures; the online withdrawal function serves an applicable withdrawal right, not every ongoing subscription termination. Check national implementation and scope.
UK: October 19 draft guidance targets qualifying new contracts from 1 January 2027, subject to Parliamentary approval of draft regulations. This supersedes the older spring 2027 planning assumption; existing consumer duties remain relevant.
Translate those obligations into concrete acceptance checks for the markets served: consent evidence, notices, effective cancellation, cooling-off where applicable, refund handling and support access. An attractive cancel button is not proof that queued charges and warehouse work were actually stopped.
Start with a bounded product/customer group chosen for known demand, margin and supply. Rehearse successful renewal, skip/charge race, changed address, unavailable goods, authentication, unknown payment, duplicate webhook, partly shipped cycle and refund. Only one process may release a real charge or shipment. Verify record/action scope in account pages, support tools, exports and AI.
Track distinct eligible renewal invoices, first failures and eventual paid recoveries using a declared observation window; count invoices, not repeated attempts. Define voluntary/involuntary churn and treatment of pause/reactivation using the same starting cohort. Report on-time promised deliveries, stock holds, contribution after real adjustments and cumulative cohort cash alongside modelled LTV.
A lower churn rate can help, but it is not automatically cheaper to achieve than lower acquisition cost. Compare interventions, incremental costs and measured results. A skip can preserve a relationship while reducing current-cycle contribution; it is not free recovered revenue.
Back at the launch desk, the useful dashboard distinguishes agreements, due cycles, collected payments, reserved goods and completed deliveries. Customers can see and change the next cycle, and staff can explain every held renewal. Ask any supplier—including StoreConsole—to prove that journey and its failure handling in the version and enabled modules being offered.
Reviewed 5 November 2026. Anichur Rahaman, creator of StoreConsole. Stories, costs, churn and demand scenarios are illustrative; no customer result, provider price or universal legal-compliance claim is implied.
Tentang Penulis
Anichur Rahaman
Lanjut Membaca