Cogniviti BridgeMaybank
arrow_backBack to Docs

Transformations Guide

Transformations let you modify a source field value before it reaches the target field. They are applied inside the Mapping Studio — click the transform icon (⚡) on any mapping row to configure one.

tips_and_updates

Quick tip: A mapping can only have one transformation at a time. If you need to chain transforms (e.g. trim then uppercase), consider using a Formula or Conditional expression.

info

What is user-friendly today: Uppercase, Lowercase, Trim, Constant, Date Format, Lookup, and Concatenate are now guided in the UI.

What still feels technical today: Formula, Conditional, Filter, and Custom still require expressions.

Advanced fallback: Lookup still offers JSON mode for users who prefer pasting an existing lookup object.

text_fields

Uppercase

When to use

Target system requires a field in ALL CAPS (e.g. status codes, country codes).

How to apply in Mapping Studio

  1. In Mapping Studio, select the source field and drag it to the target field.
  2. Click the transform icon (⚡) on the mapping row.
  3. Choose "Uppercase" from the transform dropdown.
  4. No further configuration required — save the mapping.

Example

Input: approved
Output: APPROVED

Try It Yourself

Source field

invoice.status (e.g. "approved")

arrow_forward

Target field

sap.header.status

check_circleSelect Uppercase — no further input needed.

Select Uppercase — no further input needed. "approved" becomes "APPROVED" automatically.

infoWorks on string values only. Numbers and nulls pass through unchanged.
text_fields

Lowercase

When to use

Target system expects values in lowercase (e.g. email addresses, slugs, enum keys).

How to apply in Mapping Studio

  1. Select the source field, drag to the target field.
  2. Click the transform icon (⚡) on the mapping row.
  3. Choose "Lowercase" from the dropdown.
  4. Save.

Example

Input: APPROVED
Output: approved

Try It Yourself

Source field

customer.email (e.g. "JOHN@EXAMPLE.COM")

arrow_forward

Target field

crm.contact.email

check_circleSelect Lowercase — no further input needed.

Select Lowercase — no further input needed. Useful for emails, usernames, and slugs.

infoWorks on string values only.
content_cut

Trim

When to use

Source data has leading or trailing whitespace that should not be forwarded to the target.

How to apply in Mapping Studio

  1. Map the source field to the target field.
  2. Click the transform icon (⚡).
  3. Select "Trim" — no config needed.
  4. Save.

Example

Input: AbC-100
Output: AbC-100

Try It Yourself

Source field

supplier.code (e.g. " SUP-001 ")

arrow_forward

Target field

erp.vendor.code

check_circleSelect Trim — no further input needed.

Select Trim — no further input needed. Leading and trailing spaces are removed.

infoOnly removes outer whitespace. Internal spaces are preserved.
pin

Constant

When to use

A target field must always receive the same fixed value regardless of source data (e.g. integration type, channel code).

How to apply in Mapping Studio

  1. In Mapping Studio, map any source field to the target field.
  2. Click the transform icon (⚡).
  3. Choose "Constant" and enter the fixed value in the "Constant value" input.
  4. Save.

Example

Input: (any)
Output: STATIC

Try It Yourself

Source field

(any field — its value will be ignored)

arrow_forward

Target field

sap.header.sourceSystem

Constant value

COUPA

← replace COUPA with the fixed value you always want the target field to receive

Every record will write COUPA to the target field regardless of the source.

infoThe current UI still requires a source field to create the mapping, but that source value is ignored once Constant is applied.
table_view

Lookup

When to use

Source values must be translated to target-specific codes or labels (e.g. US → USA, EUR → Euro).

How to apply in Mapping Studio

  1. Map the source field (the key) to the target field.
  2. Click the transform icon (⚡) and choose "Lookup".
  3. In the lookup builder, add one row for each source value and target value pair.
  4. Save.

Example

Input: US
Config: { "US": "USA", "IN": "IND", "GB": "GBR" }
Output: USA

Try It Yourself

Source field

invoice.currency (e.g. "USD")

arrow_forward

Target field

sap.header.currencyCode

Lookup rows to add

USD  →  US_DOLLAR
EUR  →  EURO
GBP  →  POUND

← add one row per business value in the lookup builder. Advanced users can still switch to JSON mode if needed.

Most users should use the row builder instead of JSON.

infoIf the source value is not in the table, it passes through unchanged. Advanced users can still switch to JSON mode if they want to paste a lookup object.
merge_type

Concat

When to use

Multiple source fields must be joined into a single target field (e.g. first name + last name → full name).

How to apply in Mapping Studio

  1. Create a mapping row from the first source field to the target field.
  2. Open the transform icon (⚡) and choose "Concatenate".
  3. Use "Add another source field" to select the extra fields you want to combine.
  4. Arrange the fields in the required order and set the separator (for example a single space for full names).
  5. Save and verify output in Preview.

Example

Input: supplier.firstName = "Jane", supplier.lastName = "Doe"
Config: separator: " "
Output: Jane Doe

Try It Yourself

Source field

supplier.firstName, then supplier.lastName

arrow_forward

Target field

erp.vendor.contactName

Current UI steps

  1. Map supplier.firstName to erp.vendor.contactName.
  2. Open the row and choose Concatenate.
  3. Use Add another source field to add supplier.lastName.
  4. Set Separator to a single space.

Separator

 

← a single space joins first and last name as "Jane Doe". Use comma-space for "Jane, Doe".

You can add, remove, and reorder source fields directly inside the Concatenate editor.

infoFields are joined in the order shown in the transform editor. You can reorder or remove source fields before saving.
code

Custom

When to use

You need combined logic in one expression (for example normalize + map + condition in a single transform).

How to apply in Mapping Studio

  1. Map source field to target field as usual.
  2. Open transform editor and choose "Custom".
  3. Write a JS-style expression using value and record variables.
  4. Save and test with Preview to confirm expected output.

Example

Input: value = " approved "
Config: (value ?? "").toString().trim().toUpperCase()
Output: APPROVED

Try It Yourself

Source field

invoice.status (e.g. " approved ")

arrow_forward

Target field

sap.header.processingFlag

Expression

(value ?? "").toString().trim().toUpperCase() === "APPROVED" ? "READY" : "HOLD"

← this example trims whitespace, uppercases, then checks if the result is APPROVED. Replace field references and output values as needed. Use value for the source field value.

Use Custom when no single built-in transform covers your case — for example trim + uppercase + condition in one step.

infoCustom is best for advanced one-row logic when a single built-in transform is not enough.
calendar_month

Date Format

When to use

Source and target systems use different date formats (e.g. ISO date → SAP compact format).

How to apply in Mapping Studio

  1. Map the date source field to the target field.
  2. Click the transform icon (⚡) and choose "Date Format".
  3. Set "From format" to the format of the source date (e.g. YYYY-MM-DD).
  4. Set "To format" to the required target format (e.g. YYYYMMDD).
  5. Save.

Example

Input: 2026-04-22
Config: fromFormat: YYYY-MM-DD → toFormat: YYYYMMDD
Output: 20260422

Try It Yourself

Source field

invoice.invoiceDate (e.g. "2026-04-22")

arrow_forward

Target field

sap.header.documentDate

From format → To format

YYYY-MM-DD  →  YYYYMMDD

← left is the date format coming from the source, right is the format the target expects. Common tokens: YYYY = year, MM = month, DD = day.

If your source date looks like 22/04/2026 use DD/MM/YYYY as From format instead.

infoUses moment-compatible format tokens. Common tokens: YYYY (year), MM (month), DD (day), HH (hour), mm (minute).
filter_alt

Filter

When to use

Source is an array and you only want values from matching elements (e.g. only invoice lines of type ITEM).

How to apply in Mapping Studio

  1. Map the array source path (e.g. lines.amount) to the target field.
  2. Click the transform icon (⚡) and choose "Filter".
  3. Enter the filter condition (e.g. type == 'ITEM').
  4. The target field receives an array of matched values.
  5. Save.

Example

Input: [{type:ITEM,amount:100},{type:FEE,amount:15},{type:ITEM,amount:200}]
Config: filter: type == 'ITEM'
Output: [100, 200]

Try It Yourself

Source field

invoice.lines.amount (array of line items)

arrow_forward

Target field

sap.items.amount

Filter condition

lineType == 'ITEM'

← replace lineType with the field name inside each array item you want to check, and 'ITEM' with the value to match. Only matching rows flow to the target.

The source field must be an array path. The condition is checked against each element — only matching elements are passed through.

infoFilter expressions use == for equality. Reference fields by their key name at the array element level (not the full path). The sourceField must point to an array-backed path.
functions

Formula

When to use

Target value is a calculated result from source data (e.g. total = amount * 2, tax = amount * rate).

How to apply in Mapping Studio

  1. Map the primary numeric source field to the target field.
  2. Click the transform icon (⚡) and choose "Formula".
  3. Enter the expression using value to refer to the source field value (e.g. value * 2).
  4. Save.

Example

Input: 1250
Config: expression: value * 2
Output: 2500

Try It Yourself

Source field

invoice.netAmount (e.g. 1000)

arrow_forward

Target field

sap.header.grossAmount

Expression

value * 1.18

← value refers to the source field above. Replace 1.18 with your own multiplier or formula. Supports +, -, *, /.

Use this for calculated fields like tax, totals, or unit conversions. For if/else logic use Conditional instead.

infoUse value to reference the mapped source field. Standard arithmetic operators (+, -, *, /) are supported.
device_hub

Conditional

When to use

The target value depends on whether the source meets a condition (if/else logic, e.g. status mapping, active/inactive toggle).

How to apply in Mapping Studio

  1. Map the source field to the target field.
  2. Click the transform icon (⚡) and choose "Conditional".
  3. Enter a ternary expression using value (e.g. value == 'approved' ? 'APPROVED' : 'OTHER').
  4. Save.

Example

Input: approved
Config: expression: value == 'approved' ? 'APPROVED' : 'OTHER'
Output: APPROVED

Try It Yourself

Source field

invoice.status (e.g. "approved")

arrow_forward

Target field

sap.header.status

Expression

value == 'approved' ? 'APPROVED' : 'PENDING_REVIEW'

← replace 'approved' with the value you're checking, 'APPROVED' with what to output when true, and 'PENDING_REVIEW' with what to output when false.

Format is always: condition ? output-if-true : output-if-false. Use == to compare text values.

infoUses ternary syntax: condition ? valueIfTrue : valueIfFalse. Use == for string comparison. Nest ternaries for multiple branches.