MPESA Loan Repayments and Savings Deposits Functional Spec v2

MPESA Loan Repayments and Savings Deposits Functional Spec v2

M-PESA - Import Loan Repayments plus Savings Deposits v2

Release

Leila E

Current Owners:

Kay Chau

Status (Draft, In Review, Approved)

Approved (Marie Valdez)

Introduction

KEEF is planning to have mobile integration with M-PESA.  They are using Mifos for their MIS platform.  KEEF needs the ability to import a file of transaction information from M-PESA into Mifos.  They also have the need for importing single amounts that span several different transactions.

User Stories (Epics)

Priority

User Story

Section in FR

1

As a user (accountant) at the HO, I want to be able to import a file of loan repayment transactions plus savings deposits from M-PESA into Mifos so that all details for our clients' payments are accurately recorded in Mifos

 

1

As a loan officer at a BO, I want to be able to see the clients at branch have paid their loans in Mifos

 

1

As a loan officer at a BO, I want to be able to see savings accounts of the clients updated with the correct deposit information

 

Goals

  • Ability to import file of loan repayment transactions plus savings deposits into Mifos

  • Transaction History in Mifos accurately shows loan payments and savings deposits

  • Update plugin similar to what has been done for Al Majmoua for the Audi Bank import.

  • Properly account for all transactions read, ignored, errored, and imported.

Non-Goals

The following items will not be addressed in this version of the plugin:

  • Additional logging of import than what we do already in Mifos for logging

  • Ability to review what is imported at import time

Definitions and Terminology

Term

Definitions

 

 

  • Mandatory fields will be preceded by *

  • Links are italicized

  • Buttons are Button

Related Documents

MPESA Loan Repayments and Savings Deposits Functional Spec v1

Import Transactions

This feature is in the Admin section and will allow the User to import transactions

Use Cases

Administrator sets up order in which a transaction can applied

Actors

  • Administrator

Preconditions

Basic Flow

  1. Administrator edits a properties file with new setting for order of products a transaction import is applied to.  The products are listed with commas by short name.

Post-conditions

  • All transactions imported as repayments/deposits are imported in this order unless product names are found in the import row.

Validations

  • When import happens, validation will be done to try to import in this logic.  If the accounts are not found, an error is thrown.

  • If this property is not set, then all transaction rows with no other information on loan or savings accounts will thrown an error.

Accountant imports transactions (M-PESA) - file with no errors

Actors

  • Accountant

Preconditions

  • Accountant has permissions to import transactions

  • Accountant has file in xls (Excel 97 format) to import

Basic Flow

  1. Accountant logs onto Mifos and navigates to the Admin section. Accountant selects Import transactions.

  2. Mifos displays new screen for Import Transactions.

  3. Accountant selects M-PESA for Import format, and selects file from their computer for import. Accountant clicks on Continue.

  4. Mifos imports file and checks for any errors (see Validations below). If there are no errors, Mifos displays Review & Submit screen with "There are no errors found. Click Submit to continue with import."

  5. Accountant clicks on Submit. Mifos displays confirmation screen that import was successful.

Post-conditions

  • All data available in the file has been imported and all the correct tables and loan account data correctly populated.

Validations

  • If a row has a cell that's empty in a required column is empty, that row is rejected and appropriate error message displayed.

  • No bad data - ie, no numbers in columns that require text and vice versa. See FR's below.

Alternative Flows

Accountant cancels Import

  1. At step 4, Accountant clicks on Cancel instead. Mifos returns User to the Admin screen.

Post-conditions

  • No data has been imported.