Organization
Office hierarchy, staff management, loan/savings products, charges, funds, currencies, and organizational settings
/fineract-provider/api/v1/officesList offices
Retrieves all offices in the organizational hierarchy.
Query Parameters
includeAllOfficesbooleanInclude all offices regardless of access
orderBystringField to order by
sortOrderstringSort direction
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/offices" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"totalFilteredRecords": 25,
"pageItems": [
{
"id": 1,
"displayName": "Sample Item 1",
"status": "active"
},
{
"id": 2,
"displayName": "Sample Item 2",
"status": "active"
}
]
}/fineract-provider/api/v1/offices/{officeId}Retrieve an office
Gets details of a specific office.
Path Parameters
officeIdintegerrequiredOffice ID
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/offices/:officeId" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"id": 1,
"status": {
"id": 300,
"code": "statusType.active",
"value": "Active"
},
"officeId": 1,
"officeName": "Head Office",
"createdDate": "2024-01-15",
"lastModifiedDate": "2024-01-20"
}/fineract-provider/api/v1/officesCreate an office
Creates a new office in the organizational hierarchy.
Request Bodyrequired
Office details
namestringOffice name
parentIdintegerParent office ID
openingDatestringexternalIdstringdateFormatstringlocalestringReturns
Request
curl --request POST \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/offices" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"name": "sample_name",
"parentId": 1,
"openingDate": "01 January 2024",
"externalId": "sample_externalId",
"dateFormat": "01 January 2024",
"locale": "sample_locale"
}'Response
{
"officeId": 1,
"resourceId": 1,
"changes": {}
}/fineract-provider/api/v1/offices/{officeId}Update an office
Updates office information.
Path Parameters
officeIdintegerrequiredOffice ID
Request Bodyrequired
Updated office details
namestringexternalIdstringReturns
Request
curl --request PUT \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/offices/:officeId" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"name": "sample_name",
"externalId": "sample_externalId"
}'Response
{
"officeId": 1,
"resourceId": 1,
"changes": {}
}/fineract-provider/api/v1/staffList staff members
Retrieves all staff members.
Query Parameters
officeIdintegerFilter by office
statusstringFilter by status (all, active, inactive)
isLoanOfficerbooleanFilter loan officers only
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/staff" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"totalFilteredRecords": 25,
"pageItems": [
{
"id": 1,
"displayName": "Sample Item 1",
"status": "active"
},
{
"id": 2,
"displayName": "Sample Item 2",
"status": "active"
}
]
}/fineract-provider/api/v1/staff/{staffId}Retrieve staff member
Gets details of a specific staff member.
Path Parameters
staffIdintegerrequiredStaff ID
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/staff/:staffId" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"id": 1,
"status": {
"id": 300,
"code": "statusType.active",
"value": "Active"
},
"officeId": 1,
"officeName": "Head Office",
"createdDate": "2024-01-15",
"lastModifiedDate": "2024-01-20"
}/fineract-provider/api/v1/staffCreate staff member
Creates a new staff member.
Request Bodyrequired
Staff details
officeIdintegerfirstnamestringlastnamestringisLoanOfficerbooleanmobileNostringexternalIdstringjoiningDatestringisActivebooleandateFormatstringlocalestringReturns
Request
curl --request POST \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/staff" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"officeId": 1,
"firstname": "sample_firstname",
"lastname": "sample_lastname",
"isLoanOfficer": true,
"mobileNo": "sample_mobileNo",
"externalId": "sample_externalId",
"joiningDate": "01 January 2024",
"isActive": true,
"dateFormat": "01 January 2024",
"locale": "sample_locale"
}'Response
{
"officeId": 1,
"resourceId": 1,
"changes": {}
}/fineract-provider/api/v1/loanproductsList loan products
Retrieves all configured loan products.
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/loanproducts" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"totalFilteredRecords": 25,
"pageItems": [
{
"id": 1,
"displayName": "Sample Item 1",
"status": "active"
},
{
"id": 2,
"displayName": "Sample Item 2",
"status": "active"
}
]
}/fineract-provider/api/v1/loanproducts/{productId}Retrieve loan product
Gets detailed configuration of a specific loan product.
Path Parameters
productIdintegerrequiredProduct ID
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/loanproducts/:productId" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"id": 1,
"status": {
"id": 300,
"code": "statusType.active",
"value": "Active"
},
"officeId": 1,
"officeName": "Head Office",
"createdDate": "2024-01-15",
"lastModifiedDate": "2024-01-20"
}/fineract-provider/api/v1/loanproductsCreate loan product
Creates a new loan product with specified terms, interest rates, and fees.
Request Bodyrequired
Loan product configuration
namestringshortNamestringcurrencyCodestringdigitsAfterDecimalintegerinMultiplesOfintegerprincipalnumberminPrincipalnumbermaxPrincipalnumbernumberOfRepaymentsintegerminNumberOfRepaymentsintegermaxNumberOfRepaymentsintegerrepaymentEveryintegerrepaymentFrequencyTypeintegerinterestRatePerPeriodnumberminInterestRatePerPeriodnumbermaxInterestRatePerPeriodnumberinterestRateFrequencyTypeintegeramortizationTypeintegerinterestTypeintegerinterestCalculationPeriodTypeintegertransactionProcessingStrategyCodestringaccountingRuleintegerdaysInMonthTypeintegerdaysInYearTypeintegerisInterestRecalculationEnabledbooleanlocalestringReturns
Request
curl --request POST \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/loanproducts" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"name": "sample_name",
"shortName": "sample_shortName",
"currencyCode": "sample_currencyCode",
"digitsAfterDecimal": 1,
"inMultiplesOf": 1,
"principal": 1000,
"minPrincipal": 1000,
"maxPrincipal": 1000,
"numberOfRepayments": 1,
"minNumberOfRepayments": 1,
"maxNumberOfRepayments": 1,
"repaymentEvery": 1,
"repaymentFrequencyType": 1,
"interestRatePerPeriod": 1000,
"minInterestRatePerPeriod": 1000,
"maxInterestRatePerPeriod": 1000,
"interestRateFrequencyType": 1,
"amortizationType": 1,
"interestType": 1,
"interestCalculationPeriodType": 1,
"transactionProcessingStrategyCode": "sample_transactionProcessingStrategyCode",
"accountingRule": 1,
"daysInMonthType": 1,
"daysInYearType": 1,
"isInterestRecalculationEnabled": true,
"locale": "sample_locale"
}'Response
{
"officeId": 1,
"resourceId": 1,
"changes": {}
}/fineract-provider/api/v1/savingsproductsList savings products
Retrieves all configured savings products.
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/savingsproducts" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"totalFilteredRecords": 25,
"pageItems": [
{
"id": 1,
"displayName": "Sample Item 1",
"status": "active"
},
{
"id": 2,
"displayName": "Sample Item 2",
"status": "active"
}
]
}/fineract-provider/api/v1/savingsproducts/{productId}Retrieve savings product
Gets detailed configuration of a specific savings product.
Path Parameters
productIdintegerrequiredProduct ID
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/savingsproducts/:productId" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"id": 1,
"status": {
"id": 300,
"code": "statusType.active",
"value": "Active"
},
"officeId": 1,
"officeName": "Head Office",
"createdDate": "2024-01-15",
"lastModifiedDate": "2024-01-20"
}/fineract-provider/api/v1/savingsproductsCreate savings product
Creates a new savings product with specified interest rates and settings.
Request Bodyrequired
Savings product configuration
namestringshortNamestringcurrencyCodestringdigitsAfterDecimalintegerinMultiplesOfintegernominalAnnualInterestRatenumberinterestCompoundingPeriodTypeintegerinterestPostingPeriodTypeintegerinterestCalculationTypeintegerinterestCalculationDaysInYearTypeintegeraccountingRuleintegerallowOverdraftbooleanoverdraftLimitnumberminRequiredOpeningBalancenumberlockinPeriodFrequencyintegerlockinPeriodFrequencyTypeintegerwithdrawalFeeForTransfersbooleanwithHoldTaxbooleanlocalestringReturns
Request
curl --request POST \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/savingsproducts" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"name": "sample_name",
"shortName": "sample_shortName",
"currencyCode": "sample_currencyCode",
"digitsAfterDecimal": 1,
"inMultiplesOf": 1,
"nominalAnnualInterestRate": 1000,
"interestCompoundingPeriodType": 1,
"interestPostingPeriodType": 1,
"interestCalculationType": 1,
"interestCalculationDaysInYearType": 1,
"accountingRule": 1,
"allowOverdraft": true,
"overdraftLimit": 1000,
"minRequiredOpeningBalance": 1000,
"lockinPeriodFrequency": 1,
"lockinPeriodFrequencyType": 1,
"withdrawalFeeForTransfers": true,
"withHoldTax": true,
"locale": "sample_locale"
}'Response
{
"officeId": 1,
"resourceId": 1,
"changes": {}
}/fineract-provider/api/v1/chargesList charges
Retrieves all configured charges.
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/charges" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"totalFilteredRecords": 25,
"pageItems": [
{
"id": 1,
"displayName": "Sample Item 1",
"status": "active"
},
{
"id": 2,
"displayName": "Sample Item 2",
"status": "active"
}
]
}/fineract-provider/api/v1/charges/{chargeId}Retrieve charge
Gets details of a specific charge definition.
Path Parameters
chargeIdintegerrequiredCharge ID
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/charges/:chargeId" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"id": 1,
"status": {
"id": 300,
"code": "statusType.active",
"value": "Active"
},
"officeId": 1,
"officeName": "Head Office",
"createdDate": "2024-01-15",
"lastModifiedDate": "2024-01-20"
}/fineract-provider/api/v1/chargesCreate charge
Creates a new charge definition.
Request Bodyrequired
Charge details
namestringchargeAppliesTointeger1=Loan, 2=Savings, 3=Client
currencyCodestringamountnumberchargeTimeTypeintegerchargeCalculationTypeintegerchargePaymentModeintegerpenaltybooleanactivebooleanlocalestringReturns
Request
curl --request POST \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/charges" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"name": "sample_name",
"chargeAppliesTo": 1,
"currencyCode": "sample_currencyCode",
"amount": 1000,
"chargeTimeType": 1,
"chargeCalculationType": 1,
"chargePaymentMode": 1,
"penalty": true,
"active": true,
"locale": "sample_locale"
}'Response
{
"officeId": 1,
"resourceId": 1,
"changes": {}
}/fineract-provider/api/v1/fundsList funds
Retrieves all funds available for loan disbursement.
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/funds" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"totalFilteredRecords": 25,
"pageItems": [
{
"id": 1,
"displayName": "Sample Item 1",
"status": "active"
},
{
"id": 2,
"displayName": "Sample Item 2",
"status": "active"
}
]
}/fineract-provider/api/v1/fundsCreate fund
Creates a new fund.
Request Bodyrequired
Fund details
namestringexternalIdstringReturns
Request
curl --request POST \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/funds" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"name": "sample_name",
"externalId": "sample_externalId"
}'Response
{
"officeId": 1,
"resourceId": 1,
"changes": {}
}/fineract-provider/api/v1/currenciesRetrieve currency configuration
Gets the list of currencies enabled in the system.
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/currencies" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"totalFilteredRecords": 25,
"pageItems": [
{
"id": 1,
"displayName": "Sample Item 1",
"status": "active"
},
{
"id": 2,
"displayName": "Sample Item 2",
"status": "active"
}
]
}/fineract-provider/api/v1/currenciesUpdate currency configuration
Updates the list of enabled currencies.
Request Bodyrequired
Currency configuration
currenciesarrayArray of currency codes
Returns
Request
curl --request PUT \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/currencies" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"currencies": []
}'Response
{
"officeId": 1,
"resourceId": 1,
"changes": {}
}/fineract-provider/api/v1/holidaysList holidays
Retrieves all configured holidays.
Query Parameters
officeIdintegerFilter by office
fromDatestringStart date filter
toDatestringEnd date filter
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/holidays" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"totalFilteredRecords": 25,
"pageItems": [
{
"id": 1,
"displayName": "Sample Item 1",
"status": "active"
},
{
"id": 2,
"displayName": "Sample Item 2",
"status": "active"
}
]
}/fineract-provider/api/v1/holidaysCreate holiday
Creates a new holiday definition.
Request Bodyrequired
Holiday details
namestringdescriptionstringfromDatestringtoDatestringrepaymentsRescheduledTostringofficesarraydateFormatstringlocalestringReturns
Request
curl --request POST \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/holidays" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"name": "sample_name",
"description": "sample_description",
"fromDate": "01 January 2024",
"toDate": "01 January 2024",
"repaymentsRescheduledTo": "sample_repaymentsRescheduledTo",
"offices": [],
"dateFormat": "01 January 2024",
"locale": "sample_locale"
}'Response
{
"officeId": 1,
"resourceId": 1,
"changes": {}
}/fineract-provider/api/v1/paymenttypesList payment types
Retrieves all configured payment types/methods.
Returns
Request
curl --request GET \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/paymenttypes" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json"Response
{
"totalFilteredRecords": 25,
"pageItems": [
{
"id": 1,
"displayName": "Sample Item 1",
"status": "active"
},
{
"id": 2,
"displayName": "Sample Item 2",
"status": "active"
}
]
}/fineract-provider/api/v1/paymenttypesCreate payment type
Creates a new payment type.
Request Bodyrequired
Payment type details
namestringdescriptionstringisCashPaymentbooleanpositionintegerReturns
Request
curl --request POST \
--url "https://your-fineract-instance.com/fineract-provider/api/v1/paymenttypes" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"name": "sample_name",
"description": "sample_description",
"isCashPayment": true,
"position": 1
}'Response
{
"officeId": 1,
"resourceId": 1,
"changes": {}
}Was this page helpful?