Turn Miles into Money

Overview

Gone are the days where people used to wait for buses and parking. Whether you are going to attend a wedding or preparing yourself for the meeting, there is Karwa for every occasion. Karwa is one of the best on-demand taxi apps that help you to avail fast and comfortable rides within minutes. With smooth signup process and uncluttered UI, it won't take much time to avail your first ride. If you're lucky enough, you can get a free or discounted ride using a referral code. Now book your first ride using Karwa in few simple steps: Set your pickup and drop-off location, select car type from available options and you will get ride confirmation within few seconds. Once your trip ends, you will get a payment invoice and pay the fare by cash. After the ride, you can also share your ride experience by giving reviews and ratings to drivers. Want to plan a trip in a different province? You can choose an intercity ride and book cab. Need a cab to attend the meeting tomorrow? You can choose “Ride Later” and book cab in advance. Apart from this, the app also allows you to track drivers location, get fare estimation and track ride history in the most convenient way. So just download the app now and experience your first ride today.

taxi app development

Client Requirement

A client from Iraq approached Hyperlink InfoSystem to develop an on-demand taxi booking app that allows people to avail comfortable rides within few simple clicks. The main aim of the client is to introduce intercity ride concept where people can travel into different province while enjoying the best transportation in cost-effective amount. The app is developed on Android and iOS platforms and designed for people of Iraq.

Features

1. Signup/ Login:

Signup with basic details.

After signup, a six digit pin is sent to the rider's mobile through SMS. The rider can login in the app using pin and password.

2. Get Ride:

In order to avail ride, riders need to select pick-up and drop-off location, and ride type. Afterward, the ride request is sent to the multiple drivers. After acceptance of ride request, a rider is popped up with fare estimation and estimated time to reach towards the destination.

3. Ride Later:

In order to organize future rides, you can choose “ride later” option. All you need to do is just select pickup and drop-off location and preferred date and time and your ride are scheduled. In case of any adversity, riders can even cancel the ride.

4. Intercity Ride:

For people that are planning to travel across different provinces, Karwa introduces “Intercity ride” where riders need to select pickup and drop off location and their preferred date and time. Once the ride is confirmed, riders will be notified.

5. Message & Call:

Riders can communicate with the driver using application inbuilt messaging and call system.

6. Payment:

After completion of the ride, riders will get payment invoice and pay the fare by cash.

7. Invoice:

Once the trip is over, riders are notified with ride invoice where they can check their ride details. The ride invoice includes:

Pick-Up And Drop-Off Location

Time

Distance

Driver Name

Car Type

Fare Amount

8. Track Driver's Location:

After confirmation of ride, the app allow riders to track driver's location.

9. Rating & Reviews:

After completion of the ride, riders can share their overall experience by giving rate and reviews to drivers.

10. Profile:

Riders can view and edit their profile.

11. Notifications:

Riders are notified in the below scenario:

When drivers accept/decline ride request

During driver arrival

During start and end of ride

12. Access Map:

In order to access map for navigation, Google Maps API is integrated.

13. Ride History:

It shows the list of completed, canceled and pending rides. Selecting particular ride Id will redirect users to ride detail page.


1. Signup & Login:

Signup with basic details

Login with username and password

2. Add Documents:

To avail service as a cab driver, they need to attach below documents:

Driving License

Vehicle Registration Card

Vehicle Inspection Report

Police Report

Owner Id/Photo

3. Availability Status:

To change availability status, driver can toggle between two: Online/Offline

4. Notifications:

Drivers are notified in below scenario:

New ride request

When riders cancel the ride

Ride payment

5. Ride Invoice:

After completion of the ride, drivers are paid ride fare amount by cash. They receive ride invoice which includes:

Pickup And Drop-Off Location

Time And Distance

Riders Name And Car Type

Ride Fare

6. Ratings & Reviews:

After completion of the ride, drivers can share their ride experience through ratings and reviews.

7. Profile:

Drivers can view and edit their profile

8. Ride History:

Drivers can view their completed, canceled and pending ride history.

9. Access Map:

Integration of Google Maps to navigate from pickup to drop-off location.


1. Staff Management:

View, add, edit and delete staff list

Active/Inactive staff

2. Rider Management:

View, edit and delete rider details

Active/Inactive rider

Search rider

View rider's location in map

3. Driver Management:

View and add driver details

Active/Inactive driver status

Filter drivers by country, province, city and car type

Search Drivers

Export driver details to excel

View driver's location in map

4. Car Type Management:

View, add, update and delete car type details

Filter car type by country, province, and city

Search car type

5. Car Type Intercity:

View, add, update and delete car type intercity

Filter car type by country and province

Search car type intercity

6. Country Management:

Add, update and delete country details

Active/Inactive country details

Search country

7. Province Management:

Add, update and delete province details

Active/Inactive province status

Filter province name by country

8. City Management:

Add, update and delete city details

Active/Inactive city details

Filter city by province and country name

Search City

9. Promocode Management:

Add, update and delete promocode

Search promocode

Active/Inactive promocode

10. Reason Management:

Add, update and delete reason details

Search reason list

11. Note Management:

Update note details

12. Ride Management:

View and delete waiting, assigned, arrived, processing, completed, canceled, reject and missed the ride.

Filter ride with options like now, later, province, city and order date.

13. Rating and Review Management:

View, update and delete driver and riders ratings.

14. Report Management:

Filter and export reports to Excel and PDF by below options:

Trip ID

Driver Name

Car Type

Payment method

Rider Name

Intercity car type

City name

Ride type

15. Banner Management:

Update and delete banner details

16. Driver Settlement Management:

It shows list of paid and pending driver settlement.

Download PDF of paid and pending driver settlement.

Filter driver settlement by driver name.

17. Setting Management:

Admin manage settings of below things:

Driver settlement limit amount

Payment ratio

Payment settlement days

Maximum distance

karwa admin panel

karwa website

The karwa website is an informative website. It contains below-mentioned features:

Driver Login

Home Page

Allows riders to enter pickup and drop-off location to calculate estimated fare.

Navigation links in header section

Contact details in footer section

Challenges

After selecting pickup and drop off location, ride request is sent to the driver. If the driver accepts the ride request, the next screen popup with the entire path from pickup to drop off. Drawing polyline on the entire path was quite complex and time-consuming. Our development team handled this scenario by using directionUsingGoogle() method of a mapManager class to draw polyline of the entire route from pickup to drop-off.

When a user selects pick-up and drop-off location, the system automatically generates & sends fare estimation to the user. But, there are scenarios where single destinations may have multiple routes to reach. Calculation of fare estimation based on the selected destination route and sending fare estimation based on selected route distance was indeed hard and challenging. However, using the DistanceFrom Location() function of Location Manager class, our developers calculated the distance and managed the scenario quite efficiently.

Technologies

Android, iOS, and Website & Admin Panel Development

Android

Android OS support:
4.3 to 7.0 Android

Development:
Java using Android Studio

Android Supported Devices:
480x800, 720x1280, 1080x1920, 1440x2560

Language Support:
English, Arabic

iOS

iOS OS support:
iOS 8.0 to 10.3

Development:
Swift Using Xcode

iOS Supported:
iPhone 5, iPhone 5S, iPhone 6, iPhone 6 Plus, iPhone 6S, iPhone 6S Plus, iPhone 7 , iPhone 7 Plus

Language Support:
English, Arabic

Website & Admin Panel:

Technology: PHP, CodeIgniter Framework

Database: MySQL

API: REST API in JSON format

Supported Browser:
Mozilla Firefox: Min 40.0 to Max 53.0 version
Google Chrome: Min 44.0 to Max 58.0 version
Internet Explorer: Min 10.0 to Max 11.0 version
Apple Safari: Min 8.0 to Max 10.0 version

Get Free Quote Now !