> ## Documentation Index
> Fetch the complete documentation index at: https://agenticbanking.backbase.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Reference

> Configuration properties, operations, and error mapping for the Mambu connectors.

export const VendorApiVersionTag = ({versions, label = "Supports"}) => {
  useEffect(() => {
    if (!versions || versions.length === 0) {
      return undefined;
    }
    const findAndSegmentStart = (reference, target) => {
      let i = 0;
      while (i < reference.length && i < target.length && reference[i] === target[i]) {
        i += 1;
      }
      let start = i;
      while (start > 0 && (/[0-9.vR]/).test(target[start - 1])) {
        start -= 1;
      }
      return start;
    };
    const formatText = () => {
      const suffix = " operations";
      if (versions.length === 1) {
        return `${label} ${versions[0]}${suffix}`;
      }
      const [first, ...rest] = versions;
      const last = rest[rest.length - 1];
      const andStart = findAndSegmentStart(first, last);
      const lead = first.slice(0, andStart);
      if (versions.length === 2) {
        return `${label} ${first} and ${last.slice(andStart)}${suffix}`;
      }
      const stems = versions.map(version => version.slice(andStart));
      return `${label} ${lead}${stems.slice(0, -1).join(", ")}, and ${stems[stems.length - 1]}${suffix}`;
    };
    const text = formatText();
    const mountCallout = () => {
      const titleRow = document.querySelector("#page-title")?.parentElement;
      if (!titleRow) {
        return null;
      }
      let callout = titleRow.querySelector("[data-vendor-api-version-callout='true']");
      if (!callout) {
        callout = document.createElement("div");
        callout.dataset.vendorApiVersionCallout = "true";
        callout.className = "vendor-api-version-callout vendor-api-version-callout--in-title";
        titleRow.appendChild(callout);
      }
      callout.replaceChildren();
      const textEl = document.createElement("span");
      textEl.className = "vendor-api-version-text";
      textEl.textContent = text;
      callout.appendChild(textEl);
      return callout;
    };
    let callout = mountCallout();
    if (callout) {
      return () => {
        callout?.remove();
      };
    }
    const observer = new MutationObserver(() => {
      callout = mountCallout();
      if (callout) {
        observer.disconnect();
      }
    });
    observer.observe(document.body, {
      childList: true,
      subtree: true
    });
    return () => {
      observer.disconnect();
      callout?.remove();
    };
  }, [versions, label]);
  return null;
};

export const vendorApiVersions = ["Mambu API v2"];

<VendorApiVersionTag versions={vendorApiVersions} />

The Mambu integration includes several outbound (synchronous) runtime connectors that call the Mambu API v2. Configure each connector in its own `values.yaml` file. For setup steps, see [Get started](/connectors/core-banking/mambu/get-started).

| Connector                                | Property file                                  | Purpose                        |
| :--------------------------------------- | :--------------------------------------------- | :----------------------------- |
| `gc-mambu-deposit-connector`             | `deposit-v0.values.yaml`                       | Deposit account operations     |
| `gc-mambu-deposit-transaction-connector` | `deposit-transactions-v0.values.yaml`          | Deposit transaction operations |
| `gc-mambu-loan-connector`                | `loan-v0.values.yaml`                          | Loan account operations        |
| `gc-mambu-loan-transaction-connector`    | `loan-transactions-v0.values.yaml`             | Loan transaction operations    |
| `gc-mambu-payment-connector`             | `payment-v0.values.yaml`                       | Payment operations             |
| `gc-mambu-party-connector`               | `party-v0.values.yaml`, `party-v2.values.yaml` | Party management operations    |

## Configuration properties

### Values to obtain from Mambu

Obtain the following value from Mambu and set it in `values.yaml`. This value is environment-specific, so it has no default.

| Property        | Description                                    |
| :-------------- | :--------------------------------------------- |
| `mambu.baseUrl` | Target API endpoint for the Mambu environment. |

### Common properties

Set these properties in `values.yaml`. They apply across all Mambu connectors. Product ID mappings set here are inherited by the deposit and party connectors.

| Property                               | Description                                                    | Default                                 |
| :------------------------------------- | :------------------------------------------------------------- | :-------------------------------------- |
| `existingSecretName`                   | Reference to the SOPS secret that holds the Mambu credentials. | `mambu`                                 |
| `http.client.connect.timeout`          | HTTP connect timeout, in milliseconds.                         | `5000`                                  |
| `http.client.request.timeout`          | HTTP request timeout, in milliseconds.                         | `10000`                                 |
| `http.client.socket.timeout`           | HTTP socket timeout, in milliseconds.                          | `5000`                                  |
| `http.client.connection.max.per.route` | Maximum HTTP connections per route.                            | `100`                                   |
| `http.client.connection.max.total`     | Maximum total HTTP connections.                                | `200`                                   |
| `redelivery.backOffMultiplier`         | Backoff multiplier for redelivery attempts.                    | `2`                                     |
| `redelivery.delay`                     | Initial delay between redelivery attempts, in milliseconds.    | `200`                                   |
| `redelivery.maximumRetries`            | Maximum number of redelivery attempts.                         | `3`                                     |
| `retryFlag`                            | Enable automatic request retries on connection failure.        | `false`                                 |
| `errorTemplate`                        | Transformation template used to map core error responses.      | `transform-mambu-error-details-v2.json` |
| `thread.profile.core.pool.size`        | Core thread pool size.                                         | `20` (`10` for the deposit connector)   |
| `thread.profile.max.pool.size`         | Maximum thread pool size.                                      | `20`                                    |

The following product ID mapping patterns translate between Grand Central product types and Mambu product IDs.

| Pattern                               | Description                                                      |
| :------------------------------------ | :--------------------------------------------------------------- |
| `product.<KIND>.<TYPE>.<CURRENCY>.id` | Forward mapping: Grand Central product type to Mambu product ID. |
| `<MAMBU_PRODUCT_ID>`                  | Reverse mapping: Mambu product ID to Grand Central product type. |

<Warning>
  The product ID mapping values are environment-specific. Contact your Mambu administrator to obtain the full list of product IDs for your tenant.
</Warning>

### gc-mambu-party-connector and gc-mambu-deposit-connector

The party and deposit connectors hold basic configuration. They inherit the product ID mappings from the common `values.yaml`. No additional connector-specific properties are documented in [Get started](/connectors/core-banking/mambu/get-started).

### gc-mambu-deposit-transaction-connector

Set this property in `deposit-transactions-v0.values.yaml`, in addition to the common properties.

| Property             | Description                                              | Default |
| :------------------- | :------------------------------------------------------- | :------ |
| `isMockedDataNeeded` | Return mocked transaction data instead of calling Mambu. | `false` |

### gc-mambu-loan-connector

Set these properties in `loan-v0.values.yaml`, in addition to the common properties.

| Property                              | Description                                                      | Default |
| :------------------------------------ | :--------------------------------------------------------------- | :------ |
| `product.<KIND>.<TYPE>.<CURRENCY>.id` | Forward mapping: Grand Central product type to Mambu product ID. | N/A     |
| `<MAMBU_PRODUCT_ID>`                  | Reverse mapping: Mambu product ID to Grand Central product type. | N/A     |
| `timeZone`                            | Optional. Time zone applied to loan operations.                  | `CET`   |
| `<CoreErrorCode>`                     | Optional. Maps a Mambu error code to a Grand Central error code. | N/A     |

### gc-mambu-loan-transaction-connector

Set these properties in `loan-transactions-v0.values.yaml`, in addition to the common properties.

| Property             | Description                                                      | Default |
| :------------------- | :--------------------------------------------------------------- | :------ |
| `isMockedDataNeeded` | Return mocked transaction data instead of calling Mambu.         | `false` |
| `isLoanExistCheck`   | Verify that the loan exists before retrieving transactions.      | `true`  |
| `<CoreErrorCode>`    | Optional. Maps a Mambu error code to a Grand Central error code. | N/A     |

### gc-mambu-payment-connector

Set this property in `payment-v0.values.yaml`. The payment connector uses the common properties and defines the following connector-specific error-code overrides.

| Property          | Description                                                                                     | Default |
| :---------------- | :---------------------------------------------------------------------------------------------- | :------ |
| `<coreErrorCode>` | Maps a Mambu error code to a Grand Central status code, for example `428=GC401` or `401=GC409`. | N/A     |

## SOPS secrets

The connectors use Basic authentication with credentials stored in a SOPS secret, referenced by the `existingSecretName` property. Obtain the following credentials from Mambu. For details, see [Get started](/connectors/core-banking/mambu/get-started).

| Credential       | Description                        |
| :--------------- | :--------------------------------- |
| `mambu-user-id`  | Username for Basic authentication. |
| `mambu-password` | Password for Basic authentication. |

## Supported operations

The Mambu connectors expose the Grand Central Unified API. For the operation-to-endpoint tables per domain (deposit, deposit transactions, loan, loan transactions, payment, party), see [Overview](/connectors/core-banking/mambu/overview). For the full contract, see the [unified API specifications](/connectors/reference/unified-api-specifications).

## Events

These connectors are synchronous and do not publish or consume events.

## Error mapping

The connector maps Mambu error codes to Grand Central status codes. For the full list, see [Error codes](/connectors/reference/error-codes). You can configure connector-specific overrides as core-to-Grand Central code pairs in a connector's `values.yaml`; the payment connector ships with overrides for several Mambu error codes (see [gc-mambu-payment-connector](#gc-mambu-payment-connector)). The loan and loan transaction connectors also accept overrides through the `<CoreErrorCode>` property.

## Dependencies

* Mambu API v2 (outbound), reachable at `mambu.baseUrl`.
* The shared `mambu-connector-sdk` library.
