Appearance
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: defaultResponse 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/jsonjson
{
"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
| Name | Default | Effect when enabled |
|---|---|---|
maker-checker | Disabled | Requires a second user to approve submitted operations before execution. See Maker-Checker guide. |
Repayment Scheduling
| Name | Default | Effect when enabled |
|---|---|---|
reschedule-repayments-on-holidays | Enabled | Repayments falling on a configured holiday are rescheduled per the holiday's rescheduling rule |
reschedule-future-repayments | Enabled | When a holiday is added after loan disbursement, future repayments falling in the holiday window are retroactively rescheduled |
allow-transactions-on-non_workingday | Disabled | Staff can record transactions on days not in the working days schedule |
allow-transactions-on-holiday | Disabled | Staff can record transactions on configured holiday dates |
Interest Calculation
| Name | Default | Effect when enabled |
|---|---|---|
interest-charged-from-date | Disabled | Accrual starts from the interestChargedFromDate field on the loan (if set), rather than the disbursement date |
days-in-year-custom-strategy | Disabled | Uses a custom days-in-year calculation (e.g., 360 or actual/365) instead of the product default |
Loan Lifecycle
| Name | Default | Effect |
|---|---|---|
loan-reschedule-is-first-payment-allowed | Disabled | Allows the first repayment to be rescheduled |
is-interest-to-be-recovered-first-when-greater-than-emi | Disabled | When a repayment amount exceeds the EMI, recover interest before principal |
is-principal-compounding-disabled-for-overdue-loans | Disabled | Disables principal compounding for loans that are overdue |
enable-address | Disabled | Enables the address module for clients, allowing multiple structured addresses per client |
enable-business-date | Enabled | Activates Business Date logic for COB processing. Should always remain enabled in production. |
enable-post-dated-checks-module | Disabled | Enables post-dated cheque tracking for loans |
enable-auto-generated-external-id | Disabled | Auto-generates an externalId for new entities if none is provided |
COB (Close of Business)
| Name | Default | Effect when enabled |
|---|---|---|
enable-business-date | Enabled | COB uses Business Date rather than system date for processing. See Business Date guide. |
loan-arrears-aging-is-based-on-meeting-date | Disabled | For group-based loans, arrears calculation uses the group meeting date rather than the instalment due date |
Client & Account Features
| Name | Default | Effect when enabled |
|---|---|---|
enable-address | Disabled | Enables structured address storage for clients (country, city, street, postal code) |
enable-client-classification | Disabled | Enables the client classification code field on client profiles |
enable-client-types | Disabled | Enables the client type code field (individual, business, cooperative) |
enable-gender | Disabled | Enables the gender field on client profiles |
enable-staff-name-for-clients | Disabled | Displays the assigned loan officer name on client profiles |
Account Number Formatting
| Name | Value field | Effect |
|---|---|---|
loan-account-number-format | Integer (1-3) | Controls auto-generated loan account number format |
savings-account-number-format | Integer | Controls auto-generated savings account number format |
client-number-format | Integer | Controls auto-generated client number format |
group-number-format | Integer | Controls auto-generated group number format |
Account number format codes:
1- Numeric ID with zero padding2- Random alphanumeric string3- Prefix + numeric ID
Accounting
| Name | Default | Effect when enabled |
|---|---|---|
financial-activity-account-linked-to-single-product | Disabled | Restricts financial activity accounts to only one product mapping |
Recommended Production Settings
For most regulated institutions:
| Setting | Recommended |
|---|---|
maker-checker | Enabled - require 4-eyes approval for loan approvals and disbursements |
reschedule-repayments-on-holidays | Enabled - always reschedule on holidays |
reschedule-future-repayments | Enabled - retroactively update schedules when holidays are added |
allow-transactions-on-non_workingday | Disabled - prevents backdated or off-schedule entries |
allow-transactions-on-holiday | Disabled - prevents transactions on closed days |
enable-business-date | Enabled - required for correct COB processing |
enable-address | Enabled - useful for most institutions |
enable-auto-generated-external-id | Enabled - simplifies integration reconciliation |
For development / test environments:
- Disable
maker-checkerto avoid approval loops during testing - Enable
allow-transactions-on-non_workingdayandallow-transactions-on-holidayfor flexible test data entry
Checking a Specific Setting
bash
GET /fineract-provider/api/v1/configurations?name=maker-checkerOr by ID if known:
bash
GET /fineract-provider/api/v1/configurations/1