Prerequisites

General Prerequisites

MPO subscription

The Mambu ComplyAdvantage AML for payment source Mambu Payment Gateway connector runs in Mambu Process Orchestrator (MPO). In order to use it, you must have an active MPO subscription.

The connector

The connector built by Mambu in MPO implements six main business processes:

  • Incoming Single Euro Payments Area (SEPA) Credit Transfer
  • Outgoing SEPA Credit Transfer
  • Incoming SEPA Direct Debit
  • Outgoing SEPA Direct Debit
  • Outgoing ISO Credit Transfer
  • Incoming ISO Credit Transfer

ComplyAdvantage subscription

You must have a ComplyAdvantage subscription in order to have the transactions analyzed from an Anti-Money Laundering (AML) perspective.

Setup Prerequisites

Environments Configurations

ComplyAdvantage

  1. Create a ComplyAdvantage account for your organization.
  2. Configure rules and actions (hard stop, soft stop).
  3. Configure the source format (payment details and fields).

Mambu

  1. Log in to the Mambu UI to create a user for MPO and and assign the necessary permissions or a role. Copy the username and password.
  2. Your client should be in an valid state to open deposit accounts.
  3. The deposit account should be in a valid state to post a deposit or withdrawal transaction.
  4. An IBAN should be mapped to the deposit account
  5. The deposit account must have sufficient funds for a withdrawal transaction.
  6. The Payment capability must be enabled.
  7. You must create an API key from an API consumer that has appropriate permissions to access the Payments capability. If you use API key authentication, you need to assign additional permissions to the API consumer. The required permissions are:
    • VIEW_SAVINGS_ACCOUNT_DETAILS
    • VIEW_SAVINGS_PRODUCT_DETAILS
    • VIEW_CLIENT_DETAILS
    • VIEW_GROUP_DETAILS
    • CREATE_TASK
    • VIEW_CUSTOM_FIELD
    • VIEW_BRANCH_DETAILS
    • MANAGE_PAYMENTS
    • VIEW_API_CONSUMERS_AND_KEYS
  8. You must have access to the Mambu Payment Gateway.

Please Note:

If your data model requires additional fields, create new custom fields for the client or group entities and grant access rights based on user roles and permissions.

Customisation Configuration

In order to offer more flexibility regarding the fields that each customer wants to send to ComplyAdvantage define a customisation configuration containing the fields to be sent to ComplyAdvantage for a specific entity: customer (client or group), transaction (incoming or outgoing SEPA Credit Transfer, incoming or outgoing SEPA Direct Debit, incoming or outgoing ISO Credit Transfer), and deposit account.

Define the following arrays from the customisationConfig:

  • clientUsedFields
  • groupUsedFields
  • incomingSCTTransactionUsedFields
  • outgoingSCTTransactionUsedFields
  • incomingSDDTransactionUsedFields
  • outgoingSDDTransactionUsedFields
  • incomingISOCTTransactionUsedFields
  • outgoingISOCTTransactionUsedFields
  • depositAccountUsedFields

If additional data from external systems needs to be monitored in ComplyAdvantage, the array externalDataUsedFields must be defined along with isAMLwithExternalData = true from Mambu configuration.

If there are no fields to be mapped for any of these entities, then they should be set as empty arrays, for example: "depositAccountUsedFields": [].

Please Note:

The values for the fields tx_direction and tx_type must remain Inbound (or Outbound), respectively payment_SCT(or payment_SDD, or payment_ISOCT).

For each field to be sent to ComplyAdvantage that is inside a customisationConfig field array, there is an object containing at least two values:

  • target(field ID sent to ComplyAdvantage), and
  • path (field ID from source system where the value is taken from). The path can have the following format:
    • CustomFieldSet_Id.CustomField_Id, in cases where the value is taken from Mambu custom fields, for example: "path": "_Master_Data_Clients.professionType".
    • _Object_._NestedObject_.field, in cases where the value is taken from another entity, like transaction, which has nested objects. Multiple levels of nesting can be used, for example: "path": "grpHdr.msgId".
    • _Array_[index].object.field, in case where the value is taken from an array, for example: "path": "cdtTrfTxInf[0].pmtId.txId".
    • Standalone fields, such as: "path":"customer_date_of_birth".

Optional values that can be present in a customisationConfig field are:

  • defaultValue: If no value is found in the given path the value of the defaultValue field will be sent to ComplyAdvantage. This value should match the format configured for the field in the ComplyAdvantage environment, otherwise it will not work.
  • alternatePaths: An array containing multiple paths that are used if no value is found in the given path. The values in this array should be in order of their priority.

Please Note:

  • Each source format from ComplyAdvantage has a unique structure and specific fields that must be mapped in order to be able to submit a transaction in ComplyAdvantage using the customisationConfig defined during the setup.
  • If a field needs to have the same value for all transactions sent to ComplyAdvantage, inside the customisationConfig use value instead of path for that field.
  • In ComplyAdvantage source scheme there should be dedicated fields for bic(customer or counter-party), iban (customer or counter-party), depositAccountID, or at least there should be other empty fields in the scheme where these values can be mapped.
  • If a field has all the values present in the customisationConfig (both required and optional), the priority order for the fields is: first path, then alternatePaths, and finally defaultValue.