Command Palette

Search for a command to run...

Guide

Client Onboarding

Learn how to onboard clients in Apache Fineract, from creating individual clients to managing groups and centers. This guide covers the complete client lifecycle.

Understanding Clients in Fineract

In Fineract, a client represents an individual or entity that can hold accounts, apply for loans, and participate in financial services. Clients are always assigned to an office and can optionally be assigned to a staff member (loan officer).

Individual Clients

Single persons with their own accounts and loan applications.

Group Clients

Clients organized into groups for joint liability lending.

Creating an Individual Client

To create a new individual client, you need at minimum the office ID, first name, and last name. Additional fields like external ID, date of birth, and contact information enhance the client record.

Step 1: Get Available Offices

First, retrieve the list of offices to get a valid office ID:

bash
curl --request GET \
  --url "https://your-instance.com/fineract-provider/api/v1/offices" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default"

Step 2: Create the Client

Create the client with the required information:

bash
curl --request POST \
  --url "https://your-instance.com/fineract-provider/api/v1/clients" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json" \
  --data '{
    "officeId": 1,
    "firstname": "John",
    "lastname": "Doe",
    "externalId": "EXT-001",
    "dateFormat": "dd MMMM yyyy",
    "locale": "en",
    "active": true,
    "activationDate": "01 January 2024",
    "mobileNo": "+1234567890",
    "dateOfBirth": "15 March 1985",
    "genderId": 22,
    "clientTypeId": 17,
    "clientClassificationId": 18
  }'

Response

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

Client Lifecycle States

Clients move through various states during their lifecycle:

PendingClient created but not yet active
ActiveClient is active and can open accounts
ClosedClient relationship has been closed
RejectedClient application was rejected
WithdrawnClient withdrew their application

Activating a Client

If you created a client without setting active: true, you'll need to activate them manually:

bash
curl --request POST \
  --url "https://your-instance.com/fineract-provider/api/v1/clients/1?command=activate" \
  --header "Authorization: Basic {credentials}" \
  --header "Fineract-Platform-TenantId: default" \
  --header "Content-Type: application/json" \
  --data '{
    "activationDate": "01 January 2024",
    "dateFormat": "dd MMMM yyyy",
    "locale": "en"
  }'

Next Steps