# Transform

The **Transform** tool converts the payload sent from the previous step into a form that the next step expects. Of the three different types of Transforms, the Transform Mapping is the most common. If you need fine-tuned logic, you can customize the script for every Transform.

## Transform Mapping

The Transform Mapping is by far the most common type of transform. The **Key** column represents the payload key that the next step will receive. The **Value** column represents the the value that the key will have. The value can be text (like `VIP` or `20.99`), or a [variable](https://docs.getmesa.com/workflow-builder/fields/variables) that will be replaced by the corresponding value from the payload during execution.

When you click on the [Variables](https://docs.getmesa.com/workflow-builder/fields/variables) icon \[<>] next to the value, a menu will appear with suggested variables (e.g. [Loop variables](https://github.com/shoppad/mesa-docs-gitbook/blob/master/tools/broken-reference/README.md)) based on the previous and next steps in the workflow. [It supports liquid-style variables](https://docs.getmesa.com/workflow-builder/fields/liquid-templating) like `{{source.order_name}}`

In the example below, the Transform Mapping maps order data to the columns expected by the Google Sheets Write Sheet step.

<figure><img src="https://3425906282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1H6u1HQc3Iew7ATmmiCi%2Fuploads%2FKt5fegh20Icws2VFIq9b%2FCreate%20Automations%20in%20Shoppad%20Platform%20-%20Step%202%20(1).png?alt=media&#x26;token=7cfbe52c-0c2d-49d4-a43f-17bbad61ae17" alt=""><figcaption></figcaption></figure>

## Transform Editor

The Editor Transform lets you create a JSON, HTML, or text payload. It supports liquid-style variables like `{{source.order_name}}`

<figure><img src="https://3425906282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1H6u1HQc3Iew7ATmmiCi%2Fuploads%2FNXwymekGs9urKY6LgZOr%2FDW-transform-transform-editor.png?alt=media&#x26;token=c9091c72-00a6-47a1-9778-65f8e1f04d84" alt=""><figcaption></figcaption></figure>

## Transform Script

The Script Transform allows fine-tuned logic in a JavaScript script. Enter a human-readable description of what the script is doing, and then click **Edit Code** to start writing your JavaScript.

Read our technical documentation for more details about writing scripts: [Scripts](https://docs.getmesa.com/for-developers/admin-api#scripts) and [Script Specification](https://docs.getmesa.com/tools/custom-code/script-specification).

<figure><img src="https://3425906282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F1H6u1HQc3Iew7ATmmiCi%2Fuploads%2FhfTUUVEZcz7xJmOI4oj0%2FDW-transform-transform-script.png?alt=media&#x26;token=a1d5896d-482a-4a16-aa39-dcf2bb06be41" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.getmesa.com/tools/transform.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
