Command Palette

Search for a command to run...

GET
/fineract-provider/api/v1/offices

List offices

Retrieves all offices in the organizational hierarchy.

Query Parameters

includeAllOfficesboolean

Include all offices regardless of access

orderBystring

Field to order by

sortOrderstring

Sort direction

Returns

200List of offices

Request

curl
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

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}
GET
/fineract-provider/api/v1/offices/{officeId}

Retrieve an office

Gets details of a specific office.

Path Parameters

officeIdintegerrequired

Office ID

Returns

200Office details

Request

curl
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

json
{
  "id": 1,
  "status": {
    "id": 300,
    "code": "statusType.active",
    "value": "Active"
  },
  "officeId": 1,
  "officeName": "Head Office",
  "createdDate": "2024-01-15",
  "lastModifiedDate": "2024-01-20"
}
POST
/fineract-provider/api/v1/offices

Create an office

Creates a new office in the organizational hierarchy.

Request Bodyrequired

Office details

namestring

Office name

parentIdinteger

Parent office ID

openingDatestring
externalIdstring
dateFormatstring
localestring

Returns

200Office created

Request

curl
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

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
PUT
/fineract-provider/api/v1/offices/{officeId}

Update an office

Updates office information.

Path Parameters

officeIdintegerrequired

Office ID

Request Bodyrequired

Updated office details

namestring
externalIdstring

Returns

200Office updated

Request

curl
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

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
GET
/fineract-provider/api/v1/staff

List staff members

Retrieves all staff members.

Query Parameters

officeIdinteger

Filter by office

statusstring

Filter by status (all, active, inactive)

isLoanOfficerboolean

Filter loan officers only

Returns

200List of staff

Request

curl
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

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}
GET
/fineract-provider/api/v1/staff/{staffId}

Retrieve staff member

Gets details of a specific staff member.

Path Parameters

staffIdintegerrequired

Staff ID

Returns

200Staff details

Request

curl
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

json
{
  "id": 1,
  "status": {
    "id": 300,
    "code": "statusType.active",
    "value": "Active"
  },
  "officeId": 1,
  "officeName": "Head Office",
  "createdDate": "2024-01-15",
  "lastModifiedDate": "2024-01-20"
}
POST
/fineract-provider/api/v1/staff

Create staff member

Creates a new staff member.

Request Bodyrequired

Staff details

officeIdinteger
firstnamestring
lastnamestring
isLoanOfficerboolean
mobileNostring
externalIdstring
joiningDatestring
isActiveboolean
dateFormatstring
localestring

Returns

200Staff created

Request

curl
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

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
GET
/fineract-provider/api/v1/loanproducts

List loan products

Retrieves all configured loan products.

Returns

200List of loan products

Request

curl
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

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}
GET
/fineract-provider/api/v1/loanproducts/{productId}

Retrieve loan product

Gets detailed configuration of a specific loan product.

Path Parameters

productIdintegerrequired

Product ID

Returns

200Loan product details

Request

curl
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

json
{
  "id": 1,
  "status": {
    "id": 300,
    "code": "statusType.active",
    "value": "Active"
  },
  "officeId": 1,
  "officeName": "Head Office",
  "createdDate": "2024-01-15",
  "lastModifiedDate": "2024-01-20"
}
POST
/fineract-provider/api/v1/loanproducts

Create loan product

Creates a new loan product with specified terms, interest rates, and fees.

Request Bodyrequired

Loan product configuration

namestring
shortNamestring
currencyCodestring
digitsAfterDecimalinteger
inMultiplesOfinteger
principalnumber
minPrincipalnumber
maxPrincipalnumber
numberOfRepaymentsinteger
minNumberOfRepaymentsinteger
maxNumberOfRepaymentsinteger
repaymentEveryinteger
repaymentFrequencyTypeinteger
interestRatePerPeriodnumber
minInterestRatePerPeriodnumber
maxInterestRatePerPeriodnumber
interestRateFrequencyTypeinteger
amortizationTypeinteger
interestTypeinteger
interestCalculationPeriodTypeinteger
transactionProcessingStrategyCodestring
accountingRuleinteger
daysInMonthTypeinteger
daysInYearTypeinteger
isInterestRecalculationEnabledboolean
localestring

Returns

200Loan product created

Request

curl
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

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
GET
/fineract-provider/api/v1/savingsproducts

List savings products

Retrieves all configured savings products.

Returns

200List of savings products

Request

curl
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

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}
GET
/fineract-provider/api/v1/savingsproducts/{productId}

Retrieve savings product

Gets detailed configuration of a specific savings product.

Path Parameters

productIdintegerrequired

Product ID

Returns

200Savings product details

Request

curl
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

json
{
  "id": 1,
  "status": {
    "id": 300,
    "code": "statusType.active",
    "value": "Active"
  },
  "officeId": 1,
  "officeName": "Head Office",
  "createdDate": "2024-01-15",
  "lastModifiedDate": "2024-01-20"
}
POST
/fineract-provider/api/v1/savingsproducts

Create savings product

Creates a new savings product with specified interest rates and settings.

Request Bodyrequired

Savings product configuration

namestring
shortNamestring
currencyCodestring
digitsAfterDecimalinteger
inMultiplesOfinteger
nominalAnnualInterestRatenumber
interestCompoundingPeriodTypeinteger
interestPostingPeriodTypeinteger
interestCalculationTypeinteger
interestCalculationDaysInYearTypeinteger
accountingRuleinteger
allowOverdraftboolean
overdraftLimitnumber
minRequiredOpeningBalancenumber
lockinPeriodFrequencyinteger
lockinPeriodFrequencyTypeinteger
withdrawalFeeForTransfersboolean
withHoldTaxboolean
localestring

Returns

200Savings product created

Request

curl
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

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
GET
/fineract-provider/api/v1/charges

List charges

Retrieves all configured charges.

Returns

200List of charges

Request

curl
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

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}
GET
/fineract-provider/api/v1/charges/{chargeId}

Retrieve charge

Gets details of a specific charge definition.

Path Parameters

chargeIdintegerrequired

Charge ID

Returns

200Charge details

Request

curl
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

json
{
  "id": 1,
  "status": {
    "id": 300,
    "code": "statusType.active",
    "value": "Active"
  },
  "officeId": 1,
  "officeName": "Head Office",
  "createdDate": "2024-01-15",
  "lastModifiedDate": "2024-01-20"
}
POST
/fineract-provider/api/v1/charges

Create charge

Creates a new charge definition.

Request Bodyrequired

Charge details

namestring
chargeAppliesTointeger

1=Loan, 2=Savings, 3=Client

currencyCodestring
amountnumber
chargeTimeTypeinteger
chargeCalculationTypeinteger
chargePaymentModeinteger
penaltyboolean
activeboolean
localestring

Returns

200Charge created

Request

curl
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

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
GET
/fineract-provider/api/v1/funds

List funds

Retrieves all funds available for loan disbursement.

Returns

200List of funds

Request

curl
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

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}
POST
/fineract-provider/api/v1/funds

Create fund

Creates a new fund.

Request Bodyrequired

Fund details

namestring
externalIdstring

Returns

200Fund created

Request

curl
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

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
GET
/fineract-provider/api/v1/currencies

Retrieve currency configuration

Gets the list of currencies enabled in the system.

Returns

200Currency configuration

Request

curl
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

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}
PUT
/fineract-provider/api/v1/currencies

Update currency configuration

Updates the list of enabled currencies.

Request Bodyrequired

Currency configuration

currenciesarray

Array of currency codes

Returns

200Currencies updated

Request

curl
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

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
GET
/fineract-provider/api/v1/holidays

List holidays

Retrieves all configured holidays.

Query Parameters

officeIdinteger

Filter by office

fromDatestring

Start date filter

toDatestring

End date filter

Returns

200List of holidays

Request

curl
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

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}
POST
/fineract-provider/api/v1/holidays

Create holiday

Creates a new holiday definition.

Request Bodyrequired

Holiday details

namestring
descriptionstring
fromDatestring
toDatestring
repaymentsRescheduledTostring
officesarray
dateFormatstring
localestring

Returns

200Holiday created

Request

curl
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

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}
GET
/fineract-provider/api/v1/paymenttypes

List payment types

Retrieves all configured payment types/methods.

Returns

200List of payment types

Request

curl
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

json
{
  "totalFilteredRecords": 25,
  "pageItems": [
    {
      "id": 1,
      "displayName": "Sample Item 1",
      "status": "active"
    },
    {
      "id": 2,
      "displayName": "Sample Item 2",
      "status": "active"
    }
  ]
}
POST
/fineract-provider/api/v1/paymenttypes

Create payment type

Creates a new payment type.

Request Bodyrequired

Payment type details

namestring
descriptionstring
isCashPaymentboolean
positioninteger

Returns

200Payment type created

Request

curl
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

json
{
  "officeId": 1,
  "resourceId": 1,
  "changes": {}
}

Was this page helpful?