Online Grocery Delivery

Launch Your
Grocery Ordering and
Delivery Marketplace

  • Easy to Use Mobile Apps
  • Scalable Solution
  • Fully Customizable Solution
  • Flexible Payment Options
Online Grocery Delivery Software

US$84460 Million

Projected Online Grocery Delivery
Revenue by 2024

Some of the Exceptional Grocery Delivery Businesses

Disclaimer: NewKommerce is not associated or affiliated with any of the brand name or trademark used on the page. They are properties of their respective owners.

Work Flow of Grocery Ordering & Delivery Platform

Customer Flow

Store Flow

Driver Flow

Take a Glance at the Grocery Ordering & Delivery Platform

Customer App

App Home Page

Grocery Stores are listed under the following main sections:

  • Recommended & Open – Stores are recommended currently based on the user’s selected filters and are sorted based on distance.
  • Favourites – Users can add some restaurants to their favourite list and those will be visible under this section
  • Closed – Stores that are currently closed will be shown here

Special tags for each listing are as follows:

 

  • Safety Standards – Store’s that are following the highest safety standards as per the government’s covid-19 protocol carry this extra badge against their listing
  • Distance from user’s location
  • Aaverage rating given by users.
Filters used in Grocery Delivery Customer App

Filters

Filters are available to further filter the grocery store listings based on the user’s preferences.

  • Average Rating
  • Location & Distance

Results of the search can be sorted based on distance and ratings.

Search Feature in Grocery Delivery App

Search Grocery Stores & Grocery Products

Users can type in whatever they are searching for and the system search algorithm will return matching products and which stores they are available in and will also list stores whose name matches whatever the user has typed in.

Grocery Store Home Page in Grocery Delivery app

Grocery Store Home Page

For every store the app shows common details:

  • About Store
  • Store Gallery
  • Store Timings
  • Store Reviews
  • Minimum Order Value

The components of the home page for a grocery store are as follows:

Banners – Banners are an effective way of attracting users to promotions, offers, new products, new categories, new brands, etc.

Recently Viewed Products – All recently viewed products by the customer on the website/apps can be seen in this section of the app.

Brands – This section shows all the top brands from the category based on the analytics run on the product sales and different events captured like marking a product favourite, adding it to a wishlist, adding it to the cart, etc.

Elastic search for quick result

Super Fast Search

NewKommece leverages Elasticsearch to enable super-fast search and filtering from a huge catalogue

Elasticsearch powered search results on RoadYo load in under 1 second which provides a seamless experience for the users of the application and also shortens the sales cycle which helps the business have a purchase in less time than usual.

Elasticsearch is trusted by many big names in the tech industry like Grab, eBay, Vimeo, Lyft, Citibank, Fitbit, GoDaddy, GrubHub, Royal Bank of Canada, Argos, Just Eat, Accenture, Sprint, Dell, Microsoft, Zendesk, and many more.

Product description page of grocery delivery page

Product Description Page

Product description page presents different details about the product, prices, pictures and different actionable like add to cart, add to wishlist, share, or favourite.

The product description page is another rich and highly dynamic page on the platform, all the content appearing on this page is set up on the CMS panel. The different components of this page are as follows:

 

  • Image Gallery
  • Product Details
  • Variant Management
  • Multi-Vendor Marketplace
  • Product Attribute Setup
  • Inventory Availability
  • Product Substitutes
  • Manufacturer
  • Review and Ratings
Cart Page of Grocery delivery page

Multivendor Cart

This workflow allows the users to order from multiple grocery stores at the same time to enhance the user experience of ordering on the application.

Components of the cart page :

  • Product name
  • Manufacturer Name
  • Quantity
  • Attribute Details – like size, colour, pack size etc
  • Taxes
  • Final Total

Taxes – Taxes are calculated, and added to the payment breakdown for a user in the cart. They are set up by the system admin for each city and are applied to the products. Tax amounts are calculated as a percentage of the product price.

Checkout

In the checkout process, the next step confirming the payment method and confirming the delivery address.

Select Payment Method – A user can choose to pay from multiple payment options like credit/debit card, in-app wallet and cash on order delivery

Confirm delivery address – Delivery address should be in a zone that the store can deliver to. Delivery zones are set up in the admin and can be configured per store from the admin.

**While placing an order validation is in place for checking if the store delivers to the address or not. If one or more than 1 store cannot deliver to the selected address, the user is informed to either remove those items from their cart or to change their delivery address.

Product availability check for grocery delivery app

Product Availability Checks

Each product has a specific inventory as added on the CMS panel. When the user clicks on Add to cart on the PDP the inventory is checked for the number of SKUs of the product available with the store.

Similarly, when a user tries to update the quantity of the product inside a cart the inventory is checked for the number of SKUs of the product available with the store.

Moreover, if a user added items to his cart and didn’t place an order for it, and either went to another page or closed the app and then came back on the cart page, the system rechecks the inventory of each product inside the cart.

At the time of checkout, the product availability check is again triggered and if the requested quantity of the ordered product is not in stock, the user is prompted to remove the item or change to the available count,

Order history page for Grocery delivery app

Order History

All orders active and past are visible on this page. Orders can be filtered by month or year or based on status. All orders are listed here. If an order was made from multiple stores the order is tracked per store.

Order status and tracking for grocery delivery page

Order Status Tracking

As each grocery processes the order, the customer is informed in real-time, the different status messages that are updated to the customer are:

 

  • Order accepted by the store.
  • Picking has started:
    • Products not picked
    • Products picked
    • Products unavailable
    • Substitutes available and confirmation needed
    • New recommendation sent by the picker
  • Picking complete
  • Checkout complete & Receipt Uploaded
  • Ready for pickup
  • In-Delivery:
    • Order picked up by the driver
    • Driver at the delivery address
    • Delivery Complete

Store App

Store manager app for grocery delivery business

Home Page

The Store manager application is an excellent tool for managing orders, dispatching them to the delivery partners. The functioning of the store application is flexible and can be configured with the following parameters :

  • Auto accept 
  • Auto Dispatch

Tab on the home page:

New Orders – This will show the store manager all the new orders received.

  • Accepted Orders – This will show the store all the accepted orders that have not been picked yet.
  • Picking – All orders that are accepted and are being picked will show up on this tab
  • Checkout – All orders that are completely picked and are pending upload of receipt and packing.
  • Ready For Pickup – All orders that are packed and ready for pickup by the driver
  • In-Delivery – All orders that are picked up and are currently being delivered.
Order detail page for grocery delivery store app

Order Details Page

Each order can have the following information or actionable based on the status of the order

  • Order Status
  • Customer Details
  • Payment Type
  • Order/Cart Details – Products ordered by the customer with payment breakdown

-> Manager can inform the customer if any one of the products is not available

New Order received on stroe manager app for grocery delivery app

New Orders

All new orders are visible on this tab. New orders have to be accepted to move to the picking stage.

assign picker option on store manager app for grocery delivery app

Assign Picker

Once the order is accepted the store manager has to assign a picker. The picker can be the manager himself/herself or can be another store user.

Order Picking Stages in store manager app for grocery delvery

Order Picking Stages

Once an order is approved. The store manager can pick the ordered items themselves or can assign a picker. This stage has the following tabs:

 

  • Not Picked – Products that are not picked as yet show on this tab.
  • Picked – Products that have been picked show on this tab. Products can be scanned to auto pick or force picked manually.
  • In-Review – Products that are to be confirmed by the customer shown on this tab. This can be for new products added by the store manager or by-products substituted by the store manager.
  • Removed – Products that are removed from the order shown on this tab.
Send substitute for items in store manager app for grocery delivery

Send Substitute Suggestion

If a product is not in stock and substitutes for the same are available, the picker has an option to recommend substitutes to the customer. The following are the use cases here:

 

  • If the customer has explicitly asked for no substitution, then the picker will mark the product as unavailable and continue picking the rest of the order.
  • If the customer has selected a preferred substitute then the picker will check for that first, if available the picker will request for a confirmation from the customer.
  • If the customer’s preferred substitute is not available then the picker can select a substitute from the catalogue available and will again request for a confirmation from the customer.
  • If the customer’s preferred substitute is not available then the picker can also manually add a product that is available but not on the store’s catalogue and request for a confirmation from the customer.
  • Once confirmed the picker will continue picking the substitute and complete picking the order.
Checkout & Bag Label Printing in store manager app

Checkout & Bag Label Printing

Once an order is picked the picker can check out the order. The picker goes to the cashier and pulls all products out and hands them over to the cashier for price confirmation.

The cashier scans all the products into the POS and generates a receipt. The picker then snaps a photo(S)
of the receipt and uploads it into the app.

Once the receipt is uploaded, the picker will pack the products into bags and will then confirm the number of bags used and will print labels for each bag.

These labels are printed onto stickers and are stuck on the bags. Each label is unique and is tied to order so that it can be scanned by the driver at the time of pickup.

Order ready for pickup in store manager app

Ready For Pickup

Once an order is packed it is moved to the ready for pickup tab. There are 2 sub-tabs here:
  • Driver Assigned – Once an order has been assigned, the order shows on this tab.
  • Driver Not Assigned – While the order has still not been assigned a driver, it shows here. In the case of store drivers, the store manager will have an option to:
    • Auto dispatch the order to drivers
    • Manually assign a driver to order
In delivery tab in store manager app for grocery delivery

In-Delivery

Once an order has been picked up from the store, it will show on this tab

Driver Application

Driver app login screen for grocery delivery

Types of Driver

Our system offers the flexibility of facilitating order delivery through one of the two drivers types:

Freelance Drivers

Freelance Drivers are drivers that can deliver orders received from more than one store and are not bound to a specific store. A store can always switch between Freelance Drivers, and store drivers to do their deliveries.

Store Drivers

Every store can have its own drivers and they can do the last-mile delivery to the customer.

order details

Assigned Orders

A driver is assigned an order directly or receives an order request giving him an option to either accept the order or reject it.

The assigned orders list shows all the orders assigned to the driver and each order consists of the following components:

  • Order Status
  • Delivery Fee
  • Order ID
  • Delivery Date & Time
  • Store Name & Address
  • Customer Name & Address
  • Order Date & Time
  • Order Type

Driver Presence: A driver can make himself available/unavailable for receiving orders by Going Online / Going Offline using the button on the top of the page.

Multiple orders in driver app

Multiple Deliveries

Drivers can accept and deliver more than 1 order on the app so that a store can dispatch multiple orders to a driver to optimize the deliveries and save on fuel cost.

A driver can accept, and deliver an order for ‘X’ address, and at the same time make a delivery to another address close to the previous address, or on the way to the third-order delivery address.

The store will receive real-time updates for all the 3 orders on the same app, and so will the customers associated with each of the three orders.

order details

Steps In Delivery Process

The delivery process is as follows:

  • The driver is sent an order to accept in the case of ASAP delivery orders
  • The driver is sent an entire batch of orders if they were managed in shifts ( this is assigned and the driver does not have to accept it )
  • Driver visits the store to pick up the orders first. The pickup might require the driver to pick up multiple orders.
  • The driver scans each bag linked with the order. The driver can complete the pickup only after scanning each bag. This is an optional process and can be enabled or disabled from the backend admin.
  • The driver completes all pickups from the store and then starts each delivery.
  • Driver arrives at first drop.
  • The driver can notify the customer of arrival, this is geotagged so the driver has to be in a 50 m range of the address to update this status.
  • The driver drops the items if the customer is not available the driver can mark the order for REATTEMPT or can cancel the delivery.
  • On reattempt, the driver tries to deliver the order again and an extra delivery fee might be applied.
  • On cancellation of delivery, the driver has to return the order back to the store.
  • Returns will have to be confirmed by the store manager with a signature.
order details

Proof Of Pickup (POP)

Admin can enable bag scan at the time of pickup. In case this is enabled the driver will have to scan the unique bar code on the bag to confirm, the driver has picked up the right order.

order details

Proof Of Delivery (POD)

To ensure the delivery of an order, as a method of a double handshake, a driver can’t complete an order on the application without taking the customer signature on it. This can be enabled or disabled from the backend.

These signatures are stored with the order and can be accessed later for dispute handling.

The driver will also have to take a photo of the id card of the person who received the order in case there is any product in the order that requires the collection of id proof, for example, alcohol.

If contactless delivery was opted for then the driver has the additional option to take a photo of where the driver has left the order as proof that it was indeed delivered.

If bag scan is enabled then the driver will have to scan the barcodes generated for each bag in the order to further confirm the driver is dropping off the right bag to the right customer.

order details

Order History

A driver can find all the orders that he/she has completed or cancelled under one tab. Each order on the list shows the following :

  • Order ID
  • Order Time
  • Customer Name & Address
  • Store Name & Address
  • Delivery Fee

Clicking on an order gives the following details: 

  • Order Type
  • Store Name & Address
  • Delivery Address
  • Order Details
  • Payment Breakdown
  • Payment Method
  • Earning of the Driver from the order.
  • Order Status

The page also shows a chart visualizing weekly earnings of the driver.

order details

Reattempt Delivery Management

If a customer is not available at the address, the driver can re-attempt to do the delivery later but has to update the status with a reason so that the system admin knows that a re-attempt happened.

Marketing & SEO

Market Basket Analysis [MBA]

Market Basket Analysis is one of the key techniques used by both eCommerce and non-eCommerce platforms to uncover associations between products.

Offers

The banners, as explained in the last section could lead to a category, brand or offers. Offers are a great way to attract customers into buying more from the platform and therefore more revenue.

Smart Alerts

Smart Alerts helps restaurants or a platform to re-target lost users or potential users in a very effective manner. Based on the user segments, automatic alerts could be sent to the customers triggered by events.

Ratings

Define parameters for customers to rate their experience on the platform for every order and generate average ratings for stores, and drivers on the platform.

Banners

Banners are an effective way of attracting users to promotions, offers, new products, new categories, new brands, or basic information.

Referral Campaigns

The referral campaign module is designed as a loyalty program with the trigger-workflow model. If certain criteria are met, then the reward workflow is triggered for both the new user and the user whose referral code was consumed.

Promo Codes

Promo Codes are a great way to attract more users to order from the application by giving them discounts when the coupons are applied to orders.

System Admin

Dashboard

Powered by the data from the entire platform, the dashboard visualizes different Key Performance Indicators ( KPI’s )  for the platform using charts, graphs and tables. All the visualizations are filterable by date range.

Tax Setup

Define and manage multiple taxes that could be levied on the products in each city.

All Managers

Create, configure and manage user logins and statuses of managers for stores or a city. The users created in this section can log in into iOS, Android, and web apps for a store and city to manage the orders.

Product Catalogue Setup

Create and manage different components associated with and needed for adding products to the platform.

 

  • Product Categories: Create, update, and delete product categories for the central products.
Show More
  • Store Product Categories: Create, update, and delete product categories for the store products.
  • Brands: Add, update, and delete brands that could be used while adding products.
  • Manufacturer: Add, update, and delete manufactures that could be used while adding products.
  • Package boxes: Configure a different kind of package boxes.
  • Packaging types: Configure different packing types for bulk pricing that is useful in wholesale selling.

Product Packaging Boxes

Each product in the ecommerce flow could be packaged into a box and shipped. On the CMS Panel a system admin could create the various box sizes which would be available on the product addition page to connect the product to the size of the box.

Products

Create, update, import, and delete products from the central or store inventory.

 

  • Central Products: Products available in the central product inventory.
  • store/Supplier Products: Products associated with different stores.

Store Setup

Add, update and manage, stores, app commission charged to each store.

 

  • Stores: Create, update, delete stores and manage various store configuration affecting the ordering workflows.

Customers

This section captures the details of each guest and registered user on the customer application and website. Details about the carts of the registered users along with modifications made are also highlighted in this section

Orders

This section captures the active and completed orders on the platform and lists the details of each order like customer details, payment details, order break down, driver details, etc.

    Show More

    All Orders: All orders under different statuses on the platform. Different order statuses under this section are as follows :

    • New: Orders that have been placed by the customers and are yet to be accepted by the store.
    • Accepted Orders: Orders that are accepted by the store and are being processed.
    • Packed Orders: Orders that are being packed.
    • Ready For Pickup: Orders that are packed and ready to be picked up.
    • In-Delivery: Orders that are picked up and are being delivered.
    • Completed: Orders that have been successfully delivered, picked up, expired, cancelled or rejected.

    Order Invoices

    Order Invoice is records of the payments made and the earnings accrued on each order by all the entities involved in order.

    The following is calculated for each order:

    Show More
    • App Earnings: Calculated from the store Commission received from the store, the Delivery Commission received from the driver, Payment Gateway commission or Payment Transaction Cost, Discount offered to the customer.
    • Payment Gateway Earnings: The payment gateway charges for each transaction varies from one payment gateway to another and constitutes the Payment Gateway Earnings.
    • store Earnings: Calculated from the amount left after paying the commission to the app, taxes levied on the products, and store discounts offered on the products.

    Bulk Import with CSV

    Bulk import allows a seamless experience for the store owners or warehouse owners to upload the products/dishes on the system instead of uploading the details of each product/dish individually.

    Payment Gateways

    Define and manage multiple payment gateways and the transaction fees levied by each one of them. The transaction fee could be a fixed fee or a percentage of the transacted amount.

    City Setup

    Define and manage multiple cities and zones. Delivery fee (Mileage pricing) parameters are also configured in the city setup.

    App Settings

    Manage global app settings for language, app version, dispatching, live tracking, etc.

     

    • Language: Enable, Disable multiple languages on the platform. Each language enabled adds an additional field for data input for each component on the platform.
    Show More
    • Versions: Defines the active versions of each application on the platform. Allows system admin to inform users about updated versions and if a version is mandatory to update or not.
    • App Configuration: Configure parameters for order dispatching, live tracking, product feed, driver presence, etc.

    Product Attributes

    Product attributes are used to provide additional information for products like description, material, dimensions, warranty information, etc.

     

    Show More

    The attributes are added on the CMS panel and associated with the product category which makes the products under the product category inherit the same set of attributes.

    The attributes/ values of the attributes could change per unit of a product, for example, the battery of an iPhone X is 2716 mAh while the battery of an upgraded unit which is iPhone XS Max is 3174 mAh.

    Also, attributes while being set up in the CMS panel could be made filterable and/or searchable, allowing the user to search for products with a certain attribute value in the product listing pages under a category, brand, offers, etc

    Multiple attributes could be grouped into an attribute group and the attribute group could be associated with the product category. This helps in making the process of attribute creation and association quite simple.

    Product & Store Commission Setup

    Add, update and manage, store categories, stores, app commission charged to each store.

     

    • App Commission: App can also set up a per product per store commission which is commonplace in eCommerce.
    • Store Commission: Define and update commission earned by the app from each active store. A commission can either be fixed or a percentage of the total value of the ordered products.

    Estimates

    This section captures the order estimate before the order is placed/confirmed by the customer and includes the total value of the order with delivery fee calculations.

    Financials

    View all the financial details for all orders processed on the platform.

    • Accounting: Orderwise breakdown of payments for and earnings from each order for each entity on the platform.
    • Account Statements: A financial ledger for the platform, payment gateway, customer, driver, and stores.
    • Stripe Logs: Logs from Stripe of all the activities initiated from the platform.

    Withdrawal Requests: All withdrawal requests from stores, drivers are visible here.

    Account Statements

    The system is equipped with the following account statements to better manage the distribution of money between the various entities involved in the order.

      Show More
      • Customer Statement – This will reflect all the transactions done by a customer on the app. All payments made by cash/card and all wallet credits/debits. This statement gives the app a report of all the customers spends on the app. This wallet is also used as store pre-paid money and can also be used to receive loyalty points and any adjustments made by the admin for a past order. A manual credit/debit option exists here to make any adjustments in the customer’s account for failed order, customer compensation etc. This also preserves any payment due from the last order or cancellation of a cash order.

       

      • App Statement – This statement indicates the earnings made by the app for each order made. The closing balance of this statement indicates the up-to-date money earned by the app. A report on this statement can indicate the business’s earnings on the system.

       

      • Payment Gateway Statement – This statement will record all the earnings made by the payment gateway on the app. The app supports more than 1 payment gateway so a filter can be applied to sort by any 1 payment gateway. A report on this statement will indicate the amount paid out to payment gateways and can be used to leverage a better % commission with the payment gateway provider in case the system has achieved high transaction volumes.
      • store Statement – This will reflect all the transactions done for a store. This keeps a record of all the money owed to the store by the app for credit card/wallet bookings The closing balance of this system indicates the money owed by/to the store. If the balance is negative then it means that the app owes money to the store and if the balance is positive then it means that the seller has excess cash and has to pay the app, the app’s commission for all the cash orders. A manual credit/debit option exists here to make any adjustments in the stores’ account for failed orders, etc.

      Barcode Generation

      This module generates a unique barcode for each product that is added to the system. The barcode generated follows the UPC and EAN barcode standards and hence is compatible with a wide range of barcode readers.

      Manage Access

      Create, Update, and Manage user access and roles (defining what each role/user could access) for the Superadmin.

      Store/Supplier Admin

      Dashboard

      Powered by the data from the store, dashboard visualizes different Key Performance Indicators for the store using charts, graphs and tables. All the visualizations are filterable by date range.

      Working Hours

      Define and manage the working hours for a store which determine the opening and closing of a store on the customer app and website.

      Products

      Products listed with the stores, stores can update the product details, deactivate them or remove them completely if needed.

      Account Statement

      This will reflect all the transactions done for a store. This keeps a record of all the cash collected by the store, the money owed to the store by the app for credit card/wallet bookings.

      The closing balance of this system indicates the money owed by/to the store. If the balance is negative then it means that the app owes money to the store and if the balance is positive then it means that the store has excess cash and has to pay the app, the app’s commission for all the cash orders.

      A manual credit/debit option exists here to make any adjustments in the store’s account for failed orders, driver compensation etc

      Stores Customers

      Customers created from the store web dispatcher are shown under this section, these customers are not visible in the customer search for store orders to stores other than the one the customer was created in.

      Store Profile

      Update details about the store and configure order acceptance & dispatch settings, cart-related parameters, etc.

      Store Managers

      Create, configure and manage user logins and statuses of dispatch users for stores. The users created in this section can log in into iOS, Android, and web apps for a store and manage the orders.

      All Orders

      All orders under different statuses on the platform. Different order statuses under this section are as follows :

       

      • New: Orders that have been placed by the customers and are yet to be accepted by the store.
      • Accepted: Orders that have been accepted by the store
      • Packed and Ready For Pickup: Orders that have been accepted by the store and are packed and are ready for pickup. These orders have a ready shipping /delivery label printed and stuck on top of the package.
      • In-Delivery: Orders that have been assigned to a partner and are in the process of delivery to the customer.
      • Completed: Orders that have been successfully delivered, picked up, expired, cancelled or rejected

      Barcode Generation

      This module generates a unique barcode for each product that is added to the system. The barcode generated follows the UPC and EAN barcode standards and hence is compatible with a wide range of barcode readers.

      Blogs

      Meat app deveelopment

      Meat & Seafood Delivery Service- Build Your Meat Delivery Startup

      Meat app deveelopment

      Organic Meat Delivery: Solution For Your Meaty Affairs!

      Meat app deveelopment

      Top Food Delivery Apps | The Flavor Of The Season