Skip to content

Global Configuration Settings ​

Apache Fineract has a set of system-wide configuration flags that control platform behaviour across all tenants and products. These are set once at the instance level and apply to all operations.


Reading All Configuration Settings ​

bash
GET /fineract-provider/api/v1/configurations
Authorization: Basic <base64>
Fineract-Platform-TenantId: default

Response is a list of configuration objects:

json
{
  "globalConfiguration": [
    {
      "id": 1,
      "name": "maker-checker",
      "enabled": false,
      "trapDoor": false
    },
    {
      "id": 3,
      "name": "reschedule-repayments-on-holidays",
      "enabled": true,
      "trapDoor": false
    }
  ]
}

trapDoor: true means the setting cannot be changed after it has been enabled - used for irreversible configuration choices.

Updating a Setting ​

bash
PUT /fineract-provider/api/v1/configurations/{id}
Authorization: Basic <base64>
Fineract-Platform-TenantId: default
Content-Type: application/json
json
{
  "enabled": true
}

Some settings accept a value (integer) rather than just enabled. Check the configuration object for a value field.


Full Configuration Reference ​

Approval Workflow ​

NameDefaultEffect when enabled
maker-checkerDisabledRequires a second user to approve submitted operations before execution. See Maker-Checker guide.

Repayment Scheduling ​

NameDefaultEffect when enabled
reschedule-repayments-on-holidaysEnabledRepayments falling on a configured holiday are rescheduled per the holiday's rescheduling rule
reschedule-future-repaymentsEnabledWhen a holiday is added after loan disbursement, future repayments falling in the holiday window are retroactively rescheduled
allow-transactions-on-non_workingdayDisabledStaff can record transactions on days not in the working days schedule
allow-transactions-on-holidayDisabledStaff can record transactions on configured holiday dates

Interest Calculation ​

NameDefaultEffect when enabled
interest-charged-from-dateDisabledAccrual starts from the interestChargedFromDate field on the loan (if set), rather than the disbursement date
days-in-year-custom-strategyDisabledUses a custom days-in-year calculation (e.g., 360 or actual/365) instead of the product default

Loan Lifecycle ​

NameDefaultEffect
loan-reschedule-is-first-payment-allowedDisabledAllows the first repayment to be rescheduled
is-interest-to-be-recovered-first-when-greater-than-emiDisabledWhen a repayment amount exceeds the EMI, recover interest before principal
is-principal-compounding-disabled-for-overdue-loansDisabledDisables principal compounding for loans that are overdue
enable-addressDisabledEnables the address module for clients, allowing multiple structured addresses per client
enable-business-dateEnabledActivates Business Date logic for COB processing. Should always remain enabled in production.
enable-post-dated-checks-moduleDisabledEnables post-dated cheque tracking for loans
enable-auto-generated-external-idDisabledAuto-generates an externalId for new entities if none is provided

COB (Close of Business) ​

NameDefaultEffect when enabled
enable-business-dateEnabledCOB uses Business Date rather than system date for processing. See Business Date guide.
loan-arrears-aging-is-based-on-meeting-dateDisabledFor group-based loans, arrears calculation uses the group meeting date rather than the instalment due date

Client & Account Features ​

NameDefaultEffect when enabled
enable-addressDisabledEnables structured address storage for clients (country, city, street, postal code)
enable-client-classificationDisabledEnables the client classification code field on client profiles
enable-client-typesDisabledEnables the client type code field (individual, business, cooperative)
enable-genderDisabledEnables the gender field on client profiles
enable-staff-name-for-clientsDisabledDisplays the assigned loan officer name on client profiles

Account Number Formatting ​

NameValue fieldEffect
loan-account-number-formatInteger (1-3)Controls auto-generated loan account number format
savings-account-number-formatIntegerControls auto-generated savings account number format
client-number-formatIntegerControls auto-generated client number format
group-number-formatIntegerControls auto-generated group number format

Account number format codes:

  • 1 - Numeric ID with zero padding
  • 2 - Random alphanumeric string
  • 3 - Prefix + numeric ID

Accounting ​

NameDefaultEffect when enabled
financial-activity-account-linked-to-single-productDisabledRestricts financial activity accounts to only one product mapping

For most regulated institutions:

SettingRecommended
maker-checkerEnabled - require 4-eyes approval for loan approvals and disbursements
reschedule-repayments-on-holidaysEnabled - always reschedule on holidays
reschedule-future-repaymentsEnabled - retroactively update schedules when holidays are added
allow-transactions-on-non_workingdayDisabled - prevents backdated or off-schedule entries
allow-transactions-on-holidayDisabled - prevents transactions on closed days
enable-business-dateEnabled - required for correct COB processing
enable-addressEnabled - useful for most institutions
enable-auto-generated-external-idEnabled - simplifies integration reconciliation

For development / test environments:

  • Disable maker-checker to avoid approval loops during testing
  • Enable allow-transactions-on-non_workingday and allow-transactions-on-holiday for flexible test data entry

Checking a Specific Setting ​

bash
GET /fineract-provider/api/v1/configurations?name=maker-checker

Or by ID if known:

bash
GET /fineract-provider/api/v1/configurations/1