Diagnostic and corrective process

This suite of processes is designed to analyze and identify any data de-synchronization between Mambu and ComplyAdvantage for clients and groups in Mambu and automatically fix any identified issues.

Diagnosis process

There are two available processes that use different input parameters:

The 1. RUN Diagnose process [by Date] process has two input parameters: start_date and end_date (optional). The process analyzes all clients and groups that have been modified between these dates, or after the start_date, if the end_date parameter does not have a value. The analysis determines if the data from ComplyAdvantage and Mambu is not properly synchronized for any given client or group that meets the input criteria.

The 1. RUN Diagnose process [by list of clients/groups] process also has two input parameters: clientIdsList and groupIdsList(at least one of these lists needs to be populated). The process goes through every client and/or groups from the lists and analyze the data integrity, in the same way as the 1. RUN Diagnose process [by Date] process.

While running either one of these processes, if an entity (client or group) is found to have conflicting data, it is included in the final report, which is stored in the 2. Diagnostic Report and Sync Reported Data [main process] state diagram. This report can be found in the New Diagnostic Report state and has the following format:

  • An DiagnosticReportData array, which contains information about the entities that were found to have issues. It includes entity type and Mambu ID, along with a list of actions required to fix the issue.
  • An EntitiesWithIssues array, which holds detailed information for each entity.

Please Note:
Due to the large number of API calls made for each entity during the diagnosis process, which stress the MPO environment, we recommend that you run this script outside working hours.

If there are more than 99 clients and groups being analyzed, the script splits them into batches and create a diagnostic report for each batch.

Please Be Aware:

Due to technical limitations, clients that have been manually blacklisted with a comment in Mambu are not detected by this script. Additionally, the script only identifies monitored and unmonitored searches from ComplyAdvantage, therefore suspended searches will not be detected.

Corrective process

The corrective process can only be triggered by modifying the tasks (diagnosis reports) from the New Diagnostic Report state in the 2. Diagnostic Report and Sync Reported Data [main process] state diagram and adding the "apply": true boolean flag.

How to add the boolean flag

The process begins by first running another diagnostic report to check if any issues have arisen or have been fixed from when the initial diagnostic was run till the corrective process was triggered. Common issues between these two reports are fixed, while the newly discovered issues are logged in a new diagnostic report which can be found in the New Diagnostic Report state.

If all of the issues are fixed, a final report is logged in the Completed state and contains information about the entities that were fixed. If not all fixes were successful, a report is logged in the Partial completed state and contains information about the entities that were fixed and entities that still have issues. Another report is logged containing only information about the entities that were not fixed. You have the option to add an apply flag and attempt to fix the remaining issues.