GSOC 2013 - XBRL Reporting Integration

XBRL Reporting Integration Proposal


1.   Project idea:

This project idea originates from the MIX proposed pilot XBRL program. XBRL, a standard for financial reporting, have been applied widely in financial companies and organizations. Since Mifos is a management system for microfinance and MIX is an important platform for microfinance performance data and analysis, it is necessary to implement the XBRL reporting on MifosX platform to fit the MIX reporting standard. Besides that, by adopting XBRL on MifosX platform, MifosX will largely reduce the time the MFIs spend on generating financial reports to their funders and regulators. As XBRL is gradually being adopted by more and more institutes, XBRL reporting should be a must-have function in microfinance software.


2.   Planned Schedule:

The accepted students are announced on May 27, and final evaluation deadline is September 27. The following is my planned schedule:

May 27 – June 9: Get to know the whole business flow of Mifos and MifosX; Read up on XBRL specifications. Discuss details with my mentor.

June 10 – June 23: Identify the taxonomy subset. Map the calculations from chart of accounts.

June 24 – June 30: Regulate, implemente and test APIs.

July 1 – July 7: Build and test XBRL report module on server side.

July 15 – July 28: Build and test taxonomy mapping module on server side.

July 29 – August 4: Mid-term evaluations.

August 5 – August 25: Reporting user interface .

August 26 – September 15: Taxonomy mapping user interfaces.

September 16 – September 27: Write tests, documentation, and submit final evaluation.


3.   Project details:

3.1 Application Requirements:

original: MIX XBRL Reporting Requirements.docx

Two distinctive features are required in the XBRL reporting integration:

1) Taxonomy mapping.

Users can create or update the mapping and calculations between an XBRL taxonomy and items of Chart Of Accounts before they run the report.

MIX XBRL Taxonomy Concepts and Dimensions:

definitions for the taxonomy: Standards_ Financial Statements_20130328.xlsStandards_Delinquency_20130328.xls


2) Run reports.

Users can generate the report with data between indicated start date and end date. The generated XML file should be like this:

Sample instance document:



3.2 Server-side Documentation (Draft):

XBRL Integration Server-Side Documentation


3.3 UI Mockups (Draft):

XBRL Report Integration UI Drafts


3.4 Validation of generated XBRL

MIX uses Crossfire to validate XBRL structures and calculations.


3.5 Github forks: