Guide
Savings Account Management
Learn how to create and manage savings accounts, process deposits and withdrawals, and understand interest calculations in Apache Fineract.
Understanding Savings Products
Before creating savings accounts, you need to understand savings products. Each product defines the terms like interest rates, minimum balance, and withdrawal limits.
bash
# List available savings products
curl --request GET \
--url "https://your-instance.com/fineract-provider/api/v1/savingsproducts" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default"Create a Savings Account
Open a new savings account for a client:
bash
curl --request POST \
--url "https://your-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,
"fieldOfficerId": 1,
"submittedOnDate": "01 January 2024",
"externalId": "SAV-001",
"dateFormat": "dd MMMM yyyy",
"locale": "en"
}'Approve and Activate
Approve and activate the savings account:
bash
# Approve
curl --request POST \
--url "https://your-instance.com/fineract-provider/api/v1/savingsaccounts/1?command=approve" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"approvedOnDate": "01 January 2024",
"dateFormat": "dd MMMM yyyy",
"locale": "en"
}'
# Activate
curl --request POST \
--url "https://your-instance.com/fineract-provider/api/v1/savingsaccounts/1?command=activate" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"activatedOnDate": "01 January 2024",
"dateFormat": "dd MMMM yyyy",
"locale": "en"
}'Making Deposits
Deposit funds into the savings account:
bash
curl --request POST \
--url "https://your-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 '{
"transactionDate": "05 January 2024",
"transactionAmount": 5000,
"paymentTypeId": 1,
"dateFormat": "dd MMMM yyyy",
"locale": "en",
"note": "Initial deposit"
}'Making Withdrawals
Withdraw funds from the savings account:
bash
curl --request POST \
--url "https://your-instance.com/fineract-provider/api/v1/savingsaccounts/1/transactions?command=withdrawal" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default" \
--header "Content-Type: application/json" \
--data '{
"transactionDate": "10 January 2024",
"transactionAmount": 1000,
"paymentTypeId": 1,
"dateFormat": "dd MMMM yyyy",
"locale": "en"
}'Check Account Balance
Retrieve the current account balance and transaction history:
bash
curl --request GET \
--url "https://your-instance.com/fineract-provider/api/v1/savingsaccounts/1?associations=transactions" \
--header "Authorization: Basic {credentials}" \
--header "Fineract-Platform-TenantId: default"