Command Palette

Search for a command to run...

Quick Start Guide

Follow this guide to complete a full client onboarding workflow using the Fineract API.

1

Create an Office

First, ensure you have an office to assign clients to. Most installations come with a default head office.

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

# Response
[
  {
    "id": 1,
    "name": "Head Office",
    "nameDecorated": "Head Office",
    "externalId": "1",
    "openingDate": [2009, 1, 1]
  }
]
2

Create a Client

Create a new client with their personal information.

bash
curl --request POST \
  --url "https://your-fineract-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": "CLIENT-001",
    "dateFormat": "dd MMMM yyyy",
    "locale": "en",
    "active": true,
    "activationDate": "01 January 2024"
  }'

# Response
{
  "officeId": 1,
  "clientId": 1,
  "resourceId": 1
}
3

Create a Savings Account

Open a savings account for the client.

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

Make a Deposit

Deposit funds into the savings account.

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

Workflow Complete

You've successfully created a client with a funded savings account. Continue exploring the API to learn about loans, accounting, and more.

Was this page helpful?