
Creating transformation rules involves uploading a sample of the file that will be transformed and then defining the rules according to which the data will be modified. Such transformation rules can be reused in workflows by means of the [Data Transformation node](/docs/automation/operation/data-transformation-node). This way you may create workflows that retrieve data from external sources, modify them, and process them further. 

<figure>
<img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/docs/automation/_gfx/unnamed-transformation.png" alt="A blank data transformation dashboard" class="full">
<figcaption>A blank data transformation dashboard</figcaption>
</figure>

1. Go to <img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/icons/automation-hub-icon.svg" alt="Automation Hub icon" class="icon" > **Automation Hub > Transformations > Create transformation**. 
2. Enter the name of the transformation.

## Select a goal
---
Before you proceed with selecting sample data and defining transformation rules, optionally you can [select a goal](/docs/automation/data-transformation-and-imports/creating-data-transformation#select-a-goal) to help you structure the data. Your goal may be to an import of transactions, events, or profiles into Synerise (called **standard goals**). When you select one of the standard goals, you will see a list of columns with their names which are required as the output of the selected transformation. The system will automatically check which columns you included and inform you if some are missing.

If you want to create a transformation diagram without a specific goal and you know the structure of the output data, skip this step.

1. On the dashboard, on the upper right corner, click **Add goal**.
2. On the left pane, select a goal:
    - **Import profiles**
    - **Import transactions**
    - **Import vouchers**
    - **Import events**
    - **Import promotions**
3. On the right pane, expand the list of required columns the output data must contain.  
3. Click **Apply**.  

## Create a rule diagram
---
1. Upload a file with the sample data.  
    We recommend selecting a file that contains a sample of data you use.   
    
   <div class="admonition admonition-tip"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z" /></svg></div><div class="admonition-body"><div class="admonition-content">

   You can read more about the configuration of [Data Input here](/docs/automation/data-transformation-and-imports/transformations-and-data-operators/data-input).

   </div></div></div>

5. Add subsequent nodes by clicking the right mouse button. The full documentation on the nodes available for data transformation is available [here](/docs/automation/data-transformation-and-imports/transformations-and-data-operators).
6. As the final node, add [Data Output](/docs/automation/data-transformation-and-imports/transformations-and-data-operators/data-output) in which you will see the final result of file modifications.  
7. Connect the nodes with each other.  
12. Saving the transformation:
    - If you want to save it as a draft, click **Save**.
    - If you want to save it and make it available in Automations, click **Save and publish**.  
    **Example result**:  
    <figure>
    <img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/docs/automation/_gfx/example-transformation.png" alt="An example transformation" class="full">
    <figcaption>An example transformation </figcaption>
    </figure>  

## What's next
---
You can add a [Data Transformation node](/docs/automation/operation/data-transformation-node) with this transformation while preparing the [workflow](/docs/automation/actions/synerise-integrations#example-with-transformation) that includes transforming the source file.
    <figure>
    <img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/docs/automation/_gfx/reusing-transformation.png" alt="Selection of transformations in Data Transformation node" class="full">
    <figcaption>Selection of transformations in Data Transformation node</figcaption>
    </figure> 


