FINS Customer Leads Process API - 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
This integration template implements the FINS Customer Leads Process API specification.
This Process API is responsible for processing Leads and Opportunities. It creates a Lead in Salesforce FSC Wealth by integrating with the FINS Salesforce Customers System API. On success, a notification is posted on the Slack channel fa-prospects-dev
(configurable) using the Accelerator Slack System API.
When a lead is converted to an Opportunity in the Salesforce FSC Wealth system, an opportunity update message is processed by this API. The Opportunity is sent for a KYC (Know Your Customer) check, which is currently mocked and after the checks are successful the Wealth Documents are sent to the customer's email address using the FINS Docusign System API for signatures. Once the signatures are received (via a wealth document update notification), the prcoess API receives messages from DocuSign to update the opportunity and a message is sent the Slack channel fa-prospects-dev
.
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:
- Anypoint MQ Destinations
- Slack Channel Access
- FINS Salesforce Customers System API (supports multiple deployments for separate FSC instances)
- FINS Docusign System API
- Accelerator Slack 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.
Anypoint MQ destinations
The following Anypoint MQ destinations must be created and accessible for this API:
- fins-lead-update-queue
- fins-lead-update-dl-queue
- fins-opportunity-update-queue
- fins-opportunity-update-dl-queue
- fins-wealth-document-update-queue
- fins-wealth-document-update-dl-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.
Slack Channel Access
Verify if the Accelerator Slack System API has access to Slack Channel to fa-prospects-dev
as the updates will be sent the channel and this process API uses the Accelerator Slack System API to send Slack messages.
API dependencies
The following table lists all endpoints used by this API.
API name | Endpoint | Action |
---|---|---|
FINS Salesforce Customers System API | get:/leads | Search for an existing lead |
FINS Salesforce Customers System API | post:/leads | Create a new lead |
FINS Salesforce Customers System API | get:/opportunities | Search for an existing opportunity |
FINS Salesforce Customers System API | patch:/opportunities/{opportunityId} | Update an existing opportunity |
FINS Docusign System API | post:/envelopes | Create a new envelope in DocuSign |
FINS Docusign System API | get:/envelopes/{envelopeId} | Retrieve an existing envelope from DocuSign |
Accelerator Slack System API | post:/messages | Create a new message to post to slack |
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. In particular, make sure the common properties for your environment have been provided in the CloudHub-DEV
profile (e.g., Anypoint Platform client ID and secret).
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 URL where the message Exchange, Topics, queues have been created |
anypoint-mq.client-id | Anypoint MQ Client Id to access messages from MQ |
anypoint-mq.client-secret | Anypoint MQ Client Secret to access messages from MQ |
salesforce-fsc-wealth-sys.host | HostName of FINS Salesforce Customers System API that is pointing to FSC Wealth |
salesforce-fsc-wealth-sys.port | Port of FINS Salesforce Customers System API that is pointing to FSC Wealth |
salesforce-fsc-wealth-sys.base-path | Basepath of FINS Salesforce Customers System API that is pointing to FSC Wealth |
slack-sys.host | HostName of Accelerator Slack System API |
slack-sys.port | Port of Accelerator Slack System API |
slack-sys.base-path | Base Path of Accelerator Slack System API |
docusign-sys.host | HostName of DocuSign System API |
docusign-sys.port | Port of DocuSign System API |
docusign-sys.base-path | Base Path of DocuSign System API |
idmerit-sys.host | HostName of IDMerit System API |
idmerit-sys.port | Port of IDMerit System API |
idmerit-sys.base-path | Base Path of IDMerit System API |
fa-prospects-slack-channel-name | Slack Channel to send the Lead, Opportunity notifications |
fsc-wealth-org-host-name | Hostname of the Salesforce FSC Wealth Org. This is used to create a link to Lead in Salesforce FSC Wealth Org from the Slack notification message |
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.
Additional resources
- The Data mappings tab describes how the request and response data structures are mapped between the API interfaces.
- Refer to the Accelerators documentation home for more information about the MuleSoft Accelerators.