fineract-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ed Cable <edca...@mifos.org>
Subject Re: [Mifos-developer] Requirements Discussion for Mobile Money Integration Project for Google Summer of Code -- notes
Date Wed, 17 May 2017 16:01:34 GMT
Thanks to all who joined the call.

Here's a some brief notes and additional information that we need which
would help Vladimir greatly in this project.

Information Needed

   -

   Need partners and users in the community to share the high-level
   transaction flows that need to be supported
   -

      What are the inbound transactions (client to MFI)?
      -

      What are the outbound transactions (MFI to client)?
      -

      Explain from the perspective of the user (client or MFI staff) how a
      transaction is initiated and effected via whatever device (USSD
interface,
      smartphone interface, web interface (staff))
      -

      Identify what information is or needs to be passed on during the
      transaction
      -

   Understanding this will help us know what information must flow from/to
   Mifos/Fineract and the mobile money system via the mobile money gateway
   -

   Partners need to provide access to the mobile money APIs for their
   country/region.


Outstanding Questions

   -

   What happens when clients have multiple financial accounts with the MFI
   (i.e. loan account(s), savings accounts)?
   -

      If using the client mobile # as unique identifier, how do you specify
      which account transfer should go to?
      -

      Does mobile money provider allow additional information to be passed
      on, if so what and how?
      -

   What happens if a client has multiple mobile money accounts (i.e. one
   with MTN and one with Orange Money)
   -

      How do you distinguish their different mobile #s in Mifos/Fineract?
      -

   Do clients pay for a group loan via a single mobile money account?
   -

      How do you handle allocation of such payments?


Phasing

   -

   Phase 0
   -

      GSOC 2016 (complete)
      -

         Initial development of gateway/mobile money integration module &
         stand-alone UI with focus on MTN Cameroon
         -

   Phase 1 - GSOC 2017
   -

      Complete Mobile Money Gateway
      -

         Make generic to support integration with mobile money APIs from
         different providers
         -

            Currently testing with Beyonic (multiple countries), Myanmar,
            Cameroon, Kenya
            -

         Support the transaction flows outlined above.
         -

      UI
      -

         Staff - Users of Mifos/Fineract to initiate disbursements should
         be able to do that from the current Web UI - no separate UI
should be needed
         -

         Clients - clients should be able to initiate mobile money
         transactions from the mobile money providers’ UI - USSD or Smartphone
         -

         UI for checking status of payments, etc.
         -

   Phase 2 - GSOC 2017
   -

      UI - Clients should be able to initiate mobile money transactions via
      a Mifos self-service Android app
      -

         Could extend off of the UI that Daniel built in 2016.


On Wed, May 17, 2017 at 8:59 AM, Ed Cable <edcable@mifos.org> wrote:

> Thynn,
>
> Thanks for organizing the meeting and sending out your notes. Can you
> please create tickets (either in the Github repo) or in Apache Fineract
> JIRA for the features you requested at the bottom of your email.
>
> Ed
>
> On Wed, May 17, 2017 at 8:01 AM, Thynn Win <thynn.win@thitsaworks.com>
> wrote:
>
>> Hi all,
>>
>>
>> Thank you for participating in the meeting this morning.
>>
>>
>>
>>
>>
>> *High level info flow *
>>
>> Funds from customer
>>
>>    1. Loans - Undo Disbursals    -- can be triggered by MFI from Mifos
>>    (Need to handle failed transactions) or Mobile Money GUI
>>    2. Loans – Make Repayments – from be triggered from MFI client via
>>    money provider app or self-service app
>>    3. Loans – Prepay Loans – from be triggered from MFI client via money
>>    provider app or self-service app
>>    4. Savings – Deposits – from be triggered from MFI client via money
>>    provider app or self-service app
>>    5. Loans – charges, etc. – from be triggered from MFI client via
>>    money provider app or self-service app
>>
>>
>>
>> For #2-5, MMP will initiate a request to the gateway with MFI client
>> phone number or specific account number (loan 1#, loan 2#, savingings
>> #,etc).
>>
>> A list of active account numbers and amount owe will be returned to MMP
>> and MFI client has an option to either choose the exact amount or enter an
>> amount.
>>
>>
>>
>> Funds to customer
>>
>>    1. Loan disbursement – triggered by MFI from Mifos (Need to handle
>>    failed transactions) or Mobile Money GUI.
>>    2. Withdrawal from Savings – triggered by MFI from Mifos (need to
>>    handle failed transactions) or Mobile Money GUI.
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> As for database design (mobile money), we’d like to request a few more
>> tables.
>>
>>
>>
>> A table for saving transaction-status.
>>
>> -Tenant-transactions-id
>>
>> -date/time of transaction (when it hit mobile money gateway)
>>
>> -status
>>
>> -API return code (from either side provider or Fineract)
>>
>> -Server ip of the request
>>
>> -Comments or error details/codes
>>
>> -External id (transaction id of external system)
>>
>>
>>
>> In tenant-transactions table, we should save all the information that’d
>> be transmitted either direction.
>>
>>    1. The json or messages itself *or*
>>    2. critical information in the message such as client account number
>>    with provider (at the time of the transaction), what amount was
>>    returned/received via the API, etc.
>>    *we’d need all the details to troubleshoot and reconcile on each end.
>>
>>
>> In tenants table, should we add tenant identifier, MFI api url, etc to
>> let this platform know which tenant/database/server.
>>
>>
>>
>> For item #2-5 above (where 3rd party retrieving info), we should check
>> whether the MFI client is associated with this MMP. Otherwise, we should
>> NOT return any result for security reasons. Only allow legitimate requests
>> for lookup info. For this, we will need to store a relationship between MMP
>> and MFI Client and a workflow for maintaining this info.
>>
>> Feature request
>>
>>
>>
>>    1. Mobile money gateway UI to display transactions for reconciling
>>    (reports, etc)
>>    2. Mobile money gateway UI to show error report for monitoring
>>    purposes
>>    3. In Mifos, allow saving of different phone number for different MMP
>>    payment type
>>
>>
>>
>>
>>
>> Thanks,
>> Thynn
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> *From:* Ed Cable [mailto:edcable@mifos.org]
>> *Sent:* Tuesday, 16 May, 2017 18:03
>> *To:* dev@fineract.apache.org; Mifos software development <
>> mifos-developer@lists.sourceforge.net>; mifos-users <
>> mifos-users@lists.sourceforge.net>; user@fineract.apache.org
>> *Subject:* [Mifos-developer] Requirements Discussion for Mobile Money
>> Integration Project for Google Summer of Code
>>
>>
>>
>> Hello everyone,
>>
>>
>>
>> Picking up where Daniel Carlson left off from his 2016 GSOC project will
>> be a our 2017 GSOC intern, Vladimir Fomene from Ashesi Univerity in Ghana.
>>
>>
>> Working under the mentorship of Yannick and Ayuk from Skylabase and
>> Antony from Omexit, he'll be genericizing the framework to work with
>> multiple mobile money APIs and adding the support for reconciliation of
>> transactions that occur in the mobile money system with the Apache Fineract
>> back-end. Future phases of the project will include integration with
>> self-service capabilities and extending this to work with Generation 3 of
>> Mifos.
>>
>>
>>
>> The openness of mobile money APIs is a widely discussed topic in the
>> sector and we would like community members who have either use cases for
>> mobile money integration they'd like to share or access to their country's
>> mobile money APIs to join this discussion.
>>
>>
>>
>> Yannick has drafted a Google Doc which outlines efforts to date, point to
>> valuable research, maps out architecture and database design, lays out the
>> project plan, and identifies assumptions and outstanding questions. Please
>> review at https://docs.google.com/document/d/1I4uF-dC9Y4GuSoWmnd7WB
>> JplMZMPUmM63tY8fSgUBO0/edit?usp=sharing
>>
>>
>>
>> We are having a meeting to discuss requirements and design on Wednesday
>> at May 17, 2017 at 1300GMT via GoTotraining - you can register at
>> https://attendee.gototraining.com/r/2760388095915259137
>>
>>
>>
>> Thynn and Nyi from Thitsaworks in Myanmar are driving this meeting and
>> providing requirements from the context of Wave Money integration in
>> Myanmar. We are also integrating with Beyonic which provides mobile money
>> API aggregation for four countries. Skylabase is providing requirements for
>> Orange Money integration as well.
>>
>>
>>
>> Vladimir will soon be sharing his project plan once he has compiled
>> requirements across the community.
>>
>>
>> Cheers,
>>
>>
>>
>> Ed
>> --
>>
>> *Ed Cable*
>>
>> President/CEO, Mifos Initiative
>>
>> edcable@mifos.org | Skype: edcable | Mobile: +1.484.477.8649
>> <(484)%20477-8649>
>>
>>
>>
>> *Collectively Creating a World of 3 Billion Maries | *http://mifos.org
>> <http://facebook.com/mifos>  <http://www.twitter.com/mifos>
>>
>>
>>
>
>
>
> --
> *Ed Cable*
> President/CEO, Mifos Initiative
> edcable@mifos.org | Skype: edcable | Mobile: +1.484.477.8649
> <(484)%20477-8649>
>
> *Collectively Creating a World of 3 Billion Maries | *http://mifos.org
> <http://facebook.com/mifos>  <http://www.twitter.com/mifos>
>
>


-- 
*Ed Cable*
President/CEO, Mifos Initiative
edcable@mifos.org | Skype: edcable | Mobile: +1.484.477.8649

*Collectively Creating a World of 3 Billion Maries | *http://mifos.org
<http://facebook.com/mifos>  <http://www.twitter.com/mifos>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message