📝 Mifos Intern Tracker 2025 – Biplab Dutta

📝 Mifos Intern Tracker 2025 – Biplab Dutta


INSTRUCTIONS TO INTERN:
This is your official internship tracker page on Jira. It serves as your work journal, performance tracker, and reporting log throughout the internship program. Please update the marked sections weekly and monthly with clear, concise entries. This page is also used by mentors and program coordinators to evaluate your growth, contributions, and engagement.


📌 Intern Overview

Field

Details

Field

Details

Name

Biplab Dutta

GitHub Username

https://github.com/biplab1

LinkedIn Profile

https://www.linkedin.com/in/biplab26

Internship Program

Code for GovTech (C4GT)

Duration

May 20, 2025 – August 25, 2025

Primary Mentor(s)

Rajan Maurya

Jira Profile

https://mifosforge.jira.com/wiki/people/557058:c2a6a2ed-ae36-4e62-a219-5158a8fcaaf3

Assigned Repository(s)

mobile-wallet


🔍 Project Summary

Biplab is contributing to the Mifos Mobile Wallet with a focus on QA testing, bug identification, and implementation of secure financial features. He is responsible for validating flows, improving test coverage, and maintaining app stability across updates.


🎯 Intern’s Role & Defined Scope of Work

  • Conduct manual and automated testing for wallet features

  • Improve CI/CD pipelines for test validation

  • Fix reported bugs in transaction, login, and user profile modules

  • Strengthen input validation and error feedback systems

  • Create test cases for edge scenarios in payment flows

  • Participate in weekly standups and maintain test documentation


✅ Weekly Progress Tracker

Week

Dates

Summary of Work Done

Jira Ticket(s)

PR(s) / Commit Links

Week

Dates

Summary of Work Done

Jira Ticket(s)

PR(s) / Commit Links

Week 1

June 1 – 7

This week, I explored the openmf/mobile-wallet codebase with a focus on its modular architecture and Kotlin Multiplatform setup, including how platform-specific logic is managed using Compose Multiplatform. I mapped the proposed C4GT features—like the merchant payments and Auto-Pay Bills modules—onto the existing architecture. Additionally, I contributed to the openmf/android-client project by migrating a feature module to Compose Multiplatform, reviewing multiple PRs (#2396, #2386, #2370), and identifying a critical issue in the network layer, which I documented via Jira (MIFOSAC-449).

MIFOSAC-416 - Getting issue details... STATUS

https://github.com/openMF/android-client/pull/2389

Week 2

June 8 – 14

This week, I worked on the feature/path-tracking module of the openmf/android-client, where I explored Google Maps API integration and the use of Android components like LocationManager, BroadcastReceiver, and Service for location updates. I migrated and merged the module to Compose Multiplatform, analyzing how to separate shared and platform-specific logic. I also deep-dived into the feature/client module, examining File I/O, Camera APIs, and form flows, while identifying tightly-coupled Android dependencies needing abstraction for CMP compatibility. A draft PR was created to document this progress. Additionally, I collaborated on navigation architecture discussions, proposed abstraction strategies for Android SDK dependencies, and reviewed multiple PRs (#2402, #2403, #2396, #2394, #2391, #2369, #2382). While not directly aligned with my C4GT proposal, this work laid essential groundwork for platform-agnostic design.

MIFOSAC-425 - Getting issue details... STATUS

MIFOSAC-417 - Getting issue details... STATUS

https://github.com/openMF/android-client/pull/2400

https://github.com/openMF/android-client/pull/2401

Week 3

June 15 – 21

Migrated 12 out of 13 sub-features in the feature/client module to Compose Multiplatform, integrated navigation and ensured the module builds successfully, began work on the final sub-feature, identified and started debugging UI issues and a network layer bug related to ImageLoaderUtils, reviewed PRs: android-client #2402, #2403, #2408, mobile-wallet #1872, mifos-passcode-cmp #36

MIFOSAC-417 - Getting issue details... STATUS

 

Week 4

June 22 – 30

Completed migration of the feature/client module in openmf/android-client to Compose Multiplatform (CMP) and merged the PR, tested and fixed bugs in sub-features not introduced during migration, raised and merged two bug-fix PRs, continued testing remaining sub-features, and reviewed multiple PRs including #2410, #2414, #2416, #2418, and #2419.

MIFOSAC-417 - Getting issue details... STATUS


MIFOSAC-460 - Getting issue details... STATUS


MIFOSAC-461 - Getting issue details... STATUS


MIFOSAC-463 - Getting issue details... STATUS




https://github.com/openMF/android-client/pull/2401

https://github.com/openMF/android-client/pull/2415

https://github.com/openMF/android-client/pull/2417

Week 5

July 1 – 7

  1. Fixed bugs in feature/client (client-identifiers, client-charges); PRs #2424 (final), #2428 (draft)

  2. Reviewed PRs: android-client #2420#2427, mifos-mobile #2850, mobile-wallet #1873#1876



https://github.com/openMF/android-client/pull/2424

https://github.com/openMF/android-client/pull/2428


Week 6

July 8 – 14

Fixed bugs in client-charges, client-charges-dialog, and client-pinpoint features — raised 2 PRs (1 merged, 1 under review) and have a draft PR in progress; continued testing sub-features. Also reviewed PRs: android-client (#2432, #2429, #2426) and mobile-wallet (#1878).





https://github.com/openMF/android-client/pull/2430

https://github.com/openMF/android-client/pull/2428

https://github.com/openMF/android-client/pull/2433


Week 7

Jul 15 - Jul 21

  1. Submitted 2 PRs with bug fixes & a sub-feature in android-client (#2430, #2433)

  2. Opened 3 draft PRs with partial progress (#2437, #2438, #2439)

  3. Started work on mobile-wallet, submitted 2 PRs for localization & error handling (#1883, #1886)

  4. Reviewed #2435





- Partially complete

- done but final testing required

- initial setup


https://github.com/openMF/android-client/pull/2430

https://github.com/openMF/android-client/pull/2433

https://github.com/openMF/android-client/pull/2437

https://github.com/openMF/android-client/pull/2438

https://github.com/openMF/android-client/pull/2439

https://github.com/openMF/android-client/pull/1883

https://github.com/openMF/android-client/pull/1886

Week 8

Jul 22 - Jul 28

Worked on openmf/mobile-wallet:

  1. Fixed Standing Instructions screen loading issue and added fallbacks for missing data

  2. Upgraded compileSdk to 35, AGP, Gradle, and dependencies

  3. Started research and planning for Generic Merchants KMP Module



https://github.com/openMF/mobile-wallet/pull/1890

https://github.com/openMF/mobile-wallet/pull/1889

https://github.com/openMF/mobile-wallet/pull/1891

Week 9

Jul 29 - 4 Aug

Completed C4GT midterm presentation, fixed standing instruction loading, added default API values, finalized Generic Merchant Payments Module plan (MW-252) with interface-based SDK design, created payment method tickets in mobile-wallet (MW-255), reviewed PRs in android-client (#2441, #2442), analyzed GPay/PhonePe/PayTM, and began Loan Application Sandbox Module research.

 

Week 10

5 Aug - 11 Aug

Tested and fixed QR code payment flow serialization bug in mobile-wallet (PR #1899), wireframed and began integrating QR-based UPI app payments in mobile-wallet (draft PR #1902), addressed review comments, investigated legacy flow issue blocking progress, reviewed in android-client PR #2447, delivered midterm presentation, worked on bug fixes/UI polish/features, and clarified final deliverables for C4GT.

https://github.com/openMF/mobile-wallet/pull/1899

https://github.com/openMF/mobile-wallet/pull/1902

Week 11

12 Aug - 18 Aug

Focused on UPI Payment Flow Development by implementing UPI app invocation for QR payments, starting new tickets for Scan & Pay and UPI ID flows, consolidating UI/UX across modules, building connecting screens, and fixing UI bugs. In Backend & API Research, explored Mifos PHEE and Fineract for UPI TPAP use cases, drafted high-level designs, identified API dependencies, and researched AutoPay/Standing Instructions (awaiting clarifications). Also contributed to Code Review & Collaboration by reviewing PR #2449 in the android-client repo.

https://github.com/openMF/mobile-wallet/pull/1903

Week 12

19 Aug - 25 Aug

  • UPI Payment Flow:

    • Fixed UI/UX issues, added Scan QR, Pay Anyone, Bank Transfer, AutoPay screens

    • Refined layouts, bug fixes, incremental PR updates

  • Backend & API:

    • Researched AutoPay/Standing Instruction, PSP UPI APIs, Fineract/Mifos PHEE

    • Drafted backend considerations, treating PHEE + PSP APIs as black box

  • Collaboration:

    • Updated multiple draft PRs (Send Money, Pay Anyone, Bank Transfer, AutoPay)

    • Shared blockers/questions on backend integration in Slack

https://github.com/openMF/mobile-wallet/pull/1899

https://github.com/openMF/mobile-wallet/pull/1903

https://github.com/openMF/mobile-wallet/pull/1906

https://github.com/openMF/mobile-wallet/pull/1907

https://github.com/openMF/mobile-wallet/pull/1908

 

Week 13

26 Aug - 1 Sept

  • Pay Anyone & Scan QR:

    • Fixed bugs, improved UI/UX, UPI ID + phone formatting, invite sharing

    • Added QR flow features: UPI pin, paise handling, navigation, input formatting

    • Incremental PR updates pushed

  • Bank Transfers:

    • Completed/enhanced feature screens, improved UI/UX + navigation

    • Continued work on MW-263, incremental PR updates

  • Autopay Module:

    • Initial setup with Add Bill, Bill List, Edit Biller, dashboard improvements

    • New draft PRs for Dashboard + Biller/Bills setup

    • Dummy APIs, local storage, backend assumptions in progress

  • Review, Testing & Docs:

    • Shared screen recordings + summaries for draft PRs

    • Shared API design approach on Slack, feedback pending

https://github.com/openMF/mobile-wallet/pull/1903

https://github.com/openMF/mobile-wallet/pull/1906

https://github.com/openMF/mobile-wallet/pull/1907

https://github.com/openMF/mobile-wallet/pull/1908

https://github.com/openMF/mobile-wallet/pull/1909

https://github.com/openMF/mobile-wallet/pull/1910

https://github.com/openMF/mobile-wallet/pull/1912

Week 14

2 Sept - 5 Sept

  • Scan QR Flow:

    • Added UPI pin, paise handling, nav + input formatting

    • Built Payment Details page, screenshot share, txn history

    • Addressed review comments, merged fixes

  • UPI Payments:

    • Worked on Payment Chat/History w/ dummy data

    • Implemented txn history in send money + full history

    • Incremental PR updates w/ backend assumptions

  • Autopay:

    • Autopay settings + global biller/bill settings

    • Implemented management screens, pushed updates

    • Continued dev w/ dummy data + backend assumptions

  • Reviews & Fixes:

    • Addressed review comments across draft PRs

    • Fixed DialogState serialization + UI/UX issues (Home, History, FAQ, Settings, Notifications)

    • Ongoing incremental updates

  • Other:

    • Completed C4GT Endpoint presentation (5 Sept 2025)

https://github.com/openMF/mobile-wallet/pull/1903

https://github.com/openMF/mobile-wallet/pull/1906

https://github.com/openMF/mobile-wallet/pull/1907

https://github.com/openMF/mobile-wallet/pull/1908

https://github.com/openMF/mobile-wallet/pull/1909

https://github.com/openMF/mobile-wallet/pull/1910

https://github.com/openMF/mobile-wallet/pull/1899

https://github.com/openMF/mobile-wallet/pull/1912

https://github.com/openMF/mobile-wallet/pull/1913

https://github.com/openMF/mobile-wallet/pull/1915

 

 


🗓️ Monthly Reflection Reports

📆 June 2025

  • What did you learn this month?

    • Deepened my practical understanding of Kotlin Multiplatform (KMP) and Compose Multiplatform (CMP), especially for migrating large, Android-heavy features.

    • Learned how to handle complex Android SDK components (e.g., Google Maps API, location updates, file handling, camera) and abstract them for cross-platform use.

    • Improved debugging skills for resolving tricky integration bugs post-migration.

    • Enhanced my collaboration and review skills by actively contributing feedback and architecture discussions with teammates.

  • What were your main achievements?

    • Successfully migrated multiple feature modules in android-client to Compose Multiplatform:

      • checker-inbox-task

      • path-tracking

      • client (including 12+ sub-features)

    • Fixed and tested sub-features (client-identifiers, client-identifiers-dialog, client-charges) to ensure stable functionality after migration.

    • Raised and reviewed significant PRs across android-client, mobile-wallet, mifos-passcode-cmp, and mifos-mobile repositories.

    • Identified architectural improvements for future-proofing KMP adoption in the project.

  • What blockers did you face, and how did you resolve them?

    • Encountered tight Android-only dependencies (Context, File, Uri) while refactoring — tackled by exploring expect/actual abstractions and interface-based separation.

    • Faced integration bugs (e.g., improper screen states, navigation issues, silent failures) — resolved through detailed testing, iterative PRs, and quick bug fixes.

    • No major unresolved blockers — I stayed in sync with mentors and teammates via daily standups and Slack channels to get quick feedback whenever needed.

📆 July 2025

  • What technical or non-technical skill did you improve on?

    • Strengthened Kotlin Multiplatform (KMP) and Compose Multiplatform (CMP) skills through feature migration and multi-module bug fixes.

    • Improved debugging and problem-solving skills while handling complex legacy code in android-client and mobile-wallet modules.

    • Enhanced UI/UX and iterative development skills while designing and implementing UPI and Merchant Payments flows.

    • Learned to research and map backend dependencies (Fineract, PHEE, PSP APIs) to frontend payment flows.

    • Sharpened collaboration, code review, and planning skills through peer reviews, midterm presentation, and Jira ticket discussions.

  • What tasks did you complete?

    • Fixed and tested multiple android-client sub-features (client-identifiers, client-charges, client-pinpoint); merged PRs #2424, #2430, #2433; progressed draft PRs #2428, #2437, #2438, #2439.

    • Contributed bug fixes, localization, and error handling in mobile-wallet (#1873–#1876, #1883, #1886, #1889, #1890, #1891).

    • Reviewed PRs across android-client, mifos-mobile, and mobile-wallet (#2420–#2442).

    • Delivered C4GT midterm presentation.

    • Researched and planned Generic Merchant Payments KMP Module (MW-252) and created payment method tickets (MW-255).

    • Began Loan Application Sandbox Module research.

    • Resolved QR-based UPI payment flow issues and improved related UI/UX.