Paul   - I agree w your assessment but some comments inline.

On Sat, Mar 29, 2025 at 2:12 PM Paul <pchristi...@gmail.com> wrote:

> Hey James, Ed, Felis Et Al
>
> MIX seems to have gone be the wayside?  BUT . . .  XBRL has evolved into a
> mature, regulation-driven standard, now mandated across multiple US and
> European agencies for financial reporting. Global adoption is accelerating
> to indicate a long future.
>

Completely agree. Larger story - also relates to MCP server and BIAN
specification.


> If a *skilled* developer wants to build this out as a robust and
> documented API extension for Fineract
> AND
> the community agrees to add it as a "Certified Fineract Extension" in or
> outside Fineract or some such
>

No such thing OUTSIDE.  Vendors outside of the project, and we have to
include Mifos as a prime example, do not get special “certification” from
the Apache project.

If agreed to be IN the project, we can take a discussion and then vote for
it, or just go build it and contribute it as it develops.  That’s the way.

AND
> we (developer and I) agree on a near term timeline (weeks not months****)
> to build an MVP leveraging / building on the existing MIFOS UI,
>

Mifos UI is not here
Fineract may need its own front end or demo set up for this;

And, if this involves some backend Fineract logic for generating the proper
Query then that’s the key ticket at Fineract.

I tend to think we should include the query concept and allow outside
efforts to leverage that.

THEN
> I should be should be able to assist with business insight needed to make
> this a highly valuable starting point for regulatory and standardized
> reporting.
> This could include providing standardized COA template mapped to XBRL
> template saving hundreds of hours of platform setup and configuration prep
> time . . .
> Community can say "Yes, I like it for a vote."  "No for a don't like
> vote".  Leadership can point to inside project or a project extension  . . .
>

That’s a nice offer ; much needed.

By describing it here first before building it, you’re doing the necessary
thing.


>
> I'm sure this is probably NOT how this community or most others work, but
> **There is Now. There is Later. There is Never . . . .
>
> At my age, buying green bananas begins to look like more like "Never" than
> "Later", so if the community wants it, let's get rolling  . . . if NOT,
> kill it and move to the next BIG thing.  :)
>

Understood.  We should discuss .


> Regards,
> Paul
>
> On Sat, Mar 29, 2025 at 12:52 PM James Dailey <jdai...@apache.org> wrote:
>
>> Felix
>>
>> Thanks for noticing that functionality.  Can you tell me why you need it?
>>
>>
>> The XBRL report feature dates back to my efforts in 2004-2005 to link the
>> Mifos project to the reporting infrastructure for "Rating MFIs" that the
>> Mix Market at CGAP (World Bank) had established.  The intention was to
>> create a kind of market pull - if an MFI (Microfinance Institution) could
>> have a XBRL format go directly to MIX data-system then they could be rated
>> quickly and highly, leading to better transparency and potentially more
>> on-lending funds.  Today the Mix market is gone, or evolved into Findex
>> datasets, with less focus on this sort of thing.
>>
>> I wrote some early documentation and attended a couple of XBRL
>> conferences, where I learned that this standard was still pretty much in
>> its infancy.  Since then the SEC has adopted it for reporting. 2024 ==>
>> https://www.sec.gov/files/edgar/xbrl-guide.pdf.
>>
>> So, here at Fineract, I believe that the relevant thing is to deprecate
>> this feature (which is actually at Mifos Reports, not here) AND to
>> recognize that from a reporting perspective, having a feature that can auto
>> generate regulatory reporting is an important item.
>>
>> The first step would be to see what XBRL formats are needed for Bank and
>> NBFI (Non Banking Financial Institution) Reporting.  This may start with
>> SARS. (system activity reports) and similar.  It may be that the
>> requirement here is to have a "read only" API for reporting for regulatory
>> purposes.  There's a lot of design that needs to happen for that.
>>
>> I have a longer post I'm working on - so... please do let me know how
>> this relates to your specific needs?  Market requirement?
>>
>> Thanks,
>>
>> James
>>
>>
>>
>>
>> On Sat, Mar 29, 2025 at 10:18 AM Ed Cable <edca...@mifos.org> wrote:
>>
>>> Good question Felix. Mifos, prior to transition to Apache Fineract, had
>>> been supporting the XBRL format as it had been identified and chosen by MIX
>>> market as a standardized reporting format for the microfinance industry. So
>>> that is why we had an intern work on an integration and support of that
>>> format. I believe XBRL was a bit overkill for what MIX was aiming for the
>>> industry overall and those standardization efforts died out.
>>>
>>> That being said, it would probably be good to deprecate this
>>> functionality and not expose current users to it via the UI. However if
>>> there are others who are needing report in the XBRL format and are actively
>>> using I will let them voice their opinion as Bharath has raised.
>>>
>>> Ed
>>>
>>> On Fri, Mar 28, 2025 at 7:12 AM Felix van Hove <fvanh...@gmx.de.invalid>
>>> wrote:
>>>
>>>> Hi everyone,
>>>>
>>>> Does Fineract support XBRL resp. MIX ? The UI has respective forms, but
>>>> all requests fail and I can't find a ticket regarding this in Fineract's
>>>> Jira.
>>>>
>>>> The only documentation I found is this:
>>>>
>>>> https://docs.mifos.org/mifosx/user-manual/for-all-users/reports/xbrl-reporting
>>>> . I'm therefore not even sure the parameters used by the UI currently
>>>> for the PUT /v1/mixmapping are correct. Can you point me to any
>>>> documentation?
>>>>
>>>> Calling /v1/mixmapping I get a 400 or 500, e.g.
>>>>
>>>> --- snip ---
>>>> 2025-03-28 14:21:49.975 - WARN 7056  --- [nio-8443-exec-3]
>>>> o.m.jdbc.message.server.ErrorPacket      : Error: 1406-22001: Data too
>>>> long for column 'config' at row 1
>>>> [EL Warning]: 2025-03-28 14:21:49.976--UnitOfWork(809753073)--Exception
>>>> [EclipseLink-4002] (Eclipse Persistence Services - 4.0.2.v202306161219):
>>>> org.eclipse.persistence.exceptions.DatabaseException
>>>> Internal Exception: java.sql.SQLSyntaxErrorException: (conn=13) Data too
>>>> long for column 'config' at row 1
>>>> Error Code: 1406
>>>> Call: UPDATE `mix_taxonomy_mapping` SET `identifier` = ?, `config` = ?
>>>> WHERE (`id` = ?)
>>>>          bind => [3 parameters bound]
>>>> Query:
>>>>
>>>> UpdateObjectQuery(org.apache.fineract.mix.domain.MixTaxonomyMapping@685f8ad5
>>>> )
>>>> 2025-03-28 14:21:50.013 - WARN 7056  --- [nio-8443-exec-3]
>>>> o.a.f.i.c.e.DefaultExceptionMapper       : Exception occurred
>>>>
>>>> jakarta.persistence.RollbackException: Transaction "rolled back" because
>>>> transaction was set to RollbackOnly.
>>>>          at
>>>>
>>>> org.eclipse.persistence.internal.jpa.transaction.EntityTransactionImpl.commit(EntityTransactionImpl.java:146)
>>>>          at
>>>>
>>>> org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:562)
>>>>          at
>>>>
>>>> org.apache.fineract.infrastructure.core.persistence.ExtendedJpaTransactionManager.doCommit(ExtendedJpaTransactionManager.java:64)
>>>>          at
>>>>
>>>> org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:795)
>>>> --- snip ---
>>>>
>>>>
>>>>
>>>> Calling GET
>>>>
>>>> /fineract-provider/api/v1/mixreport?startDate=2025-01-01&endDate=2025-01-05
>>>> I get a 403, response body:
>>>>
>>>> --- snip ---
>>>> {
>>>>    "developerMessage": "Request was understood but caused a domain rule
>>>> violation.",
>>>>    "httpStatusCode": "403",
>>>>    "defaultUserMessage": "Errors contain reason for domain rule
>>>> violation.",
>>>>    "userMessageGlobalisationCode":
>>>> "validation.msg.domain.rule.violation",
>>>>    "errors": [
>>>>      {
>>>>        "developerMessage": "Mapping does not exist",
>>>>        "defaultUserMessage": "Mapping does not exist",
>>>>        "userMessageGlobalisationCode":
>>>> "error.msg.xbrl.report.mapping.invalid.id",
>>>>        "parameterName": "id",
>>>>        "args": [
>>>>          {
>>>>            "value": "Mapping is empty"
>>>>          }
>>>>        ]
>>>>      }
>>>>    ]
>>>> }
>>>> --- snip ---
>>>>
>>>> I don't see an "id" parameter in the swagger.
>>>>
>>>> Felix
>>>>
>>>
>>>
>>> --
>>> *Ed Cable*
>>> President/CEO, Mifos Initiative
>>> edca...@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>
>>>
>>>
>
> --
> --
> Paul
>

Reply via email to