Mobile Field Operations
Goals
- Tools to enable far-reaching field operations in remote areas including mobile, tablet, and offline devices.
Background and strategic fit
Many of our customers work in rural and outlying regions and need their field operations staff to be connected to their clients and their data at all times. They need access to data on and offline and to have the full power of Mifos X in their mobile devices so they can reduce the costs of serving their clients.
Assumptions
- For smartphones and tablets, we will primarily design and build for the Android operating system given the ubiquity of the platform, low cost of devices and extensibility of the platform.
- Ability for data collection needs to be available on and offline - while connectivity is rapidly expanding, many of our customers still require offline data entry
- Offline data entry will be centered around mobile devices but our customers still require browser-based solutions for offline data capture.
- Mobile financial services is separate from mobile field operations and is a separate topic
- Mobile field operations is focused on the operational staff of the financial institution and is separate from mobile banking which is client-facing.
Customers
Customer | Location | Description | Status | Smartphone | Tablet | Offline - Mobile | Offline-Browser |
---|---|---|---|---|---|---|---|
Financial Institution Name | Country | Overview of Requirements | Processes to be supported | Processes to be Supported | Processes... | Processes... | |
TCP Global | Colombia, |
|
|
| |||
Digamber Finance | See Mobile Use Cases - Digamber Finance | Need to operate in areas of low connectivity. | |||||
Nuru International | |||||||
WOCCU | AKA Musoni App | ||||||
Esperanza International | Dominican Republic | Overview of mobile requirements |
|
|
| ||
Global Finance Cameroon | Client Information
Transactions
| ||||||
Cellos Tech | Store and forward capabilities | Store and forward capabilities | |||||
Intrasoft | Kenya | See Mobile Use Cases - Intrasoft (Zayyad) | |||||
AFP (led by FINA | Laos | FINA built a offline android client and server-based solution to provide a payment mechanism to manage the delivery of cash stipends to the rural poor in Lao PDF | Completed - Production | Transactions can be captured in the field while offline and uploaded and synced with database when online once again. | |||
Conflux | India | These are the implications Binny wants to be considered as one thinks about the potential for conflicting transactions when capturing data offline | I think we are over-simplifying the problem. By treating it as a technical problem where we need to store some of the data offline. My opinion is that storing data offline is merely a technical detail and possibly the easier part to accomplish.
For me, the areas that we need to design more is – how will the process work and how will the data syncing with server be accomplished gracefully?
a) Which use cases will be available during offline operations and what is the need? – validate this with the end-user organization b) New customers and accounts – - Customer onboarded or loan created offline – in the offline module a customer ID is allocated (for example: new customer “Steve” was allocated an ID of 1999 in the offline) – an ID is needed as some kind of reference has to be given back to the customer or written down on their paper application form - Before this data was synced with server, other customers were onboarded on the server – with IDs 1999 till 2004 - Now when you sync offline data with server, Steve may get an ID of 2005. How will this be synced up? Perhaps an external ID needs to be allocated. In such a case, how will we ensure that external IDs are unique across all offline use? c) Similar issue with transaction ID – receipt issued to customer with one transaction ID or reference number, but when the transaction is synced with server, we may not be able to retain the same transaction ID d) Reflecting the transaction date/time on the server with the same date/time when the transaction happened in the field e) Server side validations Example: Savings withdrawal – balance is blocked on server due to the account being part of a guarantee. How will we ensure that withdrawal attempt fails? f) How will we ensure that an offline savings withdrawal will not be followed by an online withdrawal by a fraudster? |
Requirements
See Mifos X Android App Requirements documented for GoogleServe volunteer event.
# | Title | User Story | Importance | Notes |
---|---|---|---|---|
1 | ||||
2 |
User interaction and design
Questions
Below is a list of questions to be addressed as a result of this requirements document:
Question | Outcome |
---|---|