44292_Billy_0_1x - Rent a coder

fullfattruckΚινητά – Ασύρματες Τεχνολογίες

10 Δεκ 2013 (πριν από 3 χρόνια και 6 μήνες)

72 εμφανίσεις

PAYMENT APP


Joost Rietman

0.1

23/10/13




Introduction


The app should contain 2 parts: A server part and an Android app.
The goal of the app is to
provide an easy user interface fro

payments to friends. The system does not commit the actual
payment but is front end for a company that settles the payments.






Webserver

The server part should contain a administration screen and a number of webservices.



Webservices:

Create user.

Th
is service can be used by the app to create a new user in the database
. This
service should check if a user (msisdn already exists). Only new msisdns can be added.



Submit transaction:

This service is used to submit a transaction to the database



Getstat
usoverview:

This service is used by the app to get an overview of all running
transactions. In this overview all open payments either from or to this user should be shown



CheckUser:

This service checks whether a user exists on msisdn of facebook account
and
returns the userid



Update Transaction station:

This webservice is used to update the status of a transaction


Delete user:

This service makes it possible to delete a user. This can only be performed for a
user with an authorization level of 10 and
higher



Database
:


The database should contain 2 tables: users & transactions.

The user table

should contain the following values:

Userid: (unique id, automatically generated, required)

Initials

lastname

MSISDN: (required, unique)

Facebook id (optional, b
ut if filled in it should be unique)

Bankaccountnumber (required)

Authorization level: (number between 1
-
100) new users should get level 10)



Transaction table:

From user id

To user id

Bankaccount from

Bankaccount to

Amount

currency

status

(submitted, confirmed, exported, rejected)




The Android App



The app has a total of 13 screens. All screens should be available in dutch and english


Login screen:

This screen contains an entry box for a 5 digit login passcode and a newuser/forgot
login code
button. When this button is clicked the registration screen will open





Registration screens:

The first screen has input boxes for: MSISDN, bankaccount, initials, lastname, a language
selector (default is dutch, stored locally) and a ok button
. If you press the ok button you will
come in the accept terms screen:



Accept terms screen:

This screen contains text, a checkbox and a next button. The button can only be pressed if the
terms are accepted. After the button is pressed you will continue t
o the choose login passcode
screen.



Choose passcode screen

Here 2 input boxes are shown: type code & retype code. After this is filled in the registration is
submitted to the server
. If the
servers says that the user already exists the option should be
g
iven to delete the existing user. If the create user is succefull the the user will be redirected to
the main screen. The passcode is stored local on the device.



Main screen

The main screen contains 3 tabs: payments, messages, settings



Paymentscreen

Th
e payment screen contains 3 buttons: Phone contacts, facebook friends, last used contacts



Phone ontacts

If you press the phone contacts button a list of phone contacts is shown. After selecting 1 the a
request is send to the server to check the existence

of the user. If not a message should be
shown that the contact is not a user yet. This payment info screen is opened



Facebook friends

If you press the facebook friends button for the first time a screen for facebook authorization is
shown. After select
ing 1 the a request is send to the server to check the existence of the user. If
not a message should be shown that the contact is not a user yet. After this is done a list of
friends is shown. After selecting 1 the payment info screen is opened.



Last us
ed contact

If you press this button a list with 10 last used contacts is shown. This list is stored at the device.
After selecting 1 the a request is send to the server to check the existence of the user. If not a
message should be shown that the contact i
s not a user yet. After selecting 1 the payment info
screen is opened.



Payment info screen

In this screen the contacts name is pre filled in. The screen contains a field for amount and a
submit next button. After thi is pressed the confirmation screen is

shown.



Payment Confirmation screen

On this screen a message is shown that the transfer will not start untill the contact has
confirmed the transaction. And a legal text is shown. After pushing the OK button the
transaction is submitted to the server and
the user will return to the main screen.



Messages

In this screen a list of incoming messages is shown. This is done by quering the
Getstatusoverview webservice. The screen shows per message a contactname and a
timestamp. After selecting a message the me
ssage details screen is shown.



Message details

The message detail screen shows a text that shows the amount of the transaction the name of
the sender and 2 buttons. One is the next button and the other one is a reject button. After
pushin
g the reject button the status of the transaction in the database will be updated to
rejected. and the user is redirected to the main screen. After pressing the next button the
confirm receivable screen is shown.


Confirm Receivable Screen

This screen cont
ains text and conditions and an accept button. If the accept button is pushed
the status in the databse will be updated to confirmed and the user is redirected to the main
screen



Settings

This screen will show: facebook account, bankaccount, a change pa
sscode button (after this
button is pressed the user will be redirected to the choose passcode screen) and a delete
account button. After the delete button is pressed a request is send to the server to delete the
account. Also the passcode will be deleted
and the user will be redirected to the login screen.





Administration website

A webpage should be available with an export button. If this button is pressed a file can be
downloaded with all transactions with the status confirmed. For this a view should
be created on
the database. This view should be a join from the transaction table with the user table



Screensoverview


Billy App.xlsx




Screens