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

Reply via email to