Ideliver LW Rate Card

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 52

Code Review / Quality Check

We want to make sure all our customers know that we walk our talk so we are open and actually even
encourage our customers to do a code review before they purchase our product. This is something that
no-one else in the market offers up-front.

Technical Differentiators
1. We have the most modern user interface at par with the big boys in the space like Swiggy ,
Careem , Talabat , Glovo , Deliveroo , Delivery Hero , Food Panda , Zomato , Doordash.
2. Product search powered by the lightning fast Elastic search engine which is what all the large
apps use today.
3. API’s written in pure Node.JS following the best industry guidelines as prescribed by Rising Stack
(they are the most popular Node.JS evangelists in the industry) , GoLang and in Python ( Django )
4. Only app in the market, built on the micro service architecture where we have also leveraged the
server-worker model for super scale and performance.
5. Leverages the API gateway based architecture for easily managing microservices.
6. gRPC support for managing communication between micro-services.
7. Kafka + Spark based analytics engine for in-depth data analytics.
8. Multiple database architecture:
a) Elastic search - For lightning fast search
b) Cassandra - For logging all user interactions and transaction ledger
c) MongoDB - Used as a data store
d) Spark - For data analytics
9. In-depth real time app monitoring of the Node.JS application to manage your server
infrastructure, again integrated with slack for easy access for your technical support team.
10. Docker support for vertical and horizontal scaling.
11. Only iOS apps in the market written in Swift 5 using the MVVM architecture; most other
providers write poor quality code.
12. Only iOS app in the market leveraging Rx-SWIFT for top notch asynchronous performance. This is
the tech that big apps like Go-Jek use.
13. Only Android apps in the market written using the clean architecture prescribed by Google (MVP
using Dagger 2).
14. Only Android apps in the market leveraging Rx-Java which top apps like Go-Jek and Uber use.
15. Most secure app infrastructure in the market where security extends from the mobile app to the
API’s. Use of keychain in iOS to store all credentials, SSL powered API’s, use of JWT for the
API’s, reverse proxy setup on the load balancer etc.
16. Only solution in the market that leverages python to make the system smart by providing the
users with trending products, popular searches and recommendations based on the data
generated by the usage of the applications.
SECURITY CHECKLIST

Most secure app infrastructure in the market where security extends from the mobile app to the API’s.

1. Use of keychain on iOS and Android to store all credentials.


2. All API’s are secured with a wildcard SSL certificate.
3. Use of JWT and JWE for securing all API’s.
4. API gateway driven architecture with GRPC leveraged for micr-service communication.
5. GRPC support for micro-services.
6. Load Balancer supported for horizontal scaling.
7. Rate limit API and controller access to minimize the harm from automated attack tooling.
8. App secured from any DB injection.
9. App protected from clickjacking protection, XSS, MIME-Sniffing, HSTS, HPKP or set the CORS
settings.
10. Security headers are enabled.
11. Scripts are not deployed with default credentials, particularly for admin users
12. Uses a server-side, secure, built-in session manager that generates a new random session ID with
high entropy after login. Session IDs should not be in the URL. Ids should also be securely stored
and invalidated after logout, idle, and absolute timeouts.
13. JWT tokens are invalidated on the server after logout.
FEATURES
CUSTOMER APPLICATION
Login / Signup

Application Home Page

Banners

Offers

Recently Viewed Products

Product Categories & Product Scroll

Search, Filters & Sorting

Product Description Page ( PDP Page )

Image Gallery

Product Details

Multi Vendor Marketplace

Product Attributes - Unit Wise

Inventory Availability

Review and Ratings

Cart Page

Inventory Checks

Taxes

Saved Addresses

Payment Options

Card Payment Authorization


Coupon Codes

My Orders / History

Product Review & Ratings

Free Real Time Tracking

App Reskinning Service

App Installation Service

Manage App Updates App Version Control

Unlimited Users

TOTAL PRICE FOR iOS and Android Apps and Admin Panel for Super Admin and stores -
USD $ 12,000

STORE MANAGER APPLICATION ON MOBILE


(RESTAURANT)

Login / Signup

Home Page - Order and Dispatch Management

Checkout Order and Print Label

Ready For Pickup

In-Delivery

Store Manager Profile

Order History

Account Statement

Bank Details [Valid for Stripe Connect]


Inventory And Product Visibility

Real-time Order Updates

store Apps for Android - USD $5,000

DRIVER APPLICATION
Login / Signup

Document Expiry Checks - Driver App

Home Page - Assigned Orders

Multiple Deliveries

Customer Signature and identification card check.

Driver Profile

Order History

Account Statement

Bank Details [Valid for Stripe Connect]

Offline Management

Reattempt Delivery Management

Return Management

Geo-Fence Deliveries

Driver apps for Android - USD $5,000


DRIVER / SHOPPER CONFIGURATION
The configuration where the driver can also be the shopper like on Instacart is priced as an
additional module.

Driver/ Shopper module for iOS and Android - USD $3,000

SYSTEM ADMIN
Dashboard

Payment Gateways

Tax Setup

City Setup

All Managers

App Settings

Product Catalogue Setup

Product Attributes

Product Packaging Boxes

Products

store Setup

Product & store Commission Setup

Customers

Estimates

Orders

Product Offers
Offer Redemptions

Financials

Account Statements

Order Invoices

store Payouts

Marketing ( Additional Add On And Not Part Of BAse App )

Coupon Codes

Ratings

Mail and SMS Logs

Manage Access

App Content

Inventory Module

Bulk Import with CSV

Barcode Generation

Price is included in the base app so no extra prices charged

STORE/SUPPLIER ADMIN
Dashboard

store Profile

Working Hours

store Managers

Product Categories
Products

All Orders

Offers

Account Statement

stores Customers

Inventory Module

Bulk Import with CSV

Barcode Generation

Price is included in the base app so no extra prices charged

ADDITIONAL FEATURES:

FEATURE COST

1) Central Web Dispatcher / Fleet Manager Console

Login / Signup

b) Home Page - Order and Dispatch Management

c) Order Details Page


$3000
d) Order History

e) Real-time Order Updates

f) Create New Order / Call Center Module

g) God's View / Birds View


2) Store Web Dispatcher / Store Fleet Manager Console

Create New Order / Call Center Module


$3000
Add Payment Method ( Store Wallet And Credit Card On File )

View drivers

3) B2B Delivery Module / Courier Module / Single Pickup - Multiple… $2500

4) Import delivery jobs via XLS / CSV $1000

5) Additional Payment Gateway $1000/gateway

6) Payment Wallet $1000

7) Referral Campaigns $1000

8) Loyalty Program $1000

9) Bulk Push Notifications $1000

10) Live Chat with Support $1000

11) Zendesk Integration for Support Ticket Management $500

12) Bulk Import with XLS / CSV $500

13) Number Masking $1000

14) App To App Calling $2000

15) Driver-Customer Text Messaging $1000

16) Store-Customer Text Messaging $1000

17) Advanced App Monitoring $150/month

18) Smart Alerts $500

19) Sign In with Apple $250

20) Multi-Language Support $750/language

21) Store Drivers / Store Fleet Management Software $2000

Pricing will be at
22) Integration with POS ( Point Of Sale ) system.
actuals
23) Curbside Pickup $1000

24) Business Analytics $2500

25) Full Booking Website Built As A Progressive Web Application $3000

26) Abandoned Cart / Cart Abandonment $1000

COMING SOON FEATURES:


FEATURE COST
Return order management on the driver app $1000

Re-attempt delivery management on the driver app $1000

Alexa Skill for Placing Orders Yet to be decided

Salesforce.com CRM integration Yet to be decided

Quickbooks integration Yet to be decided

Reseller / Affiliate / Social Selling Module Yet to be decided

Contact Us for Bulk


Total
Pricing

Feature Explanation

Customer Application

Login / Signup
1. Supports Login/Signup with Phone Number
2. Supports Social Login/Login with Facebook & Google.
3. Retrieve password via phone number or email.
4. Unique Verification code sent to the user’s email or phone number ensures quick and seamless
experience for Signup and Password Retrieval process.
5. For iOS, the application comes with inbuilt support for login with apple, Touch ID and Face ID.

Guest User : A user can explore the application without signing up or logging into the application. Login
is necessary only if the user wants to perform user-specific actions like accessing saved cards, saving
addresses, placing an order.

Food Delivery Home Page

Restaurant Listing

Restaurants are listed under the following main sections:

a) Recommended & Open - Stores are recommended currently based on the user’s
selected filters and are sorted based on distance.
b) Favorites - User’s can add some restaurants to their favorite list and those will be visible
under this section
c) Closed - Stores that are currently closed will be shown here,

Special tags for each listing are as follows:

1) Safety Standards - Restaurant’s that are following the highest safety standards as per
the government’s covid-19 protocol carry this extra badge against their listing
2) Cuizine
3) Distance from user’s location
4) Average rating given by users.
5) Best deal running in the restaurant.

Filters

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

1) Cuizine - Users can select the cuisines they are looking to eat.
2) Price For 2
3) Average Rating
4) Location & Distance

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


Search restaurants and dishes

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

Banners

Banners are created and are used as a way to promote certain restaurants. Restaurants can work with
the app and promote deals.
1. Banners are purely managed by the platform from the CMS panel.
2. Banners can found on the top of the home page
3. Multiple banners could be deployed at the same time.

Restaurant Home Page / Menu Page


For every restaurant there are common sections:

1. About Restaurant
2. Restaurant Gallery
3. Restaurant Timings
4. Restaurant Reviews

The menu for each restaurant is organized in the following way:

1. Favorite dishes
2. Recommended dishes based on time of day so the restaurant can set recommended dishes for
breakfast , brunch , lunch or dinner.
3. Categorized dishes
4. Dishes with images and with-out .
5. Discounted price in case of any active offers on the dishes.

Portions

Dishes are organized into portions. Portions can be priced different and the modifier prices can change
based on the portion. Example of a portion is :
a) Large Pizza
b) Medium Pizza
Addons / Modifiers

Restaurants can create modifiers from their admin panel. Modifiers are organized into groups. Add On
Group’s can be created for example - “Extra Toppings”. Inside every add on group there are add on’s. Add
On’s can be free or can attract an extra price added to the dish price.
Add On’s can also be priced differently based on the portion size.
The conditions applied for add on’s are as follows:
1) Minimum Add On’s that have to be selected
2) Maximin Add On’s that can be selected
3) Single select add on group
4) Multi select add on group

Quick Order Options

Quick order options are as follows:


1) Reorder the same dish with the same add on’s , so this order would add to the quantity already
on the cart.
2) Reorder the same dish with different add on’s , so this would create a new item in the cart.

Offers On Dishes

The following kinds of configurations can be created for offers:


1) Offer on dish categories.
2) Offer on particular dishes.
3) Offer on cart value.
4) Offer on delivery fees.
5) Maximum claim count per user.
6) Maximum claim count (Global Usage Limit) for the offer campaign in total.
7) Zones the offer is enabled for.
8) Start and end date for the offer campaign.

Search For A Dish

DIshes can be searched for inside a restaurant. The search algorithm factors in text added into the
product description , add on’s , product name , category name and also matches the text typed with all
products / dishes available in the restaurant.

Cart Page
The details on the cart page are as follows:

1) Items in order.
2) Quantity per item in the order with an option to add more or remove item from order.
3) Tax applied on the order.
4) Savings in the order.
5) If order qualifies for free delivery the user will be informed.
6) Cart is created per restaurant and if the customer decides to select another restaurant , the
customer will have to clear the cart from the previous restaurant as the customer can only order
from one restaurant at a time.

Cart can be checked out for:

1) Self-Pickup Order - If enabled users can pre-order and pickup the order from the restaurant.
2) Delivery Order - If enabled users can confirm a delivery address and have the order delivered
directly to an address of their choice.

Checkout Flow

Confirm Delivery Address

After checkout the next step in the checkout process is confirming the delivery address. The following
conditions apply while selecting the address:

1) Delivery address should be in a zone that the restaurant can deliver to.
2) Delivery zones are setup in the admin and can be configured per restaurant from the admin.

Select Payment Method

The following payment methods can be selected by a user:

1) Pay via credit/debit card - A user can pay for the order with his credit cards. Card payments are
supported by integrating payment gateways. The application is capable of supporting payments
in almost all countries and cities with payment gateways like Stripe, Braintree, MOL Pay, Payfort,
Conekta, Midtrans, Flutterwave etc. Other payment gateways can also be integrated in the
system.
2) Pay via in-app wallet - A virtual wallet that can be re-charged via an integrated payment gateway.
3) Pay via cash on order delivery - Pay cash directly to the driver at the time of delivery.
Confirm Order

The various sections of this page are as follows:

1) Confirm billing and delivery address.


2) Confirm payment method.
3) Select contact less checkout - If opted, the delivery driver leaves the order based on the location
selected by the customer without having to meet the customer. This is added to avoid in-person
contact with customers as per the Covid 19 protocol. Contact less checkout can be opted for only
of the payment method is card or wallet..
4) Select promo code - Customers can enter a promo code and if valid a special promo code
discount is applied to the cart.
5) Delivery fee - Delivery fee is calculated based on the delivery address selected.
6) Select tip - If the user has selected cash / wallet as the payment method the option to pay the
driver a deliver fee is presented to the user to select. User can decide how much money they
would like to top the driver and this amount shows up in the total order value.

Order Tracking

Order History Page

All orders active and past are visible on this page. Orders can be filtered by month or year or based on
status. Orders are listed per restaurant.

Order Details

The order details page consists of the following sections:

1) Live Order Tracking statuses are as follows:


a) Waiting for the restaurant to accept the order.
b) Order accepted by the restaurant.
c) Order is being prepared.
d) Order is ready for pickup.
e) Driver assigned to pickup the order.
f) Driver is at the restaurant.
g) Driver has picked up the order.
h) Driver is at the delivery location.
i) Driver has completed the order.
j) Rate restaurant.
k) Rate delivery in case of a delivery order.
2) Order details with full details of add on’s selected.
3) Cancel order - Order can be cancelled by the customer till the time the order has been prepared
by the restaurant. Cancellation fees are applied based on the rule engine setup for the
restaurant category for the city.
4) Report order - In case of any issues with the order the customer can raise a ticket with the
support team.

Other Features

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.

Saved Addresses
A user can add, and save unlimited addresses to his/her account and mark them Home, Work or Other.
Addresses tagged as Other can also have a name, for example – Grandma’s House, James Apartment,
Lisa’s Condo etc
This helps in reducing the time for checkout as the user can easily tap on one of the saved addresses
instead of adding the address every time he wants to place an order on the application.

Card Payment Authorization


If the payment gateway allows, the system first makes sure the card being used has enough balance to
pay for the order. In case the card has in-sufficient balance or has expired etc. then the system will not
allow the order to go through. This is a great feature to ensure all cards being used are valid and the
payments are guaranteed.

Coupon Codes
Coupon Codes are a great way to attract more users to ordering from the application by giving them
discounts when the coupons are applied to orders.
1. The cost of a coupon code is borne by the platform and the discount is adjusted against the app’s
earnings.
2. A user can either input a coupon code, and apply the same to the order, or just choose one from
the list of coupon codes on the app.
3. With the configurations in place for the usage each coupon code created, the users can’t abuse
it.

4. Coupon codes have the following configuration options:

a. Category of products.

b. Particular product/products.

c. Particular zones.

d. Start and stop date & time.

e. Globally usage limit.

Order Review & Ratings


Review and Ratings is a business-critical feature as it allows the app owners, stores to receive feedback
from the customers and work on them to improve the business.

1. On a successful delivery or pickup, a user is presented with different parameters and 5 stars for
each parameter on the app to choose from.
2. The system admin can configure the parameters that are presented to the user.
3. For every order , the parameters can vary and the user can leave a rating for each parameter..
4. The customer can also leave:
a. Review for the store that will be maintained on the backend for the app management to
maintain quality control.

Free Real Time Tracking


We have our own proprietary tech stack for real time tracking (track all drivers in real time, track the
driver live on the map once the driver is assigned, track live on the mobile app, and also on birds view).

We don’t use Pubnub (which is a bit expensive, can easily for over $100/month for 200 active devices,
and over $1000/month for 50,000 devices), and we don’t use Socket.IO (lot of battery drain and not
reliable). Our stack takes care of 100% message delivery, and is also free of charge for all our customers.
So a user never misses any order update, and a user can track drivers meter by meter.

App Reskinning Service


We change the theme of our app to match your branding and logo. We offer the following:

1. Update the launch icon


2. Reskinning does not include any changes in the UX/UI.
3. Update the splash page
4. Update the colors of the app and also the icon colors
5. Update the links on the app and share messages, etc

App Installation Service


We help you create app store screens for app submission to the apple app store and play store. We also
help you get the app store approvals for your app. We help you setup your web server to host the app
backend. 

Manage App Updates App Version Control


Manage app updates from the backend, whenever the app is updated on the app store / play store mark
them as mandatory or non-mandatory. If the app update is mandatory all users will have to forcibly
update the app before they can use the app, this is very useful in cases where critical app updates are
made which necessarily require all users to update the app. Non mandatory updates are useful to let the
user know that there is a new update available to download

Unlimited Users
We do not limit the number of users in any way. You can add as many customers as you want and as
many drivers as you want to list.

Restaurant Manager Mobile Application

Login / Signup
Store managers are users that manage the orders for a store.

1. Supports Login with Phone Number, and Email Address.


2. Each restaurant can have multiple active managers simultaneously.
3. Reset password via email address, or phone number.

Available on : Web , Mobile

Home Page - Order and Dispatch Management

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

1. Auto Accept: If this parameter is enabled for a restaurant, any order that is received by the
restaurant gets automatically accepted. If disabled, the manager is given an option to
accept/reject the order, and the order is not confirmed to the customer till the order is
confirmed by the manager.
2. Auto Dispatch : If this parameter is enabled for a restaurant , any order that is accepted by the
restaurant (manually or automatically) gets automatically dispatched.

Tab on the home page:

a) Pending/New Orders - This will show the restaurant manager all the new orders received. Once
an order is accepted a preparation time is added by the store manager to notify the user on the
delay in preparing the order.
b) Prepare - All orders that are accepted and are being prepared are shown here.
c) Ready For Pickup - All orders that are packed and ready for pickup by the driver are shown here.
d) In-Delivery - All orders that are picked up and are currently being delivered show up here.
Order Details Page
Each order can have the following information or actionables based on the status of the order

1. Order Status
2. Customer Details
3. Payment Type
4. Order/Cart Details – Products ordered by the customer with payment breakdown

New Orders
All new orders are visible on this tab. New orders have to be accepted to move to the prepare stage. The
manager can assign a preparation time for each order that will be used to notify the system when to
dispatch the order to the driver.

Prepare
Once an order is approved its moved to the “prepare” stage. It stays here till the meal is prepared by the
kitchen. Once the meal is ready its moved to the ready for pickup stage.

Ready For Pickup


Once an order is packed it is moved to the ready for pickup tab. There are 2 sub tabs here:

a) Driver Assigned - Once an order has been assigned , the order shows on this tab.
b) Driver Not Assigned - While an order has still not been assigned a driver , it shows here. In case
of store drivers the store manager will have an optio to:
i) Auto dispatch the order to drivers
ii) Manually assign a driver to an order.

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

Store Manager Profile


All the details about store manager can be found on the store profile page :

1. Name
2. Phone Number
3. Email Address
4. store Name
5. Logout

Order History
A store can find all the orders that have been organized under tabs. Each order on the list shows the
following :

1. Master Order Id
2. Store Order Id
3. Tracking Id
4. Order Time
5. Customer Name
6. Order Amount

Clicking on an order gives the following details :

1. Customer Name
2. Order Type
3. Order Details
4. Payment Breakdown
5. Driver Details [in case of delivery]
6. Earning of the store from the order.

Chat With Customer ( Add On )


Store managers can chat with the customer via the in-built chat system. A unique chat is created per
order and the manager has the option to chat with the customer with respect to that order.

Account Statement
Account Statements reflect all the transactions done for a store. It keeps a record of all the cash, 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.
Bank Details [Valid for Stripe Connect]
A manager can connect the store’s stripe Account and link a bank account with it to receive his earnings
when the system admin initiates the pay off from the app’s stripe account.

Catalogue Management
A manager can manage the product visibility on the customer application directly from the store app.
Search allows the user to search from the list of products seamlessly and enable/disable a product. The
manager can mark an item as un-available and can inform the system when it would be next available.

Real-time Order Updates


The manager receives new orders, order updates from the delivery partner’s app, order cancellations,
and order expiry notifications in real time along with push notifications when the app is in the
background.

New Orders are received on the application with a loud sound to make sure orders don’t go unnoticed.

Driver Application

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

1. 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.

2. Store Drivers

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

-> The app supports login with phone number or email address.
-> Freelance Drivers can register themselves by filling up a detailed registration form on the driver
application and they can also submit important documents like their Drivers License, Identity Proof etc.
on the application.
-> Drivers can’t access the application before the verification of their documents by the system admin.
Once the documents are thoroughly checked, the system admin can approve the driver profile which will
allow the driver to sign in on the driver application and mark himself available for receiving orders.
-> Passwords for the drivers can be reset via registered email address.

Document Expiry Checks - Driver App


If any document that is business critical like the driver’s license expires, the driver will not be allowed to
use the app till the don’t update these documents. This ensures that the app does not get into any legal
hassles.

Home Page - Assigned Orders

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.

To prevent offline drivers from receiving order requests, they are immediately removed from the live
view of available drivers and the system will not be able to dispatch orders to them. This will ensure
faster connects between available drivers & customers.

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 driver and each order consists of the following
components :

1. Order Status
2. Delivery Fee
3. Order ID
4. Delivery Date & Time
5. Store Name & Address
6. Customer Name & Address
7. Order Date & Time
8. Order Type

When the driver clicks on the order, the following details are shown [Details vary with each status]:

1. Order ID
2. Order Status
3. Customer Name
4. Call the Customer
5. Chat with the Customer
6. Store Name & Address
7. Call the Store
8. Delivery Address
9. Payment Type
10. Order/Cart Details – Products/Food items ordered by the customer with payment breakdown
11. Update the order Status
12. Navigation to the store or Customer

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.

Steps In Delivery Process


The delivery process is as follows:

a) Driver is sent an order to accept in the case of ASAP delivery orders


b) 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 )
c) Driver visits the store to pickup the orders first. The pickup might require the driver to pickup
multiple orders.
d) Driver scans each bag linked with the order. 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.
e) Driver completes all pickups from the store and then starts each delivery.
f) Driver arrives at first drop.
g) Driver can notify the customer of arrival , this is geo tagged so the driver has to be in a 50 m
range of the address to update this status.
h) Driver drops the items , if the customer is not available the driver can mark the order for
REATTEMPT or can cancel the delivery.
i) On reattempt the driver tries to deliver the order again and an extra delivery fee might be
applied.
j) On cancellation of delivery , the driver has to return the order back to the store.
k) Returns will have to be confirmed by the store manager with a signature.

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.

Proof Of Delivery (POD)


To ensure the delivery of an order, as a method of double hand shake, 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.

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 collection of id proof , for example alcohol.

If contact less 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.

Driver Profile
All the details about the driver can be found on the driver profile page :

1. Picture of the Driver


2. Name
3. Phone Number
4. Email Address
5. Password - Option to Change the Password
6. Driver Commission Plan [Valid for Freelance Drivers only]
7. store Name [Valid for store Drivers only]
8. Logout

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 :

1. Order ID
2. Order Time
3. Customer Name & Address
4. Store Name & Address
5. Delivery Fee

Clicking on an order gives the following details :

1. Order Type
2. Store Name & Address
3. Delivery Address
4. Order Details
5. Payment Breakdown
6. Payment Method
7. Earning of the Driver from the order.
8. Order Status

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

Account Statement

Account Statements reflect all the transactions done for a driver. This keeps a record of all the cash
collected by the driver, the money owed to the driver by the app for credit card/wallet bookings. The
closing balance of this system indicates the money owed by/to the driver. If the balance is negative then
it means that the app owes money to the driver and if the balance is positive then it means that the
driver has excess cash and has to pay the app, the app’s commission for all the cash orders. A soft limit
and hard limit is set for each driver. The limit indicates the cash in hand for the driver. If the driver’s hard
limit is hit, then the driver will not receive any more cash orders till they clear their dues. This is a good
way to restrict risk per driver.

Bank Details [Valid for Stripe Connect]


A driver can connect his Stripe Account and link a bank account with it to receive his earnings when the
system admin initiates the pay off from the app’s stripe account.

Offline Management
The app will store the coordinates offline, within the app itself. Under the event of sudden network loss,
the app locally calculates the distance remaining & updates itself once the network is restored.

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.

Return Management
If the delivery failed due to the customer not being available or lets say the customer returned the
product due to any reason , the driver will return the order back to the store and any such returns have
to be signed off by the store manager.

Geo-Fence Deliveries
All deliveries will be geo-tagged so the driver cannot mark the delivery as completed from any location
outside the geo-fence of the delivery address.

Chat With Customers ( This Is A Paid Add On )


Drivers can chat with the customers directly in case of any issues with respect to the delivery of the
order via the in-built chat module.

Shift Based Delivery Management With Route Optimization ( Route Optimization Is Available
As A Paid Add On )
For scheduled orders , drivers are allocated to shifts. For each geo-zone the number of deliveries possible
per shift is fixed and the time and number of deliveries per driver are also fixed. The app accepts orders
for a shift until the shift capacity is full. The dispatch algorithm manages the route optimization and
creates a time and distance optimized route for each driver per shift.

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.

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.

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

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

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

App Settings

Manage global app settings for language, app version, dispatching, live tracking, etc.
1. Language : Enable, Disable multiple languages on the platform. Each language enabled adds an
additional field for data input for each component on the platform.
2. 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 update or not.
3. App Configuration : Configure parameters for order dispatching, live tracking, product feed,
driver presence, etc.

Product Catalogue Setup

Create and manage different components associated with and needed for adding products to the
platform.
1. Product Categories : Create, update, and delete product categories for the central products.
2. Store Product Categories : Create, update, and delete product categories for the store products.
3. Brands : Add, update, and delete brands that could be used while adding products.
4. Manufacturer : Add, update, and delete manufactures that could be used while adding products.
5. Package boxes: Configure different kind of package boxes.
6. Packaging types: Configure different packing types for bulk pricing that is useful in whole- sale
selling.

Product Attributes
Product attributes are used to provide additional information for products like description, material,
dimensions, warranty information, etc.
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 setup 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 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.
1. Central Products : Products available in the central product inventory.
2. store/Supplier Products : Products associated with different stores.

Store Setup

Add, update and manage, stores, app commission charged to each store.
1. stores : Create, update, delete stores and manage various store configuration affecting the
ordering workflows.

Product & Store Commission Setup

Add, update and manage, store categories, stores, app commission charged to each store.
2. App Commission : App can also setup a per product per store commission which is
commonplace in ecommerce.
3. Store Commission : Define and update commission earned by the app from each active store.
Commision can either be fixed or percentage of the total value of the ordered products.

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

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.

Orders
This section captures the active and completed orders on the platform and list the details of each order
like customer details, payment details, order break down, driver details, etc.
1. All Orders : All orders under different statuses on the platform. Different order statuses under
this section are as follows :
1. New: Orders that have been placed by the customers and are yet to be accepted by the
store.
2. Accepted Orders: Orders that are accepted by the store and are being processed.
3. Packed Orders: Orders that are being packed.
4. Ready For Pickup : Orders that are packed and ready to be picked up.
5. In-Delivery : Orders that are picked up and are being delivered.
6. Completed: Orders that have been been successfully delivered, picked up, expired,
cancelled or rejected.

Product Offers
Create and manage offers on products listed for different store, the discount offered on the product is
determined by the percentage defined in the offer configuration.The discounts could be:
1. Percentage Discount on the price of the product/ dish.
2. Fixed Value Discount

Offer Redemptions
This module provides detailed analytics for the offers created, and consumed by the customers while
making a purchase. This is highly important to understand the impact of an offer over a particular period
of time and is useful for generating marketing reports.

1. Each time an order is made with products that have discounts on them and completed
(successfully delivered or picked up), it is logged under the redemption of the offer.
2. Each redemption record gives the following information:
a. Offer ID
b. User ID
c. Total Order Value
d. Total Discount Offered
e. Date and Time for the Offer Redemption

Financials
View all the financial details for all orders processed on the platform.
1. Accounting : Orderwise breakdown of payments for and earnings from each order for each
entity on the platform.
2. Account Statements : A financial ledger for the platform, payment gateway, customer, driver,
and stores.
3. Stripe Logs : Logs from Stripe of all the activities initiated from the platform.
4. 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 an order.

1. 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 spend 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.
2. 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.
3. 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.
4. 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 eller
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.

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

The following is calculated for each order:

1. 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.
2. Payment Gateway Earnings: The payment gateway charges for each transaction varies from one
payment gateway to another and constitutes the Payment Gateway Earnings.
3. 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.

Store Payouts
1. The system generates a daily report for orders processed by all the stores and generates a report
for the amount of money:
a. Due to store
b. To collect from stores
2. The System Admin can initiate a payment directly to the store’s attached bank account (in case
the payment gateway is stripe.com). For stores who owe money to the app, the admin can
update the store’s wallet when they manually collect the money from the stores.

Marketing ( Additional Add On And Not Part Of Base App )

Includes a bunch of features like loyalty campaign, referral campaign, coupon code, bulk push
notifications, etc. Marketing components are really helpful with customer acquisition, retention, and
remarketing.

Coupon Codes
1. The cost of coupon codes is borne by the app company and the discount will be adjusted against
the app’s earnings.
2. The configuration settings for the promo code include:
a. City (Which city the coupon code can be consumed in, delivery address for the order
must be inside the city)
b. Order Type (You can configure it work with either a pickup order or delivery order)
c. Payment Method (coupon code is valid only for the selected payment method so you
can create a coupon code only for people ordering with their credit card or in app wallet)
d. Discount Type
i. Fixed Value
ii. Percentage Value
e. Total claim count for the coupon code
f. Number of claims allowed per user
3. Analytics are available for which order the coupon code was applied to.
4. Security checks are in place to make sure the coupon code cannot be abused.

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.

Mail and SMS Logs


Logs of all the text messages and emails invoked by platform at various trigger points.

Manage Access
Create, Update, and Manage user access and roles (defining what each role / user could access) for the
Superadmin.
App Content
1. Set cancellation reasons for customers, drivers, and store with language support for additional
languages.
2. Set FAQ text for customers, drivers, and stores with language support for additional languages.
3. Manage the content for Terms & Conditions, and Privacy Policy for drivers, customer, and stores
4. Manage the content for About Us, and Contact Us for the website

Inventory Module
This module allows the stores to manage their inventory in real time, and sync with the purchases, and
sales done on the app or offline at the store. The functionalities available under this module are as
follows:

1. Add, update and delete the inventory of products from the store CMS Panel
2. Review inventory logs to track inventory changes – Manual Add, Manual Delete, Offline Sale,
Sale on App.
3. Product listing on the customer application is always in sync with the inventory.

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.
A CSV file/ XLS file with all the details of the products can be uploaded on the product listing/ menu
listing section of thestore CMS or Warehouse/Central Product listing/ Menu listing section, and the
system adds them. These added products can immediately be seen on the customer application.

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.
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.

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

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.

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

Product Categories
Create, update, and delete product categories for the store products.

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

All Orders
All orders under different statuses on the platform. Different order statuses under this section are as
follows :
1. New: Orders that have been placed by the customers and are yet to be accepted by the store.
2. Accepted: Orders that have been accepted by the store
3. 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.
4. In-Delivery : Orders that have been assigned to a partner and are in the process of delivery to
the customer.
5. Completed: Orders that have been been successfully delivered, picked up, expired, cancelled or
rejected

Offers
Create and manage offers on products listed with the store, the discount offered on the product is
determined by the percentage defined in the offer configuration.

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.

Inventory Module
This module allows the stores to manage their inventory in real time, and sync with the purchases, and
sales done on the app or offline at the store. The functionalities available under this module are as
follows:

4. Add, update and delete the inventory of products from the store CMS Panel
5. Review inventory logs to track inventory changes – Manual Add, Manual Delete, Offline Sale,
Sale on App.
6. Product listing on the customer application is always in sync with the inventory.

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.
A CSV file/ XLS file with all the details of the products can be uploaded on the product listing/ menu
listing section of thestore CMS or Warehouse/Central Product listing/ Menu listing section, and the
system adds them. These added products can immediately be seen on the customer application.

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.

Additional Features

1) Central Web Dispatcher / Fleet Manager Console

a) Login / Signup
Fleet managers are created for each city. He/she can manage orders for the stores connected to the
freelance driver fleet.

1. Supports login with the phone number and email address.


2. Central fleet managers can be registered by the system admin by specifying some basic details.
3. Each city can have multiple active city managers / fleet managers using the dispatcher
simultaneously.
4. Passwords for the fleet managers can be resetted/changed by the system admin from the
Dispatch Users section.

b) Home Page - Order and Dispatch Management


Central web dispatcher is an excellent tool for managing orders, dispatching them to the drivers, editing
or updating orders, and managing failed dispatches for an entire city.

1. When a store connected with the freelance driver fleet dispatch an order and none of the drivers
accepts the same, it is Promoted to the central web dispatcher.
2. On clicking on the order, the drivers list pops up showing the online drivers available to fulfill the
orders. The central dispatch can :
a. Request : Sends a new order notification to the driver giving an option to accept / reject
the order.
b. Assign : When an order is assigned to a driver, he/she doesn’t receive an option to
accept/reject the order, rather the assigned order lists gets updated with a new order.

Driver Assignment Override : Un-assign an order from a driver and assign it to another driver to allow
fulfillment of orders in case the first driver is unable to deliver the order.
A central dispatcher can do this only if the store has chosen “Freelance Drivers” to make the delivery.
He/she can’t manage an order for a store that is connected to the store driver fleet.

c) Order Details Page


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

1. Order Status
2. Customer Details
3. Payment Type
4. Store Details
5. Driver Details for Assigned Order
6. Order/Cart Details – Food items ordered by the customer with payment breakdown
7. Edit order

d) Order History
A store can find all the orders that have been completed, rejected, cancelled, or expired under one tab.
Each order on the list shows the following :

1. Order ID
2. Order Time
3. store Name
4. Customer Name
5. Order Amount

Clicking on an order gives the following details :

1. Customer Name
2. Order Type
3. Order Details
4. Payment Breakdown
5. Driver Details [in case of delivery]
6. Earning of the store from the order.

e) Real-time Order Updates


The central manager receives failed-dispatch orders, order updates from the driver applications,
cancellations, and order expiry notifications in real time.

New Orders are received with a loud sound to make sure orders don’t go unaccepted

f) Create New Order / Call Center Module


The dispatcher can also receive calls and take customer orders directly and key them into the system
using the create new order module.

1) The dispatcher can pull customer’s details via their phone number / email. If a customer is not
registered with the app , the fleet dispatcher can create a new customer.
2) If the store was using its own drivers , the order is forwarded to that store as a new order and
the store continues the processing.
3) If the store was using the app’s drivers , the order is forwarded to the store for fulfillment and
the delivery management system is triggered based on the pre-set business rules.
4) Dispatcher can select the customer’s preferred way of payment for the ordeR:
a) Cash
b) Card if on file
c) Prepaid wallet in case the customer has any balance
5) The dispatcher can also add any additional notes with respect to the order.

g) God's View / Birds View


The dispatcher comes in built with a birds view module. The dispatcher can live track the entire driver
fleet using this module. The dispatcher can view the following details:

1) Live location of the driver


2) Vehicle details of the driver
3) Contact information of the driver
4) All active jobs the driver is doing
5) Details of the driver’s phone’s network , battery levels , device and location services settings.
6) Online status of the driver
2) Store Web Dispatcher / Store Fleet Manager Console
The dispatcher comes inbuilt with all the features as listed in the module above ( Central Web Dispatcher
) with a few changes appropriate for stores. The store specific changes are as follows:

a) Create New Order / Call Center Module


The store dispatcher can also receive calls and take customer orders directly and key them into the
system using the create new order module.

1. Stores can search for already added customers using their phone number / email or can create
new customers by keying in all their details.
2. The customers are considered as store customers and the details are kept private to the store
only and are not added to the central app’s customer list.
3. Store pays for the delivery fee in case they are using the central driver fleet.
4. Stores can pay via credit card , wallet or cash on pickup of order.
5. If the stores have their own drivers they do not need to pay any delivery fee as the store drivers
are considered as employees of the store.
6. Orders created by the store are moved directly to the prepare stage.

New Orders are received with a loud sound to make sure orders don’t go unaccepted

b) Add Payment Method ( Store Wallet And Credit Card On File )


The store dispatcher can add a credit card on file just like on the store app and can use this to pay for
deliveries. The same can be used to re-charge the store’s pre-paid wallet system which can in turn be
used as a payment method on the platform.

c) View drivers
The store can view all the store’s drivers in case they their own drivers for doing the deliveries.

3) B2B Delivery Module / Courier Module / Single Pickup - Multiple Drip Like On Glovo

Read more about Glovo’s business model here @ https://business.glovoapp.com/ and watch a video @
https://www.youtube.com/watch?v=yANEVs_IcCY

This module allows you to expose your delivery partners as a service to other businesses. Businesses can
source orders from other online platforms , can source offline orders and can use the RoadYo system to
get their orders delivered hence easing the need for them to hire and manage their own delivery team.
The RoadYo system offers the following:
1) Single pickup , single delivery
2) Single pickup , multiple delivery - This allows the business to optimize their delivery cost as the
partner picks up the orders from A, and deliver it to B , then C , then D… rather than pickup
from A , deliver to B , pickup from A , deliver to C….
Business’s use the web dispatcher described in (2) above to create the orders and dispatch and track
them.

4) Import delivery jobs via XLS / CSV


Businesses can import their delivery jobs via XLS / CSV. These jobs are ingested into the Delivery
Management System of RoadYo which in-turn converts these to routes that are assigned to delivery
partners keeping in mind route optimization for fuel and them efficiency.

5) Additional Payment Gateway


We can support more than one payment gateway on the same platform allowing the user to choose
from the multiple options available, this is quite relevant when you want to expand the platform from
one country to another. The supported payment gateways are as follows:

1) Stripe - Europe , North America


2) Braintree - Europe , North America
3) Razorpay - India

For any additional payment gateways there will be a need to evaluate the following:

1) Does the payment gateway support card tokenization?


2) Is there an SDK For Android , IOS and Web ?
3) Is the API documentation detailed and is there a sandbox environment available for testing?
4) Does the API support payouts to bank accounts ?
5) Are there any existing apps using this gateway ? If yes , please provide a video of how another
app is using this on their mobile app and website please?

6) Payment Wallet

For Customers
The in-app wallet can be used as an alternate cashless payment system in countries where secure
payment gateways that support mobile apps are not available. The wallet can be recharged using an
online payment system.

The in-app wallet can also be used to receive settlements for cancelled orders or for orders with issues
and this money can be used to make payments for orders on the platform.

For Drivers & Stores

The in-app wallet behaves as a ledger and reflects the amount of money the driver/store has earned or
owes to the app.

There are 2 limits configured for the store/driver wallet:

a) Soft Limit - The entity is nearing the maximum credit limit that the app can offer to the partner
b) Hard Limit - The entity has crossed the maximum credit limit that the app can offer the partner
and the partner will receive no cash bookings till the partner clears the credit owed. The partner
can clear the limit by paying from within the app as long as the payment gateway is integrated.

Wallet transactions are visible on the wallet page and are divided into credit / debit transactions.

7) 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. The configurations for the triggers are:

1. City (Which city is the referral campaign for)


2. Start and End date of the campaign
3. Number of orders to be completed by the new user to unlock the reward.
4. Total value of orders to be completed in the duration of the campaign by the new user to unlock
the reward.
5. Rewards are configured and set for both the new user and also the user who referred the user.
Rewards are credited into the user’s loyalty wallet.

Analytics are available for:

1. Orders qualifying the required criteria.


2. Rewards unlocked.
3. When the reward was claimed.

8) Loyalty Program
The loyalty program module is designed with a trigger-workflow model. If certain criteria are met, then
the reward workflow is triggered for the user whose orders have met the criteria. The configurations for
the triggers are:

1. City
2. Start and End date of the campaign
3. Number of orders to be completed by the user to unlock the reward.
4. Total value of orders to be completed in the duration of the campaign by the user to unlock the
reward.
5. Rewards are configured and set for the user who has placed the orders and are credited into the
loyalty point wallet.
6. Reward points expire if not consumed within the set duration.

Analytics are available for:

1. Orders qualifying the required criteria.


2. Rewards unlocked.
3. When the reward was claimed.

9) Bulk Push Notifications


1. We allow the system admin to send 2 kinds of push notifications:
a. Regular : This will be text only.
b. Rich Push Notifications : This will be sent out with an image.
2. Push notifications can be sent out to all customers in:
a. A city
b. In a country
c. In a radius around a address
d. To specific customers
3. Push notifications can be sent out to all stores in a :
a. City
b. Country
c. Radius around a address
4. Push notifications can be sent out to all drivers in a :
a. City
b. Country
c. Radius around a address

10) Live Chat with Support


Live Chat integrated for communicating with app support on both customer applications.

11) Zendesk Integration for Support Ticket Management


Zendesk is a powerful, flexible, and highly scalable customer service and engagement platform. It
enables customer interactions for the support team over emails and chats.

1. With Zendesk Integration users of the application can launch customer support tickets for
general queries and grievances or for specific orders [both incomplete and complete orders].
2. Customers can also mark the urgency of the issue along with the Subject while creating the
ticket.
3. Tickets generated by the customers appear under the “Help” Section on their Profile Tab
4. Support Team can interact with the customers and resolve their issues from the Zendesk Support
Executive Web Panel and also update the status of the tickets. The status is reflected in the
customer application as well allowing the customer to keep a track of the ticket.
Zendesk is a beautifully simple system for tracking, prioritizing, and solving customer support tickets.

12) Bulk Import with XLS / CSV

Bulk import allows a seamless experience for the store owners or warehouse owners to upload the
products on the system instead of uploading the details of each product individually.
A XLS/CSV with all the details of the products can be added to the product listing section of the store
CMS or Central Product listing section, and the system adds them. These added products can
immediately be seen on the customer application.

13) Number Masking


Using SDK’s Like Twilio the system can enable app to phone calling , and phone to app calling using which
customers can call drivers but drivers will not be able to see the customer’s phone number which will be
masked and will show a generic number to the driver. Keep in mind the SDK will bill you at actuals per
minute.

14) App To App Calling


WebRTC powered app to app calling allows customers to call drivers directly or drivers to call customers
over the internet. This is powered via Agora.io.

The same technology also allows stores to call customers and customers to call stores.
15) Driver-Customer Text Messaging
Our proprietary chat engine to power customer-driver in-app text messaging without using any 3rd party
libraries like Quickblox etc.

16) Store-Customer Text Messaging


Our proprietary chat engine to power customer-store in-app text messaging without using any 3rd party
libraries like Quickblox etc.

17) Advanced App Monitoring


In-depth real time app monitoring of the application allows for in-depth analysis of API performance, DB
performance and server analytics. The components that can be monitored are as follows:

a) Node.API performance
b) Python API performance
c) MongoDB performance
d) Elasticsearch performance
e) Server analytics

We also integrate Fabric into our apps so we monitor the apps at all times for crashes.

18) Smart Alerts


Smart Alerts helps stores or a platform to re-target the 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 like :

1. Abandoned Carts
2. Price Drop for products in the wishlist
3. Price drop for favorited products
4. Price drop for products in cart

19) Sign In with Apple


Sign In with Apple makes it easy for users to sign in to the apps and websites using their Apple ID. Instead
of filling out forms, verifying email addresses, and choosing new passwords, users can use Sign In with
Apple to set up an account and start using the app right away.

All accounts are protected with two-factor authentication for superior security..

20) Multi-Language Support

App Localization:

To access content on the application in different languages, the user can switch between the languages
from the “Language” section under the Profile Tab.
The labels on the application can be updated from Oneskyapp.com in real-time for iOS and for Android ,
while for the website a language file is provided.

App Catalogue Content:

If enabled on the CMS the administrator can update product catalogue data in multiple languages so that
all data that is entered into the application shows to the users in their preferred language , this is great
for localized SEO to increase market reach.

21) Store Drivers / Store Fleet Management Software


If a store has its own driver fleet , they can still use RoadYo as a fleet management software. The revenue
model for the app will change from that of a commission based one to a subscription based one where
the stores pay the app a subscription fee to use the software ( Subscription Management Itself Is Not
Priced For Here ).
If opted for , this system needs to be bought along with the Store Web Dispatcher (2) for maximum
benefits.

For store drivers , drivers are not assigned to zones , store drivers are considered to serve the entire city
or zones that the store has agreed to deliver to. The delivery zones for the store can be managed on the
store profile page.

22) Integration with POS ( Point Of Sale ) system.


POS systems can be integrated in 2 ways:

a) Import inventory data each day via CSV / XLS manually.


b) Integrate POS API / webhook to get real time updates from the POS on sales and also update the
POS with sales made via the app.

The above integrations depend on the technology viability with the POS system.

23) Curbside Pickup


Customers can opt in for curbside pickup rather than delivery so that they can pickup the order from the
store themselves rather than have it delivered. This model is effective in the case of a hyperlocal
e-commerce marketplace system.

24) Business Analytics

All our analytics are powered by Apache Spark. This is the best technology to use for capturing and
analyzing big data.

The Overview dashboard shows key sales, orders, and online store visitor data. You can see at a glance
how your store is performing—across all of your sales channels, and for any date range.
Following are the dashboard report shown:
1. Total sales - Shows the sales amounts, sorted by sales channel. Total sales is equal to gross sales
− offer discounts - promo discounts + shipping + taxes. Only completed order aggregation is
performed.
2. Total orders - Shows the number of orders that were placed till the date, except cancelled
orders, all the order numbers were aggregated based on any date range.
3. Top products by units sold - Shows the top-selling products. This is useful to know for marketing
and inventory purposes.
4. Top product by number of clicks - Shows the top products based on number of clicks by users.
5. Top products added to cart - shows the top products based on number of users added the
product to the cart.
6. Top product cancelled - show the top product based on of cancelation, This is useful to know
product manufacturing defects and can be further segregated to the reason why products get
cancelled.
7. Top product on wish list - show the top product on wish list. This is useful to maintain the stocks
of respective products.
8. Top product categories - show the top product categories. This is useful to know the market
trends.
9. Sessions by device type - Shows the number of sessions on your online store and what kind of
device was used to access your store. The most common device types are mobile, desktop, and
tablet.
10. Sessions by location - Shows the number of sessions on your online store sorted by country. This
is useful to focus the business to certain countries which are generating greater sales to the
business.
11. Repeat customer rate - Shows the percentage of your customers who have placed more than
one order from your store. The rate is calculated as returning customers divided by total
customers. This rate can help you determine how solid your established customer base is.

25) Full Booking Website Built As A Progressive Web Application


The progressive web application allows full ordering and tracking features like the mobile application. All
features on the mobile application are available on the progressive web application. The website has
the following main business impact features:
a) Progressive Web Application - This allows the website to be installed on a mobile device like an
application and appears with a launch icon just like any other mobile app and works just like an
app albeit being a bit slower than a native mobile application. This is a great solution for
businesses like cannabis delivery / marijuana delivery which cannot have apps on the app stores
as the apple app store and google play does not allow apps doing cannabis delivery going live on
their stores.
b) Rich SEO support - The website comes with full SEO support. The following features are key:
i) Server side rendering support
ii) Alt text for all product images
iii) Slug management for category pages , product pages and all website main pages like
home , about.
iv) All images are served through a content delivery network ( CDN )
v) Support for mobile optimized images / scaled images
vi) Full responsive design
vii) AMP support for the home page
viii) Meta tags and page name and page description management for better readability by
the google crawler.
ix) Sitemap created dynamically for all products
x) Deferred javascript loading
xi) Minified javascript
xii) Images served via cloudfront cache for quicker load times
xiii) Browser caching enabled for faster load time
xiv) Java scripts loaded from CDN For quicker rendering.

26) Abandoned Cart / Cart Abandonment


Cart abandonment is a situation when customers add items to their shopping cart but exit the
application or website without making a purchase. The cart abandonment rate shows how many of the
items that are added to the shopping cart are abandoned. It is calculated with the formula: added to
cart/(added to cart+made conversions)

This can be fixed by retargeting the users who have abandoned their carts with different communication
channels like emails, sms, push notification or offering them special discounts.

Our smart engine powered by Apache Spark, Cassandra, and Kafka would generate reports and user
segments based on rules setup and can automate the targeting.

Example 1 : Send an email and push notification to a user after 1 hour of cart abandonment, followed by
everyday push notifications.

Example 2 : Send a 10% discount coupon to a user after 2 days of cart abandonment.
This is a great and effective way of regaining the lost customers

Coming Soon
Alexa Skill for Placing Orders
This module will allow the users to integrate their Alexa Enabled Devices like Echo, Echo Show, Echo Dot,
etc with their Med.Me Account via Med.Me Alexa Skill and place orders or check order status on
Med.Me by saying simple commands like “Alexa, Re-order my last order from Med.Me” or “Alexa, where
is my last order” etc.

Salesforce.com CRM integration


This module will allow all customer and order data to be pushed into salesforce.com which will be
integrated as a CRM to better manage the app.

Quickbooks integration
This module will allow all customer and order data to be pushed into quickbooks to manage:

a) store billing to customers


b) App billing to stores for app commission
Technical Specifications
Back-End and Web Services

APIs Node.js – HAPI Framework, Python – Django Framework , GoLang

Web Apps HTML, JavaScript , Angular 8.0 JS for the Web Dispatchers and
React JS for Customer website

Frameworks HAPI for Node.JS API and Django for Python API’s , Next.JS for the
progressive web application.

Server OS Linux – Ubuntu Distribution

Database Cassandra, Kafka, MongoDB , Elasticsearch, and REDIS

GRPC Grpc used for communicating between micro-services.

Analytics Engine Apache Spark

Message Protocols AMQP and Kafka for internal job queues and MQTT as a high
speed message queue for all real time communication used for
messaging and live tracking.

Hosting AWS/Digital Ocean

Project Management Jira, Slack, Trello

Security SSL API’s , 128 bit AES encryption for critical data , MD5 encryption
for passwords , Reverse Proxy

Version Control Bitbucket

DevOp Circle CI for Continuous Integration and Continuous Deployment

Email Service Mailgun/Sendgrid

Scale Docker for vertical scaling and horizontal scaling. Replica sets for
DB to maintain data redundancy. DB Sharding required in case
scale is hit.

Architecture Micro-service architecture for better resource management.

Testing Load testing via postman load runner and Jmeter, API testing via
mocha and chai scripting
App Monitoring Proprietary tool for monitoring Node.JS, Mongo DB in real time
with alerts setup for maintenance team on slack. Time series data
available for past data on a visualization tool.

Mobile Applications:

iOS app Swift 5 and Rx Swift for iOS

Android app Java and Rx Java for Android

Framework: Android Studio for Android and Xcode for iOS

Platform Environment: Linux ( Android ) and iOS for iPhone

Note - Database, Version Control, and Project Management will remain the same as mentioned under Back-End
and Web Services

Technical App Architecture

You might also like