
An online grocery platform needs 4 things an ordinary ecommerce storefront does not do: charge for items whose price is only known once they are weighed, handle substitutions for items that run out between order and picking, sell delivery slots that are capped by how many orders your pickers can fill, and give those pickers an app of their own. The storefront is the part you can buy. These 4 are the part you usually build, and they decide whether a grocery business online keeps its margin and its ratings. At Zyneto's published estimates, a single-channel launch is 700 to 1,400 hours, of which the picking, store app and returns module alone is 290 to 680.
Most grocers start by choosing a commerce platform and a theme. That gets you a catalogue and a checkout, and nothing that runs the store. The ordinary failure is a Saturday morning with every slot sold, half the pickers off sick, and no way for the website to know: orders go out late or incomplete, and the substitutions nobody designed decide the reviews.
A bunch of bananas costs what it weighs. Loose produce, meat, cheese and deli items are sold per kilogram, so the price at checkout is an estimate. Ocado's terms, for example, price items sold by weight per kilogram and show customers an indicative guide price and weight. The final amount is only known when someone at the store puts the item on a scale.
So the payment has to be authorised high and captured later. The platform places a hold on the card for more than the estimate, then captures the real amount after picking. Instacart's help pages say its temporary holds cover added items, replacements and weighted items, can exceed the order total, and are released after delivery. For weighted items paid with EBT benefits, it holds 10 per cent extra.
The card networks limit how long and how far you can go. Stripe's documentation, read on 7 October 2026, says an online card authorisation is valid for 7 days on Visa, Mastercard, Amex and Discover, or up to 30 days with extended authorisation. Overcapture, capturing more than was authorised, is allowed up to 15 per cent above the hold by Visa for most categories and by Amex for grocery and retail. In the UK and EU, strong customer authentication makes overcapture harder, so the safer design authenticates the highest amount you expect to charge.
Orders booked days ahead need a second hold. A slot booked for next week can outlive a 7 day authorisation. Instacart says that when an order is placed days in advance and the first hold expires, it may place a second one. Your platform needs the same rule, and a message the customer understands when a card declines the second time.
Cash on delivery changes the problem, not the work. At Al Amri Express, a grocery delivery business in Oman that we built for, a shopper can reject 1 substituted item at the door rather than the whole order. The rider's app has to reprice the amount collected on the spot, and the ledger has to agree with it at the end of the day.
Every grocery order will have items missing. Stock changes between the moment a customer orders and the moment a picker reaches the shelf. What the platform offers instead decides how the customer feels about the whole order.
Instacart lists bad substitutions as a business risk. Its quarterly filing for the period to 30 June 2026 names poor substitutions for out-of-stock items and wrong picks among the risks to customer demand. A company handling 90.3 million orders a quarter does not list that lightly.
Let customers decide before they pay. The useful rules are per item: allow a substitute or not, the customer's preferred alternative, and a price ceiling. Ocado lets customers reject a substitute at the door without being charged, and charges an accepted substitute at its own full price. Whatever your rule, the customer should see it at checkout, not discover it at the door.
Design this first, not last. Looking back on Al Amri Express, we would design the substitution flow before checkout rather than after. It moves ratings more than delivery speed does, and deciding it late means fitting the answer around code that already exists.

The slot limit is set by the pickers. Most platforms cap slots by the number of vans or drivers. In grocery, the constraint that is oversold first is usually picking: walking the aisles for 40 or more items, checking dates, weighing produce. Slots oversold against the pickers actually on shift is one of the failures our retail page lists for grocery. Ocado.com's average basket in the half year to May 2026 was 44.3 items. A slot that sells more orders than your pickers can fill is oversold whether or not there is a free van.
Cost per order hardly moves; basket value does. Picking, packing and delivery time are close to fixed per order, whether the basket holds 3 items or 20. Revenue grows with basket size while cost grows with order count. The levers are batch picking, clustering drops by area, and minimum order values, not more vans.
Capacity has to change during the day. Sick days, a delayed supplier delivery or a late van all cut capacity after slots are sold. The platform needs a way for the store manager to close slots and to see which booked orders are at risk, not just a static calendar set once a week.
Express and scheduled delivery are different operations. A 2-hour slot from a store can share pickers with scheduled orders. A 15-minute promise needs stock in a dark store close to the customer and its own picking flow. That is a different build, with different economics, covered in our quick commerce app guide.
Units are part of the price. In the UK, the amended Price Marking Order in force since 6 April 2026 applies to online sales as well as shops. It requires unit prices per kilogram or litre, and when a product has a loyalty price as well as a normal price, both prices and both unit prices must be shown with the conditions, with neither given more prominence. Your product data needs net quantity and unit as structured fields, not text in the title.
India puts compliance on the listing. Under FSSAI's e-commerce rules, food sold online needs a central licence, sellers must display their FSSAI licence or registration, packaged food listings need a clear picture of the label's principal display panel, and food must reach the customer with at least 30 per cent or 45 days of shelf life left. The Legal Metrology rules require most pack declarations on the listing, including net quantity, MRP and country of origin for imports. From 1 July 2027, listings of imported products must also have a searchable, sortable country-of-origin filter.
The UAE limits returns on short-life food. Federal Decree-Law 14 of 2023 removes the consumer's general right to return food and consumer goods that expire within 3 weeks, though defective or not-as-described goods can still be returned. Your returns flow should know each product's shelf life.
Search has to understand how people shop for food. Grocery customers arrive knowing what they want and search for it, often in 2 languages. At Al Amri Express, catalogue search runs on Elasticsearch so that Arabic letter variants are normalised and a query in Arabic or English returns the same shelf. One-tap reorder of a previous basket is the most valuable screen in the app, because weekly shops repeat.
The storefront must know what is on the shelf, not what the system thinks is there. If your stock figure updates overnight, the website sells items that ran out at lunchtime, and every one becomes a substitution or a refund. Zyneto's published approach for quick commerce is inventory sync to the storefront in under a minute. For store-picked grocery, the minimum is to update stock from the till and from the picking app as it happens.
Pickers need their own app. A picker works through a list on a shared device, with gloves on, often in a chiller with poor signal. The app needs a route through the aisles, barcode scanning, weight capture for loose items, a substitution step that applies the customer's rules, and a way to keep working offline. At Al Amri Express the staff app is a separate application, with roles for admin, packers and delivery staff, because the audiences share almost no screens and release on different schedules.
Dates matter on the way out. First-expiry, first-out picking and a shelf-life check at the packing step stop short-dated food reaching customers. In India, that check is a legal requirement, not a courtesy.
Store-picked or warehouse-picked is a business decision with software consequences. Instacart's shoppers pick from retailers' own stores. Ocado picks from dedicated warehouses. Store picking starts faster and shares stock with walk-in shoppers, which is exactly why stock accuracy is harder. A dedicated site gives control at a higher fixed cost.
Buy the storefront and checkout. A hosted or composable commerce platform gives you catalogue pages, a cart and payments for a monthly fee. Shopify Plus, for example, starts at $2,300 a month on a 3-year term or $2,500 on a 1-year term. Do not pay developers to rebuild a checkout.
Buy payments and tax. Use your payment provider's hosted fields so card numbers never touch your servers. Stripe's standard US price is 2.9 per cent plus 30 cents per domestic card payment; Razorpay's standard rate in India is 2 per cent plus GST. Buy tax calculation if you sell across markets.
Build what makes you a grocer. The picking app, slot capacity, the substitution rules, weighed-item payments and the stock sync to your tills are specific to how your stores work. No platform default matches your floor, your devices or your suppliers.
Part | Build or buy | Why |
Storefront, cart and checkout | Buy the core | A solved problem with a monthly price |
Payments and card data | Buy | Hosted fields keep card numbers out of your systems |
Tax across markets | Buy | Rate tables age badly when hand-coded |
Search and merchandising | Buy the engine, build the ranking | Grocery relevance and bilingual search are yours |
Substitution rules | Build | They encode your range and your customers |
Slot capacity and dispatch | Build | Capacity is your pickers and your vans |
Picking and store app | Build | Your devices, aisles, chillers and network |
Weighed-item authorise and capture | Build on the provider's API | The rules are yours; the card handling is theirs |
Zyneto publishes hours by module for retail and grocery. At $40 to $100 an hour by role, blending to $60 to $70 for a mixed team, the modules a grocery platform draws on are priced as follows on our retail page.
Module | Published hours |
Discovery and integration contracts | 80 to 180 |
Catalogue, product information, search and merchandising | 220 to 520 |
Storefront, checkout, payments and tax | 160 to 360 |
Subscriptions and failed-payment handling | 120 to 300 |
Order management: available stock, routing and allocation | 250 to 600 |
ERP, till and inventory integration | 330 to 870 |
Picking, store app and returns | 290 to 680 |
A grocer does not need every module at full size. A single-channel launch is 700 to 1,400 hours, roughly $42,000 to $98,000 at the blend. A mid-market build covering web, tills, 1 ERP, click and collect and returns is 1,800 to 3,500 hours, roughly $108,000 to $245,000. The largest swing is the till and ERP integration: a grocer whose stock lives in a modern system with an API sits near the bottom of that range, and one with a decade-old back office sits near the top.

Running costs grow with orders. On 7 October 2026, Google's Routes API charged $5 per 1,000 route requests after 10,000 free a month, or $10 for traffic-aware routing. Mapbox's Directions API charged $2 per 1,000 after 100,000 free. Twilio charged $0.0083 per SMS segment in the US plus carrier fees, and $0.0832 in India. Add your payment fees and your platform subscription, and model them per order before launch.
Online is a large and growing share of grocery in the UK. Nielsen data cited in Ocado's half-year results put online at 13.4 per cent of the UK grocery market in 2026, up from 12.5 per cent a year earlier. Ocado.com alone averaged 554,000 orders a week with a basket of £126.55, and says 99 per cent of items were delivered as promised.
Store picking works at scale in the US. Instacart reported 90.3 million orders and $10.35 billion of gross transaction value in the quarter to 30 June 2026, with an average order value of $115. Its model is shoppers picking from retailers' own shelves, not dark stores.
Speed alone has not been enough. Getir left the UK, Germany, the Netherlands and the US in April 2024 and closed Gorillas, which it had bought in 2022, as reported by Tech.eu at the time. Fast delivery without the economics behind it did not last in those markets.
In the Gulf, grocery is where delivery platforms are investing. talabat reported $2.9 billion of gross merchandise value in the second quarter of 2026 and a 2026 plan to invest $120 million in grocery, partly to add talabat mart dark stores. A grocer competing with that does not need to match its network. It needs an app that gets a weekly shop right.
Start with scheduled delivery from 1 store. Our mobile app development cost guide explains how a first release is sized. Scheduled slots give the pickers time and the platform time to learn. Prove substitution rules, weighed-item payments and slot capacity there before adding stores or faster delivery.
Ship the picking app with the storefront, not after it. A customer app that takes orders the store cannot pick well is worse than no app. If you can run the first weeks with a simple staff app, do; if you cannot, the staff app is phase one.
Measure the 3 numbers that matter. Substitution and missing-item rate, orders delivered in their slot, and contribution per order after picking and delivery costs. If those 3 are right, growth is a question of adding stores. If they are wrong, growth multiplies the loss.
Add express delivery only when the scheduled operation is boring. Quick delivery needs stock positioned near customers and its own picking flow. It is an extension of a working grocery platform, not a replacement for one. A storefront sells groceries online. The weighed-item payments, the substitutions, the slot limits and the picking app are what deliver them.
Beyond a normal storefront: payments that authorise a higher amount and capture the final price after weighed items are picked, substitution rules the customer sets per item, delivery slots capped by picking capacity, a picking app for store staff, stock updated from tills as it changes, and product data that meets local labelling rules such as UK unit pricing or India's FSSAI display rules.
At Zyneto's published rates of $40 to $100 an hour, blending to $60 to $70, a single-channel launch is 700 to 1,400 hours, roughly $42,000 to $98,000. A mid-market build with tills, an ERP, click and collect and returns is 1,800 to 3,500 hours. The picking, store app and returns module alone is 290 to 680 hours.
They place a card hold above the estimated total and capture the real amount after picking. Instacart says its holds cover weighted items and replacements and can exceed the order total. Card rules limit this: Stripe documents a 7 day validity for online authorisations, up to 30 days extended, and overcapture of up to 15 per cent on some networks and categories.
Buy the core: storefront, checkout, payments and tax. Build the parts that are specific to your stores: the picking app, slot capacity, substitution rules, weighed-item payment logic and stock sync with your tills. Shopify Plus, for example, starts at $2,300 a month on a 3-year term, which is far cheaper than rebuilding a checkout.
By picking capacity first, then vehicles. A weekly shop of 40 or more items has to be walked, checked for dates and weighed, so slots should be capped by how many orders your pickers can fill in each window, and store managers need a way to reduce capacity during the day when staff or stock change.
E-commerce food businesses need a central FSSAI licence. Sellers must display their licence or registration, packaged food listings need a clear image of the label's principal display panel, and food must be delivered with at least 30 per cent or 45 days of shelf life remaining. Non-compliant products must be delisted immediately.
Online grocery usually means scheduled delivery of a full weekly shop, picked from stores or warehouses. Quick commerce promises delivery in minutes from small dark stores stocked with a few thousand fast-moving items. They need different stock positioning, picking flows and unit economics, though they share much of the platform.

Vikas has around fifteen years of experience building software and now builds generative AI systems at Zyneto. His work covers retrieval augmented generation, agentic AI, knowledge graphs, AI memory, and the evaluation and guardrails that decide whether any of it is safe to put in front of customers. He has shipped enterprise copilots, document AI, chatbots and predictive analytics for e-commerce, fintech and marketing teams, and works day to day in Python, JavaScript and SQL. He follows multimodal models, business process automation and enterprise AI security closely, and mentors engineers moving into AI. He writes about architecture, inference cost and the failure modes that only show up at production scale.
Share your details and we will talk soon.
Be the first to access expert strategies, actionable tips, and the trends actually shaping the digital world. No fluff - just practical insights delivered straight to your inbox.
Dive into our blog and stay ahead of the curve with expert perspectives, future-ready trends, and tech tips written for decision-makers and doers alike.