FINS Thought Machine Events Listener - Implementation Template
home
This API implementation template is a component of MuleSoft Accelerators, which accelerate the implementation of essential integration use cases.
The solution includes pre-built APIs, connectors, and integration templates that help unlock business-critical data from external systems and guide you in adopting best practices synthesized from thousands of customer implementations. Use these assets as is or extend them to meet your company’s unique needs.
Overview
The FINS Thought Machine Event Listener listens for Account Events on the Kafka Topic of the Thought Machine Vault Core Streaming APIs. The Kafka Topic Event message is converted to CIM format by replacing all the Thought Machine identifiers with Global Data System Identifiers and the enriched payload is published to Anypoint MQ to sync the necessary changes to other systems.
Getting started
The Getting Started with MuleSoft Accelerators guide provides general information on getting started with the accelerator components. This includes instructions on setting up your local workstation for configuring and deploying the applications. |
Once your workstation has been set up and the application template imported into Anypoint Studio, proceed with the Prerequisites section.
Prerequisites
This implementation template has the following dependencies:
- Thought Machine Vault Core instance
- IP Whitelisted and authorized to subscribe to the Core Vault API Kafka Topics
- Anypoint MQ Destinations
- Accelerator MariaDB Global Party System API
- FINS Core Banking Accounts System API
Please review the use cases described on the MuleSoft Accelerator for Financial Services solution pages for more information about dependencies on other APIs and services.
API dependencies
The following table lists all endpoints used by this API.
API name | Endpoint | Action |
---|---|---|
Accelerator MariaDB Global Party System API | get:/customers | Search Customers |
FINS Core Banking Accounts System API | get:/accounts/accountId | Get Accounts using Id |
Anypoint MQ Destinations
In addition to the Anypoint MQ client application credentials, the following destinations must be created and made accessible to this API:
- fins-account-update-exchange
The FINS Common Resources asset contains a Postman collection, which can be used to create the destinations and client application required for use by accelerator applications.
Deployment
Each Accelerator implementation template in Exchange includes Bash and Windows scripts for building and deploying the APIs to CloudHub. These scripts depend on repositories, global settings, deployment profiles, and associated properties configured in the Maven settings.xml
file.
For additional details, please refer to the Application Deployment section of the Getting Started Guide.
Preparation
Ensure the Maven profile CloudHub-FINS-DEV
has been properly configured in your settings.xml
file. In particular, make sure the common properties for your environment have been provided (e.g., Anypoint Platform client ID and secret).
Required property overrides
At a minimum, the following properties must be customized to reflect the target deployment environment.
Property Name | Description |
---|---|
api.autodiscoveryID | Required if using API Manager to secure this API |
anypoint-mq.server-url | Anypoint MQ Server for the targeted region |
anypoint-mq.accounts-exchange-name | Anypoint MQ Exchange for Account updates |
anypoint-mq.client-id | Anypoint MQ client-id |
anypoint-mq.client-secret | Anypoint MQ client-secret |
sys.tm.accounts.host | Hostname for FINS Thought Machine Accounts System API |
sys.tm.accounts.port | Port for FINS Thought Machine Accounts System API |
sys.tm.accounts.base-path | Basepath for FINS Thought Machine Accounts System API |
sys.tm.accounts.service-account-user-id | The ID of the Service Account User. This can be obtained by navigating to the Organization admin (using the Thought Machine Operations Dashboard) > Service accounts. Select the Service Account that is used by the FINS Thought Machine Accounts System API > The ID can be seen on the top of the Service Account details page navigation breadcrumb |
sys.global-party.host | Hostname for Global Party System API |
sys.global-party.port | Port for Global Party System API |
sys.global-party.base-path | Basepath for Global Party System API |
Implementation notes
- Sync of Financial Account from Thought Machine to Global Data System and all other target systems is initialized only when the Financial Accounts associated Primary Account Owner and the Secondary Accounts Owners exist in the Global Data System
- The Financial Accounts that are created by the Service Account User that is used by the FINS Thought Machine Accounts System API are excluded from the sync process. This is to avoid cyclical updates.
Additional resources
- The Data mappings tab describes the mappings.
- Refer to the Accelerators documentation home for more information about the MuleSoft Accelerators.