FINS Bank Accounts Process API - Implementation Template

(0 reviews)

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

This integration template implements the FINS Bank Accounts Process API specification. It supports the following functionalities:

  • Create/Update Financial Accounts in downstream systems
  • Create/Update Financial Transaction in downstream systems
  • Create/Update Financial Card in downstream systems

Getting started

bulb.png 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:

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 nameEndpointAction
Accelerator Global Financial Account System APIget:/accountsSearch Accounts
Accelerator Global Financial Account System APIget:/accounts/accountIdGet Accounts using Id
Accelerator Global Financial Account System APIput:/accountsCreate/Update Accounts
Accelerator Global Financial Account System APIput:/accounts/{accountId}/externalIdsUpdate Account ExternalIds using AccountId
Accelerator Global Financial Account System APIget:/transactionsSearch Transactions
Accelerator Global Financial Account System APIget:/transactions/{transactionId}Get Transaction using transactionId
Accelerator Global Financial Account System APIput:/transactionsCreate/Update Transaction
Accelerator Global Financial Account System APIput:/transactions/{transactionId}/externalIdsUpdate Account ExternalIds using transactionId
Accelerator Global Financial Account System APIget:/cardsSearch cards
Accelerator Global Financial Account System APIget:/cards/{cardId}Get card using cardId
Accelerator Global Financial Account System APIput:/cardsCreate/Update card
Accelerator Global Financial Account System APIput:/cards/{cardId}/externalIdsUpdate card ExternalIds using cardId
Accelerator Global Party System APIget:/customers/{customerId}Get customer using customerId
Accelerator Global Party System APIput:/customerscreate/update customers
Accelerator Global Party System APIput:/partiescreate/update Parties
Accelerator Global Party System APIget:/parties/{partyId}Get party using partyId
FINS Core Banking Accounts System APIget:/accountsSearch Accounts
FINS Core Banking Accounts System APIget:/accounts/{accountId}Get Accounts using Id
FINS Core Banking Accounts System APIpatch:/accounts/{accountId}Update Account using Id
FINS Core Banking Accounts System APIpost:/accountsCreate Accounts
FINS Salesforce Financial System APIget:/accountsSearch Accounts
FINS Salesforce Financial System APIget:/accounts/{accountId}Get Accounts using Id
FINS Salesforce Financial System APIpatch:/accounts/{accountId}update Accounts using Id
FINS Salesforce Financial System APIpost:/accountsCreate Accounts
FINS Salesforce Financial System APIget:/accounts/{accountId}/cardsSearch Cards
FINS Salesforce Financial System APIget:/accounts/{accountId}/cards/{cardId}Get cards using Card Id
FINS Salesforce Financial System APIpatch:/accounts/{accountId}/cards/{cardId}Update Cards using Card Id
FINS Salesforce Financial System APIpost:/accounts/{accountId}/cardsCreate Cards
FINS Credit Card System APIget:/accounts/{accountId}/cardsSearch Cards
FINS Credit Card System APIget:/accounts/{accountId}/cards/{cardId}Get cards using Card Id
FINS Credit Card System APIpatch:/accounts/{accountId}/cards/{cardId}Update Cards using Card Id
FINS Credit Card System APIpost:/accounts/{accountId}/cardsCreate Cards

Anypoint MQ Destinations

In addition to the Anypoint MQ client application credentials, the following destinations must be created and made accessible to this API:

  1. fins-customer-update-queue
  2. fins-account-update-queue
  3. fins-transaction-update-queue
  4. fins-card-update-queue

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

Many templates can also be run from Anypoint Studio without having to customize the Run/Debug profiles. However, some templates make use of hidden deployment properties to protect sensitive information (e.g., passwords and secret keys). These properties must be supplied to the runtime by updating the configuration profile and adding them as VM arguments. At a minimum, the following properties must be customized to reflect the target deployment environment.

Property NameDescription
api.autodiscoveryIDRequired if using API Manager to secure this API
anypoint-mq.server-urlAnypoint MQ Server for the targeted region
anypoint-mq.customer-queue-nameAnypoint MQ queue for Customer updates
anypoint-mq.account-queue-nameAnypoint MQ queue for Account updates
anypoint-mq.transaction-queue-nameAnypoint MQ queue for Transaction updates
anypoint-mq.card-queue-nameAnypoint MQ queue for Card updates
anypoint-mq.client-idAnypoint MQ client-id
anypoint-mq.client-secretAnypoint MQ client-secret
sys.corebanking.accounts.hostHostname for CoreBanking-Accounts SYS API
sys.corebanking.accounts.portPort for CoreBanking-Accounts SYS API
sys.corebanking.accounts.basepathBasepath for CoreBanking-Accounts SYS API
sys.creditcard.hostHostname for CreditCard SYS API
sys.creditcard.portPort for CreditCard SYS API
sys.creditcard.basepathBasepath for CreditCard SYS API
sys.global-party.hostHostname for Accelerator Global Party System API
sys.global-party.portPort for Accelerator Global Party System API
sys.global-party.basepathBasepath for Accelerator Global Party System API
sys.global-financial-accounts.hostHostname for Accelerator Global Financial Account System API
sys.global-financial-accounts.portPort for Accelerator Global Financial Account System API
sys.global-financial-accounts.basepathBasepath for Accelerator Global Financial Account System API
sys.salesforce-financial.hostHostname for Salesforce-Financial SYS API
sys.salesforce-financial.portPort for Salesforce-Financial SYS API
sys.salesforce-financial.basepathBasepath for Salesforce-Financial SYS API

Testing

Use Advanced Rest Client or Postman to send a request over HTTPS. The template includes a Postman collection in the src/test/resources folder. Update the collection variable(s) after successful import.

Implementation notes

  1. Sync of Financial Cards to Core Banking System using Jack Henry SilverLake as the provider is not supported.
  2. Sync of Financial Accounts with secondary owners to Core Banking System using Jack Henry SilverLake as the provider is not supported.
  3. Sync of Financial Accounts with Account Type BlockchainAccount, GeneralLedgerAccount, and CreditCardAccount to Core Banking System using Jack Henry SilverLake as the provider is not supported.

Additional resources


Reviews

TypeTemplate
OrganizationMulesoft
Published by
MuleSoft Organization
Published onDec 13, 2023
Asset overview

Asset versions for 2.0.x

Asset versions
VersionActions
2.0.4