Skip to content
CodingclaveUAE

For baqalas, supermarkets and dark stores

Grocery app development in Dubai that charges for what was actually picked

Take delivery orders from your own customers on WhatsApp, a web store or an app, and charge each card for what the picker actually weighed, swapped or left out.

From AED 4,900excl. VATSee pricing →

  • Card charged for the weighed total
  • Shopper sets the swap rule per item
  • Your customers, not a platform's
  • Per-kg prices for MoE Decision 245
  • Arabic search: laban, leben and لبن

How should your customers order from you?

  • Free scoping call
  • Fixed price in AED
  • No obligation

Your details go only to Codingclave's team in India so we can reply — see our privacy policy. Prefer chat? WhatsApp us.

Replies come from Ashish or the team.

Overview

The lamb weighs 1.14 kg, not 1 kg, the laban is out: the card is held at checkout and captured after picking, so neither becomes a refund. A baqala can start on a WhatsApp bot; a supermarket starts with a web store. Both take 2⁠–⁠6 weeks.

By Ashish Sharma, founder · Updated 12 October 2026

Quick answer

Which grocery build should a Dubai shop start with, and what does each one cost?

Start with the smallest build that takes a paid order. For a baqala that is a WhatsApp order bot, on our AED 4,900⁠–⁠59,000 chatbot band. A supermarket starts with a web store with delivery slots and zones, at AED 5,900⁠–⁠49,000. A customer app is AED 17,000⁠–⁠108,000, with the picker app priced separately, and a dark-store platform AED 24,500⁠–⁠245,000. Product count and weighed lines move the price inside a band; POS sync, Arabic screens and gateway set-up are quoted on top.

  • Mostly regulars ordering by message: start on WhatsApp; a baqala delivery app can wait.
  • Selling by weight: get the card hold right before the design.
  • Already on InstaShop or talabat: keep the listing, add your own channel for repeat baskets.

01of 10

The first build for a baqala, a supermarket, a dark store and a supplier

Most grocers don't need an app first. Build whatever takes a paid order soonest, and add apps when repeat customers ask for them.

First build by kind of shop, from our AED price list (excl. VAT, 11 Oct 2026)
GrocerBuild to start withWhat it handles on day oneAED bandBand timeline
Baqala or neighbourhood grocerWhatsApp order botList or catalogue order to a screen in the shop, status repliesAED 4,900⁠–⁠59,0002⁠–⁠6 weeks
Supermarket, one to three branchesWeb storeSlots per branch, zones, weighed-line buffer, substitutionsAED 5,900⁠–⁠49,0002⁠–⁠6 weeks
Supermarket or chain moving to appsCustomer app, with the picker app as its own lineSaved lists, reorder, swap settings per itemAED 17,000⁠–⁠108,000 (customer app)4⁠–⁠12 weeks
Dark store or multi-store marketplaceOperations platformDelivery promise set by capacity, dispatch, merchant portalAED 24,500⁠–⁠245,0006⁠–⁠16 weeks
B2B food supplierWeb store with account pricingCase quantities, minimum order, repeat ordersAED 5,900⁠–⁠49,0002⁠–⁠6 weeks

Credit limits, statements and van routes push the supplier row into the AED 24,500–245,000 custom-software band. POS sync, Arabic screens and gateway set-up are priced per row once I've seen your setup.

A baqala's bot turns WhatsApp messages into orders on a screen by the till (AI and WhatsApp chatbots, Meta's message charges included). For a supermarket, grocery website development comes before the apps: no App Store review, and the catalogue moves across later.

Send me your product count on WhatsApp and I'll tell you which row you're in.

02of 10

Charging a card when the meat is weighed after checkout

The customer orders 1 kg of lamb; the butcher cuts 1.14 kg. Charge in full at checkout and you either absorb the extra 140 g or send a charge nobody expected. Instead, authorise at checkout and capture after picking: on Stripe with capture_method=manual, on PayTabs with an "auth" and then a "capture".

When I price a grocery checkout, this is the first thing I check. If your gateway can't hold and partially capture on your account, the checkout works differently, and I'd rather know on day one.

  • Size the hold

    Buffer the weighed lines only; packet rice has a fixed price. Show it as its own checkout line ("Held for weighed items, released after picking: AED 12.00") so the bank alert surprises nobody.

  • Keep slots inside the hold window

    A lapsed hold on Stripe cancels the payment, so plan to the shortest hold that applies to how you authorise. A Friday order for the following Thursday is already close to a 7-day hold.

  • Capture at picking, or at the door

    Capturing after picking is simpler. Capturing at handover means a refused item just lowers the capture, with no refund, if handover is still inside the hold. Most Stripe payments allow one capture, so going over the hold needs a second payment the customer approves, or you absorb it.

  • Worked example: an AED 240 basket

    AED 80.00 of it is weighed (lamb, hammour, bananas). A 15% buffer on those lines adds AED 12.00, so the hold is AED 252.00. The picked total is AED 247.60: capture that, and AED 4.40 is released. No refund.

Authorise now, capture the picked total: what the providers document (read 12 Oct 2026)
ProviderHold now, charge laterCharge less than heldHow long the hold lastsCheck before the build
StripeYes, capture_method=manualYes; the rest is released automatically. Most payments allow one captureUsually 7 days if held at checkout; 4 days 18 hours for a later Visa hold on a saved card. Expiry cancels the paymentOvercapture only on certain cards; not checked for UAE accounts
PayTabsYes: "auth", then "capture" with the original tran_refYes, up to the uncaptured amount; void possible inside the holdSet by the issuing bank, typically 7⁠–⁠14 daysAvailability on your profile, confirmed with PayTabs before the build
Telr, N-Genius, Tabby, TamaraConfirm on your accountConfirm on your accountAsk your providerNot verified by us; checked with your provider before the checkout is built, instalments included
Cash on deliveryNo holdRider collects the picked totaln/aFloat and settlement: food delivery apps

Gateway fees are on our e-commerce cost page; the set-up is under payment gateway integration. Still choosing a provider? Read PayTabs vs Telr vs MyFatoorah and test for partial capture. Customer money settles to your own merchant account, never through us.

Selling by weight? Ask me to check your gateway.

03of 10

When the shelf is empty, the customer decides the swap

Substitutions go wrong when the picker decides alone: full-fat laban swapped for low-fat looks helpful in the aisle and wrong at the door. The customer sets a rule per item, the store sets a default for blanks, and the picker's screen follows both.

Substitution settings and what each one charges
Customer's setting for the itemWhat the picker's screen doesWhat the card is charged
Replace with similarSuggests same-category items at or under the original unit priceThe picked item's price, capped by your ceiling rule
Replace with a named alternativeShows the backup product the customer choseThe backup's price
Don't replaceMarks the line short, no promptLine dropped; its share of the hold is released
No setting chosenSends an in-app approval, then calls if nobody replies by your timeoutThe store default once the timeout passes

Above your price ceiling, the screen asks the customer before a pricier substitute goes out. An item refused at the door is recorded with a photo: refunded if you captured at picking, never charged if you capture at handover. Before launch, agree who gets the weekly list of products pickers couldn't find, and write the ceiling down as a number.

Have a project in mind?

Send a few lines on WhatsApp or get a fixed AED quote.

04of 10

Five UAE rules that reach a grocery catalogue and checkout

Each rule ends up as something in the build: a field on the product, a flag on a price change, or a line at checkout. This is a build translation, not legal advice.

UAE rules and what each changes in the build (sources read 12 Oct 2026)
RuleWhat it saysWhat it changes in the app
MoE Decision 245 of 2024 (Ministry of Economy), in force 2 Jan 2025Retailers and online merchants with premises over 1,000 sq m show unit prices in standardised unitsPrice per kg, litre or piece on every product
MoE Decision 246 of 2024Ministry approval before prices rise on cooking oil, eggs, dairy, rice, sugar, poultry, legumes, bread or wheat, at least six months apart; some related items and cleaning products tooCategory flag; a higher POS price waits for review
Dubai Executive Council Resolution 124 of 2023All single-use bags banned since 1 June 2024; Styrofoam containers since 1 Jan 2025; plastic cutlery and plates since 1 Jan 2026Bag line offers a reusable bag or none
Federal Ministerial Decision 380 of 2022From 1 Jan 2026, single-use bags of any material banned, paper under 50 microns included; Gulf News reports thin bags wrapping fresh food such as meat, vegetables and bread are exemptThin roll bags for fresh food; Dubai Municipality's page lists no exemptions, so confirm for Dubai
Dubai Municipality guideline on food transportation and delivery vehicles (updated Feb 2024)Requirements for vehicles that carry and deliver foodOrders tagged by temperature zone, sent only on a vehicle permitted for them

Three things we could not pin down. How the 1,000 sq m test applies to an online-only seller isn't stated, so we add the field anyway. No official page we read gives a fine. Whether grocery riders need RTA's delivery-platform permit is unconfirmed, so ask RTA. Shoppers can report a wrong price to the Ministry on 800-1222.

Adding Abu Dhabi or Sharjah is a new zone in the admin, opened once we've checked that emirate's rules. Send me your product list on WhatsApp and I'll check it against Decisions 245 and 246.

05of 10

Pick the frozen lines last

A picker who takes the ice cream first and the rice last hands over soup. Mixed bags cause the complaints hardest to answer: warm yoghurt, bread flattened by a frozen chicken, and no record of either. A picker app earns its keep here by fixing the walking order and the bagging.

  • Tag every product at import

    Ambient, chilled or frozen. The tag drives the pick route, the bag label and the vehicle.

  • Route ends at the freezer

    Ambient, then chilled, then frozen, in each branch's aisle order.

  • One zone per bag, photo at the door

    Each bag carries the order number and its zone, and the rider takes a timestamped photo of the cold bags at handover, so a melted ice cream complaint has a record.

  • Frozen goes only where the permit allows

    Which Dubai Municipality permit your bikes, cars or vans need is confirmed with DM for your fleet. The admin stores each vehicle's permit and expiry, and frozen lines go only on one that covers them.

The checklist takes its temperatures from DM's guideline and your vehicle permit, not from this page, so a change means editing one setting.

06of 10

Your POS export isn’t a catalogue yet

Most of the work on a supermarket app is the catalogue. POS names were cut short to fit a receipt, there are no photos, and nothing says which lines go in the freezer.

  • What each product record holds

    Arabic and English names and unit labels, price per kg, litre or piece, temperature tag, barcode or PLU, the Decision 246 flag and a photo. Gaps show on an import report.

  • Variable-weight barcodes from the deli scale

    The scale prints a barcode carrying the item code and the weight or price. GS1 reserves prefixes 20 to 29 for these in-store EAN-13 numbers and leaves the layout to local rules, so we read a sample label from your scale first. The picker's scan feeds the order line and the capture.

  • Arabic search that finds laban

    Shoppers type لبن, laban and leben for the same shelf, khubz for bread and دجاج for chicken. Synonym lists per category grow from your search logs, and right-to-left screens get a bilingual QA pass.

  • POS or ERP sync, quoted per vendor

    It depends on what your vendor's API allows, so no POS is named here as supported. Whether yours connects, and how often it refreshes, goes into the scope once I've read the vendor's documentation.

Send me your POS export as it is, cut-off names and all. A tidy sample tells me nothing; the real file sets the timeline. How we design two-language screens: UI and UX design in Dubai.

07of 10

Selling through InstaShop, talabat or noon, and running your own channel too

Most Dubai grocers already sell through InstaShop, talabat or noon, and keeping that listing is usually right. But know who else is on the screen: talabat sells from its own talabat mart dark stores beside the local shops it lists. Its grocery and retail sales reached USD 788m in Q4 2025, up 45%, rising from 27% to 32% of everything it sells, the latest split published. In August 2026 it said USD 120m was earmarked this year to scale talabat mart and talabat pro, among other plans.

A listing on a delivery app against your own channel
QuestionListed on InstaShop, talabat or noonYour own web store or app
Whose customer contact it isThe platform's accountYours, for reorders and saved lists
Who picks and deliversSet by your merchant agreement; check who supplies pickers and riders before you listYou
Who else is on the screenOther shops and, on talabat, its own talabat mart stockNobody
What it costs youCommission and fees set in your merchant agreementBuild band plus gateway fees (fee tables)

My judgement, not data: do both, and aim your own channel at repeat baskets. A listing finds new shoppers; saved lists and a WhatsApp reorder keep the household that buys the same 30 items every Thursday. A many-shop app like InstaShop is the multi-store row in the first table. Any feed to a platform is a separate written line.

Have a project in mind?

Send a few lines on WhatsApp or get a fixed AED quote.

08of 10

Is a dark-store app a different build from a supermarket app?

Partly. The shopper sees much the same app. Behind it, three things change, and the biggest is that you sell a delivery time, not a slot.

  • Narrower range, fixed bins

    Fewer lines, kept in stock, so substitutions should come up less often; every product has a bin, so the pick route is calculated.

  • A promise per zone, not booked slots

    Capacity sets the promise: it widens when pickers are busy and shrinks when the queue clears.

  • Several sites, one admin

    Stock transfer, reports per store, and a merchant portal once other brands sell through you.

Running your own dark store sits in the custom-software band, AED 24,500–245,000 over 6–16 weeks, apps priced separately; what moves it inside the band is on custom software and ERP costs in Dubai. Start with one store and one zone, which is what startup MVP development in Dubai is for.

09of 10

Grocery app prices on seven competitor pages

We read seven UAE-facing grocery app pages on 12 Oct 2026. Three print a price, and only one explains what happens when the meat weighs more than ordered.

Grocery app prices on seven UAE-facing pages, as read on 12 Oct 2026
PublisherGrocery price publishedTimeline statedWhat we noticed
TechGropseAED 55,000⁠–⁠91,750 MVP; AED 91,750⁠–⁠550,500 mid; AED 550,500+ enterprise8⁠–⁠10, 10⁠–⁠20 and 20+ weeksSame bands as its food-delivery page; its own phases add up to 11⁠–⁠16 weeks, longer than its 8⁠–⁠10 week MVP
ApptunixUSD 5,000⁠–⁠10,000+ MVP up to USD 35,000⁠–⁠45,000+ enterprise: about AED 18,400 to AED 165,300+ at 3.67254⁠–⁠8 up to 20⁠–⁠32 weeksUSD only, every tier open-ended; FAQ says 8⁠–⁠32 weeks
Esferasoft (blog, 31 Jul 2025)AED 60,000⁠–⁠180,000 for the UAEMVP in 2⁠–⁠3 monthsAED and USD side by side, no update date
ToXSL, Magneto IT Solutions, HelloPixels, mobileappdevelopment.aeNoneToXSL 4⁠–⁠12 weeks, Magneto 6⁠–⁠10, the others noneMagneto describes weight top-ups, but not the card hold

A price only compares when it names the product count, the picker app and how weighed items are charged. Ours below name all three.

How this page was researched: from the Ministry of Economy and Dubai Municipality pages, Gulf News, Stripe and PayTabs documentation, GS1 and talabat's results, read on 12 Oct 2026 alongside the competitor pages.

10of 10

Questions to put to any grocery developer, us included

We found no independent ranking of grocery app developers in the UAE; the "top companies" lists we saw sit on community sites where anyone can post. Ask these instead, of us or anyone.

  • Whose name is on the merchant account and the app-store listing?

    Yours. We build on your licence, bank, gateway, Apple and Google developer accounts, domain and hosting, and hand over every login. Code and IP pass to you with the final payment.

  • How is a weighed line charged?

    If the answer skips the hold and the partial capture, the plan is to charge the full basket and refund later. That version fills your inbox.

  • What happens to a declined substitution?

    Its share of the hold should drop out on its own, with no manual credit. We check it on the live test order we place together before handover.

  • Where do the unit-price and price-control fields live?

    On the product record. "In the description" means they haven't read Decision 245.

  • Who answers when the 7 am slot goes wrong?

    Not me at that hour, and the build shouldn't need me. I'm on WhatsApp (+91 92771 84741), email or video 08:30–17:30 Gulf Standard Time, Monday to Saturday. Early slots run before that, so the store admin lets your team close a slot, pause a zone, mark stock out and refund without us. Other hours only by written scope. How remote work runs: hiring us from the UAE.

Pricing in AED

From WhatsApp bot to dark store: the grocery bands

Grocery quotes grow wherever a rule wasn't written down: the hold buffer, the substitution ceiling, who refunds a missing line. I price each grocery build myself, and those rules go into the written scope. Once signed, that price holds unless the scope changes. AED, excluding VAT; market-wide app prices are in mobile app development cost in Dubai.

  • AI chatbot

    AED 4,900 – AED 59,000

    Excl. VAT

    AI chatbot (website or WhatsApp) · Typical timeline: 2–6 weeks


    For a baqala: a WhatsApp bot taking a catalogue tap or free-text list, posting to a screen in the shop. The band also covers bots that read messy lists and sync stock; scope sets the figure.

    Get a quote for this plan
  • E-commerce store (Shopify, WooCommerce or custom)

    For a supermarket or supplier: slots, zones, the weighed-line buffer, swap settings, unit prices and the bag line, plus gateway-ready pages on refunds, delivery, terms and contact.

    AED 5,900 – AED 49,000

    Typical timeline: 2–6 weeks

    Get a quote for this →
  • Mobile app (iOS + Android, Flutter or React Native)

    For a chain moving to apps: the customer app on iOS and Android, with saved lists, reorder and per-item swap settings.

    AED 17,000 – AED 108,000

    Typical timeline: 4–12 weeks

    Get a quote for this →
  • Custom software, portal or SaaS

    For a dark store or multi-store operation: dispatch, capacity-based promises, merchant portal, stock transfer and reports.

    AED 24,500 – AED 245,000

    Typical timeline: 6–16 weeks

    Get a quote for this →
  • Picker app

    Scan-to-pick, temperature-zone route, weighed capture from scale labels and swap approval, priced once I know your branches and shelves.

    Quoted after a short discovery call

    Fixed in writing once the scope is agreed

    Get a quote for this →
  • POS or ERP stock and price sync

    Depends on your vendor's API. Includes the Decision 246 flag on price rises.

    Quoted after a short discovery call

    Fixed in writing once the scope is agreed

    Get a quote for this →
  • Gateway authorise-and-capture set-up

    Stripe or PayTabs; for Telr, N-Genius, Tabby or Tamara, support and the hold window are confirmed with the provider first.

    Quoted after a short discovery call

    Fixed in writing once the scope is agreed

    Get a quote for this →
  • Arabic catalogue, right-to-left screens and QA

    Arabic names and unit labels, search synonyms, right-to-left screens and the bilingual QA pass.

    Quoted after a short discovery call

    Fixed in writing once the scope is agreed

    Get a quote for this →
  • Fixed price in AED
  • Free scoping call
  • No obligation

Quoted lines are priced after a short discovery call, once I've seen your product export and gateway. Invoices are in dirhams, cleared by bank transfer straight into our AED account. Our bugs: free fixes for six months after launch; then app maintenance is AED 1,500–4,500 a month. You contract with Codingclave Development LLP in Lucknow, India; we have no office, entity or phone number in the UAE. To check us: 4.9 on Google (76 reviews), 200+ projects since 2017, Top Rated on Upwork, founder-led delivery (reviews, UAE services).

Prices are in UAE dirhams (AED) and exclude VAT. Project prices are converted from our GBP price list at GBP 1 = AED 4.90 (11 October 2026) and rounded; monthly plans are set in AED. Codingclave is an India-based supplier and is not registered for UAE VAT. VAT-registered UAE businesses usually account for VAT on imported services under the reverse-charge mechanism; confirm with your tax adviser.

Fixed AED quote

How should your customers order from you?

Send your product count, branches, what you sell by weight and any platform listing. I'll reply on WhatsApp with the build to start with and its AED band; a written quote follows a short call.

Ashish Sharma

Founder, Codingclave

Ashish or the team replies on WhatsApp or email during our hours, Mon–Sat, 8:30am–5:30pm GST.

Prefer WhatsApp?

WhatsApp Ashish

Tell us about your business

  • Free scoping call
  • Fixed price in AED
  • No obligation

Your details go only to Codingclave's team in India so we can reply — see our privacy policy. Prefer chat? WhatsApp us.

How it works

What happens after you send the product export

Start on WhatsApp
  1. Your shop on WhatsApp

    Send your shop type, product count, branches and what you sell by weight; a spreadsheet export helps.

  2. Basket rules on a call

    The step that decides how the grocery side behaves: hold buffer, swap default, price ceiling, how far ahead slots open, zones and the bag line. I also confirm auth and partial capture on your gateway account, because the checkout depends on it.

  3. One AED figure, and the accounts to open

    It lists the accounts to open in your company's name, from trade licence to hosting, and the payments: 40% to start, 40% at an agreed midpoint, say checkout passing on test cards, 20% at launch.

  4. Catalogue import

    The import report shows which products lack an Arabic name, unit price or temperature tag.

  5. Build in stages

    Checkout and picking come first, because that is where the risk sits.

  6. Live test order, then handover

    Before handover we place a real order together on your live gateway. I suggest a weighed line and a declined swap, so you see the partial capture land on your dashboard. Better we find a fault than your first Thursday customer.

FAQ

Questions UAE businesses ask us

Can’t see yours? Ask Ashish directly — you’ll get a straight answer, not a sales script.

Ask Ashish directly

Ask on WhatsApp

What's the cheapest way for a grocer to start taking paid delivery orders?

For a baqala, a WhatsApp order bot posting each order to a screen in the shop, on our AED 4,900–59,000 chatbot band over 2–6 weeks. For a supermarket, a web store with slots and zones at AED 5,900–49,000, also 2–6 weeks. Prices exclude VAT, and Meta charges some WhatsApp messages on top.

What usually holds up a grocery launch?

Rarely the code. The catalogue is slow, because every product needs an Arabic name, a unit price and a temperature tag. Then the accounts in your company's name: trade licence, a merchant account with auth and capture, Apple and Google organisation developer accounts if you want apps, and a domain. Open them in week one.

How do I sell on InstaShop, and can I run my own grocery app as well?

Registration is done with InstaShop directly. Commission, fees and who supplies pickers and riders sit in your merchant agreement, so read it before you list. You can run both: the listing brings shoppers already in the app, your own channel keeps repeat baskets and WhatsApp reorders. Any feed between them is quoted as its own line.

How does a grocery app charge for meat, fish and vegetables sold by weight?

It authorises the card at checkout for the basket plus a buffer on weighed lines, then captures the picked total. On Stripe a partial capture releases the rest automatically; PayTabs supports partial capture too. Pre-paid slots must sit inside the hold, which on Stripe usually lasts 7 days for a card held at checkout.

What happens when an item is out of stock in a grocery app?

The customer's rule for that item decides: replace with similar, a named backup, or don't replace. With no rule, the picker's screen asks for approval and falls back to your store default after a timeout. A pricier substitute needs a yes. A line not replaced drops out of the capture and its share of the hold is released.

Can a grocery app connect to my supermarket POS?

Often, but it depends on what your POS vendor's API allows, so it is quoted per vendor and no system is named here as supported. We check yours against the vendor's documentation, and the scope you sign names how often it refreshes. Price rises on Decision 246 categories are held for review.

Do UAE online grocery stores have to show the price per kg or per litre?

Yes, if your premises are over 1,000 sq m: Ministerial Decision 245 of 2024 requires unit prices in standardised units, such as per kg or litre. The Ministry's page doesn't say how that applies to online-only sellers, so we add the field anyway. It costs little to build.

Can groceries in Dubai still be delivered in plastic or paper bags?

Not in single-use bags. Dubai has banned them in every material since 1 June 2024 under Executive Council Resolution 124 of 2023, so checkout offers a reusable bag or none. Gulf News reports the federal decision exempts thin bags wrapping fresh food such as meat and vegetables; Dubai Municipality's page lists no exemptions, so confirm with DM.

Ashish Sharma · Founder

Tell me what you sell by weight. I’ll tell you what to build first.

Send your product count, branches, what you sell by weight and any platform listing. I'll reply on WhatsApp with the build to start with and its AED band; a written quote follows a short call.

  1. WhatsApp us or fill in the form
  2. Free scoping call
  3. Fixed AED quote, no obligation