Appearance
Business Events
Apache Fineract fires a notification every time something meaningful happens - a loan is approved, a repayment is posted, a client is created, a savings account is activated. These notifications are called business events, and they are the mechanism through which your core banking system talks to everything else.
Without business events, every integration between Fineract and an external tool requires scheduled batch exports, manual data pulls, or custom database polling. With business events, the connection is automatic and immediate: when something happens in Fineract, the right systems find out straight away.
What Triggers a Business Event
Business events are fired by the actions your staff and customers already take every day. Common triggers include:
- A loan officer approves a loan application
- A disbursement is processed
- A customer makes a repayment
- A new client record is created
- A savings account is opened or closed
- A loan goes into arrears (overdue charge applied)
- A loan is written off or charged off
- A fixed deposit matures or rolls over
- A document is uploaded to a client file
There are over 70 distinct event types covering the full lifecycle of loans, savings accounts, clients, groups, and more. You choose which ones to activate.
What You Can Do With Business Events
Business events are the foundation for building a connected financial institution. The following are real-world examples of what institutions use them for.
Customer Notifications
Send an SMS, WhatsApp message, push notification, or email to a customer the moment something changes on their account - without any manual step.
Examples:
- A borrower receives an SMS when their loan is approved: "Your loan of KES 50,000 has been approved. Visit us tomorrow to collect."
- A customer receives a WhatsApp message confirming their repayment was received, with the updated outstanding balance.
- A savings account holder gets an email when their monthly interest is posted.
- A fixed deposit customer is notified 7 days before maturity so they can decide whether to roll over or withdraw.
The event fires from Fineract, your messaging platform picks it up, and the customer hears within seconds.
Loan Agreement and Document Generation
Automatically generate and send loan agreements, repayment schedules, or disclosure documents the moment a loan is approved or disbursed - with no staff involvement.
Examples:
- A loan approval event triggers your document generation system to produce a signed-ready PDF agreement, pre-filled with the loan terms, and send it to the borrower by email.
- A disbursement event triggers generation of an official payment advice and posts it to the customer's mobile app.
This removes a manual document preparation step and reduces the time between approval and disbursement.
CRM and Customer 360
Keep your CRM synchronized with what is happening in Fineract automatically, so relationship managers always have an up-to-date picture of each customer.
Examples:
- A new client created in Fineract automatically creates or updates a contact record in your CRM (Salesforce, HubSpot, Zoho, or a custom system).
- A loan disbursement updates the customer's profile to reflect their active facility, limit, and repayment start date.
- A loan closure marks the facility as settled in the CRM and queues a follow-up task for the relationship manager to offer a top-up or cross-sell.
Relationship managers see the full picture without switching between systems or waiting for overnight syncs.
Collections and Arrears Management
Trigger your collections workflow the moment a loan enters arrears - before the situation deteriorates further.
Examples:
- When an overdue charge is applied to a loan (a sign the borrower has missed a payment), an event fires and your collections system automatically:
- Creates a follow-up task for the assigned field officer
- Sends an SMS reminder to the borrower
- Updates the loan's risk flag in your portfolio dashboard
- When a loan is written off, a final collections notice is generated and the loan is flagged for legal referral if the balance exceeds a threshold.
Manual monitoring of arrears lists is replaced by automatic triggers that act the moment an event occurs.
Accounting and ERP Integration
Post accounting entries to your general ledger or ERP (SAP, QuickBooks, Xero, Odoo, or a custom system) in real time as transactions are processed in Fineract.
Examples:
- A repayment posted in Fineract fires an event that creates the corresponding journal entries in your ERP within seconds.
- A loan disbursement event triggers a funds transfer record in your treasury system.
- A savings deposit event updates the liability register in your accounting system.
Real-time accounting integration means your financial statements reflect the current state of your portfolio at any moment, not yesterday's batch export.
Compliance and Regulatory Reporting
Automate the compliance actions that must happen when certain events occur, reducing the risk of a manual step being missed.
Examples:
- A large deposit triggers an event that creates a large transaction report in your compliance system for review within minutes of the deposit being made.
- A client activation event fires a check against a sanctions screening API. If a match is found, the compliance officer is alerted immediately.
- A loan charge-off event automatically notifies your credit bureau reporting system to update the borrower's record.
- A new beneficial ownership record added to a corporate account triggers a KYC review task in your workflow system.
Compliance steps that previously depended on staff remembering to take action become automatic.
Fraud Detection and Risk Monitoring
Send transaction events to a fraud detection or risk monitoring platform in real time so it can identify unusual patterns and trigger alerts.
Examples:
- Every savings deposit and withdrawal is streamed to your risk platform, which flags accounts that deviate significantly from their declared transaction profile.
- A savings withdrawal above a threshold triggers an alert to the branch manager for review.
- Rapid successive repayments on a newly disbursed loan (a pattern associated with loan stacking) trigger a risk flag for review.
Real-time feeds are more effective than batch exports because fraud patterns are visible before they escalate.
Data Warehouse and Analytics
Stream every event into a data warehouse or analytics platform to build a complete, real-time view of your portfolio without relying on direct database exports.
Examples:
- Every loan event (approval, disbursement, repayment, arrears) is written to a data warehouse where your analytics team can query loan portfolio performance across any time dimension.
- A business intelligence dashboard shows disbursements and repayments in near real time, without waiting for end-of-day exports.
- Events are used to rebuild a full audit trail of every state change for each loan and client.
The data warehouse receives a structured record of what happened, when, and to which entity - making it straightforward to build reports, dashboards, and predictive models.
Field Officer Mobile Apps
Keep field officers informed the moment something changes on the clients and loans they manage, so they arrive at client visits with current information.
Examples:
- A loan disbursement event pushes a notification to the assigned loan officer's mobile app: "Disbursement processed for client Amara Diallo - KES 30,000."
- A repayment missed event creates a task in the field officer's queue to contact the borrower before the next scheduled visit.
- A new group member added event notifies the group's assigned officer.
Field officers working in areas with intermittent connectivity can sync task queues when they reconnect, receiving all events that occurred while they were offline.
How It Works Without Technical Detail
When a transaction or record change is committed in Fineract, the system records an event in a holding table. A background process picks it up, packages it, and sends it to a message broker - a system that holds the event until other systems are ready to receive it.
Your connected systems subscribe to the broker and receive the event. They can then take whatever action is appropriate: send a message, update a record, generate a document, file a report.
If a connected system is temporarily unavailable, the event stays in the broker until the system recovers. No events are lost due to downtime on either end.
Supported Connectors
Events can be delivered to any system that supports two widely adopted messaging protocols:
- Apache Kafka - preferred for high-volume deployments, data pipelines, and analytics platforms. Standard in large financial institutions and cloud-native architectures.
- Apache ActiveMQ / Amazon MQ - a traditional JMS-compatible message broker. Well-supported in enterprise environments and available as a managed service on AWS.
Most modern cloud platforms and integration tools (MuleSoft, Apache Camel, AWS EventBridge, Azure Service Bus bridges, and others) can connect to either protocol.
Choosing Which Events to Activate
All event types are off by default. You activate only the events your integrations need, through a simple configuration API. There is no restart required - changes take effect immediately.
This means you can start with a small number of events (loan approvals and repayments, for example) and add more as your integration footprint grows, without any disruption to running systems.
For the full list of available event types and how to enable them, see the Business Events developer guide.