RoverPal - A Mobile Payment Application



Similar documents
Introduction to Android

Creating and Using Databases for Android Applications

Intel Storage System SSR212CC Enclosure Management Software Installation Guide For Red Hat* Enterprise Linux

ANDROID BASED MOBILE APPLICATION DEVELOPMENT and its SECURITY

Introduction to Android

Reminders. Lab opens from today. Many students want to use the extra I/O pins on

Example of Standard API

GETTING STARTED WITH ANDROID DEVELOPMENT FOR EMBEDDED SYSTEMS

PHD Virtual Backup for Hyper-V

TIBCO Silver Fabric Continuity User s Guide

Review On Google Android a Mobile Platform

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone

Avaya Identity Engines Ignition Server Release: Avaya Inc. All Rights Reserved.

HP Education Services

AN4108 Application note

ITG Software Engineering

Hyper-V Installation Guide for Snare Server

Research and Design of Universal and Open Software Development Platform for Digital Home

CA Spectrum and CA Service Desk

An Introduction to Android

BrightStor ARCserve Backup for Linux

Introduction to Android Android Architecture Software Development Purpose of the project Location Based Service (LBS) Android. Location class Google

NVIDIA GRID 2.0 ENTERPRISE SOFTWARE

Epidefender Studio Installation notice

StarWind Virtual SAN Hyper-Converged Platform Quick Start Guide

RealPresence Platform Director

Installation Guide for Citrix XenServer 5.5

Intel Media SDK Library Distribution and Dispatching Process

Using the Adobe Access Server for Protected Streaming

Enterprise Manager. Version 6.2. Installation Guide

INSTALLATION GUIDE. AXIS Camera Station

Chapter 3 Create an EasyBuilder Project... 2

RSM Web Gateway RSM Web Client INSTALLATION AND ADMINISTRATION GUIDE

StoneGate Firewall/VPN How-To Evaluating StoneGate FW/VPN in VMware Workstation

Android Operating System

Feith Dashboard iq Server Version 8.1 Install Guide

CA Change Manager Enterprise Workbench r12

Android Architecture. Alexandra Harrison & Jake Saxton

SiI3132 SATARAID5 Quick Installation Guide (Windows version)

Integration Service Database. Installation Guide - Oracle. On-Premises

This presentation covers virtual application shared services supplied with IBM Workload Deployer version 3.1.

Setting up an icap Server for ISG- 1000/2000 AV Support

Lab 0 (Setting up your Development Environment) Week 1

XenClient Enterprise Synchronizer Installation Guide

Secure Held Print Jobs. Administrator's Guide

Plexxi Control Installation Guide Release 2.1.0

Version Using Oracle Commerce Cloud Service Agent Console

Hyper-V Server 2008 Setup and Configuration Tool Guide

PrinterOn Embedded Application For Samsung Printers and MFPs

How To Set Up A Xerox Econcierge Powered By Xerx Account

CA APM Cloud Monitor. Scripting Guide. Release 8.2

HP Cloud Map for TIBCO ActiveMatrix BusinessWorks: Importing the template

CA Service Desk Manager - Mobile Enabler 2.0

Contents Firewall Monitor Overview Getting Started Setting Up Firewall Monitor Attack Alerts Viewing Firewall Monitor Attack Alerts

Android Programming and Security

Backup & Disaster Recovery Appliance User Guide

Fahim Uddin 1. Java SDK

Parallels Desktop for Mac

Introduction to Android Development. Jeff Avery CS349, Mar 2013

Android Development. Lecture AD 0 Android SDK & Development Environment. Università degli Studi di Parma. Mobile Application Development

High Level Design Distributed Network Traffic Controller

An Oracle White Paper July Oracle Linux and Oracle VM Remote Lab User Guide

An Introduction to Android. Huang Xuguang Database Lab. Inha University

Mobile Application Development Android

Enhanced Diagnostics Improve Performance, Configurability, and Usability

DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service

CafePilot has 3 components: the Client, Server and Service Request Monitor (or SRM for short).

KonyOne Server Prerequisites _ MS SQL Server

ReadyNAS Setup Manual

1-Port Wireless USB 2.0 Print Server Model # APSUSB201W. Quick Installation Guide. Ver. 2A

INSTALLATION GUIDE. Assign an IP Address and Access the Video Stream

Download and Installation Instructions. Android SDK and Android Development Tools (ADT) Microsoft Windows

EPI SUITE 6 INSTALLATION INSTRUCTIONS

QUICK START. GO-Global Cloud 4.1 SETTING UP A LINUX CLOUD SERVER AND HOST INSTALL THE CLOUD SERVER ON LINUX

OfficeConnect Internet Firewall 25 Internet Firewall DMZ. QuickStart Guide (3C16770, 3C16771)

Islamic University of Gaza. Faculty of Engineering. Computer Engineering Department. Mobile Computing ECOM Eng. Wafaa Audah.

Praktikum Entwicklung Mediensysteme (für Master)

Kony MobileFabric. Sync Windows Installation Manual - WebSphere. On-Premises. Release 6.5. Document Relevance and Accuracy

Android Development Tools for Eclipse

IBM TRIRIGA Anywhere Version 10 Release 4. Installing a development environment

Software Support Registration workflow

HP CloudSystem Enterprise

Chapter 14 Virtual Machines

Technical Overview of PayPal as an Additional Payment Option

Using AnywhereUSB to Connect USB Devices

Getting Started with Apple Pay on the Authorize.Net Platform

Development. SriSeshaa Technologies. Table of Contents

USER GUIDE: INTERNET BANKING. Version 2.0

VPN: Virtual Private Network Setup Instructions

How to Configure Intel Ethernet Converged Network Adapter-Enabled Virtual Functions on VMware* ESXi* 5.1

StarWind iscsi SAN Software: Using with Citrix XenServer

Installing the Android SDK

Opendiem Training Exercise 1 Opendiem-TRN-0001

Implementing SAAS: Cloud Computing and Android Based Application Framework for C Programming

CS378 -Mobile Computing. Android Overview and Android Development Environment

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I)

Overview. The Android operating system is like a cake consisting of various layers.

The cloud server setup program installs the cloud server application, Apache Tomcat, Java Runtime Environment, and PostgreSQL.

Transcription:

White Paper RoverPal - A Mobile Payment Application Introduction Online shopping has been a favorable experience with most of us. Still, we come across instances where we are out on shopping and we run out of cash and have forgot to carry the card/s. Mobile shopping is the solution suggested by the technology addressing this problem. Mobile shopping is a concept where we can shop anywhere and pay using the mobile device in our pocket. This kind of payment is known as Mobile Payment. Mobile payment is nothing but processing a payment for goods or services with a mobile device such as a mobile phone, Personal Digital Assistant (PDA), or other such device. The Figure 1 shows the Mobile Payment System Architecture. Figure 1 Mobile Payment System Architecture Payment Service Provider Virtual Bank having Customer and Merchant A/Cs. Customer Merchant Customer using Mobile Device Goods or Service Provider The Open Handset Alliance, a group of more than 30 technology and mobile companies have come together to accelerate innovation in mobile and offer consumers a richer, less expensive, and better mobile experience. Together they have developed Android, the first complete, open, and free mobile platform. Android is a Linux-based and open source, and aspects of the platform will be made available to handset manufacturers for free under the Apache license. Therefore, now the market is ready for a number of Android based applications that support mobile payment. Objective This white paper aims at providing an overview on the development and usage of a mobile payment application for mobile phones (using Android OS). The application is named as RoverPal. RoverPal is developed for using mobile payment at vending machines. 1.0 1

RoverPal - A mobile payment application RoverPal is an application that implements Mobile Payment concept and uses the Android platform. RoverPal processes a payment for goods and services using an Android specific mobile device from the Vending Machine. The following items represent the major components of the RoverPal System. See Figure 2. Figure 2 RoverPal System Overview Customer: Having Android supported Mobile using RoverPal Application Merchant : Having Vending Machine connected with Web Payment Service Provider : Google Checkout used for transaction 1. Select language 2. Connection Request 3. Sends list of items Connection Process 4. Selects Items from the list & enters Quantity 5. Enter Google checkout User ID and Passward to make Payment 6. Forwards Transaction information 9. Receives Items 7. Displays Advertisement through Google AdWords 8. Sends Acknowledgement Transaction Process As shown in the figure, the application consists of a mobile client (Android), a vending machine server (TomCat) and a payment service provider (Google Checkout). The RoverPal application on the mobile client initiates the process by requesting the product details from the vending machine server. The RoverPal application on the vending machine server provides the relevant information. The mobile client then orders the items required. After order confirmation, the client will be provided a payment gateway to pay. The vending machine server already has the merchant account with the payment service provider. The mobile client will create a new account (in case of a new user) and pays using that payment gateway on the mobile device itself. After the vending machine server receives the payment confirmation from the payment service provider, it will issue the items ordered. 2 System Level Solutions

RoverPal System Insight This section will discuss on some more details for each of the modules shown in the previous section. See the Figure 3 below for system structure in detail. Figure 3 RoverPal System Insight RoverPal Mobile Client (Android) The RoverPal application uses Android, which is an opensource mobile OS, on the client side. Android delivers a complete set of software for mobile devices: an operating system, middle ware and key mobile applications. Android is built on the open Linux Kernel. Furthermore, it utilizes a custom virtual machine that has been designed to optimize memory and hardware resources in a mobile environment. Android provides access to a wide range of useful libraries and tools that can be used to build rich applications. For example, Android enables developers to obtain the location of the device, and allows devices to communicate with one another enabling rich peer-to-peer social applications. In addition, Android includes a full set of tools that have been built from the ground up alongside the platform providing developers with high productivity and deep insight into their applications. Android includes a set of core libraries that provides most of the functionality available in the core libraries of the Java programming language. Every Android application runs in its own process, with its own instance of the Dalvik virtual machine. Dalvik has been written so that a device can run multiple VMs efficiently. The Dalvik VM executes files in the Dalvik Executable (.dex) format which is optimized for minimal memory footprint. The VM is register-based, and runs classes compiled by a Java language compiler that have been transformed into the.dex format by the included "dx" tool. The application uses Ethernet Linux driver from the available drivers in the stack. Android SDK not being completely open sourced at present, we have used JRE for socket level programming. Vending Machine Server (TomCat) The RoverPal vending machine server application is developed in Linux and uses TomCat as a web server. You can download Tomcat 4.0 or later release from the http://tomcat.apache.org/download-55.cgi. Install and run Tomcat 4.0 or later from http://tomcat.apache.org/tomcat-4.1-doc/running.txt. System Level Solutions 3

The vending machine server uses lower level ethernet linux drivers, JAVA at upper level and Java Runtime Environment in the firmware. JRE is used for JSP and Servlet programming at the socket level. Payment Service Provider (Google Checkout) We have used the Google Checkout as the payment service provider to demonstrate the RoverPal application. The mobile client connects to the Google Checkout as a buyer and creates a buyer account when logged in for the first time. This is done just as any other client connects to Google Checkout. The vending machine server connects to Google Checkout as a merchant and creates a merchant account. The Google Checkout API is used for vending machine server configuration using XML. Following parameters are configured at present: Item Name Description Price Quantity Using the RoverPal application To purchase items using RoverPal follow the steps below: 1. Start RoverPal by clicking on the RoverPal icon. Figure 4 Starting RoverPal Application 2. The RoverPal Splash screen appears as shown in Figure 5. 4 System Level Solutions

Figure 5 RoverPal Splash Screen 3. Next, you will see the Language selection dialog box as shown in Figure 6 Select the Language. Figure 6 Language Selection 4. Click Ok. 5. Enter IP address of the vending machine (in this case Linux computer). See Figure 7 Figure 7 Entering IP Address of the Vending Machine System Level Solutions 5

6. Click Connect. A connection request will be sent to the vending machine server. 7. On successful connection, item list will appear. Selecti Items you want to purchase and enter quantities for the selected items as shown in Figure 8. Figure 8 Selecting Items & Entering Quantity 8. Click Buy. 9. Enter Google Checkout Email id and Password to make the payment. See Figure 9 Figure 9 Entering Email Id and Password of Google Checkout 10. Click Sign In. All the selected items request will be submitted to the vending machine server, after the verification by Google Checkout. Mobile client will be in wait state. 11. Vending machine server displays relevant advertisements through Google AdWords to the client during this transaction process. Figure 10 Vending Machine Displaying Advertisement throgh Google AdWords 6 System Level Solutions

12. When the vending machine server receives the payment information from Google Checkout, it delivers the selected items to the customer. Responsibility Applications are responsible for managing their internal state regarding purchased features. The application must store state information for persistent storage to allow the end user to continue using a purchased feature when the application is started next time. Benefits 1. Securely process payments anywhere, anytime 2. Automatically send a payment confirmation via communication media. 3. Automatically send a receipt via communication media. 4. Transaction records are immediately & securely available online 5. Save time & money by reducing paperwork 6. All from one single device! Future Enhancement In future, we wish to enhance RoverPal with following features: 1. The long-term goal of the RoverPal is to integrate all legacy payments (those possible with cash, bank transfers, credit cards, etc.) and provide an alternative solution that uses the different channels in a homogeneous way. 2. RoverPal will also target the micro-payments area, especially the lower level as well as values lower than 1 (which is not possible via real cash). 3. RoverPal transactions will be conducted independently of the user s location. System Level Solutions 14100, Murphy Avenue San Martin, CA95046 (408) 852-0067 http://www.slscorp.com Copyright 2008, System Level Solutions, Inc. (SLS) All rights reserved. SLS, an Embedded systems company, the stylized SLS logo, specific device designations, and all other words and logos that are identified as trademarks and/or service marks are, unless noted otherwise, the trademarks and service marks of SLS in India and other countries. All other products or service names are the property of their respective holders. SLS products are protected under numerous U.S. and foreign patents and pending applications, mask working rights, and copyrights. SLS reserves the right to make changes to any products and services at any time without notice. SLS assumes no responsibility or liability arising out of the application or use of any information, products, or service described herein except as expressly agreed to in writing by SLS. SLS customers are advised to obtain the latest version of specifications before relying on any published information and before orders for products or services wp_roverpal_1.0 7 System Level Solutions