# New & enhanced nodes

## New Switch Case node

The [Switch Case](https://clickatell.gitbook.io/flow/action-nodes/action-nodes-switch-case) node is an action node (i.e., not user-facing) that routes a user to a specific step based on a flow variable's value. It is similar to a [Menu node](https://clickatell.gitbook.io/flow/user-facing-nodes/branch-logic-split/menu-nodes-menu-with-options), but instead of relying on the end-user's input to decide which route to take, this node relies on the value of a certain flow variable.

{% hint style="info" %}
[Find out more](https://clickatell.gitbook.io/flow/action-nodes/action-nodes-switch-case) about the Switch Case node and how to set it up.
{% endhint %}

<figure><img src="https://2380245535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl8ao2e7ogQyZBti1BuxA%2Fuploads%2FvMp0Xr6lPkWVW79gIMIc%2Fimage.png?alt=media&#x26;token=9880874c-4c7b-4fb0-9841-25e1b506b822" alt="" width="236"><figcaption><p>A new action node - the Switch Case node.</p></figcaption></figure>

<figure><img src="https://2380245535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl8ao2e7ogQyZBti1BuxA%2Fuploads%2Fg7LD8CN9GWfXFqhOer4N%2Fimage.png?alt=media&#x26;token=57673fcc-9877-4f7e-8633-b8e6c69b64f0" alt=""><figcaption><p>Setup of the Switch Case node.</p></figcaption></figure>

## Enhanced Chat 2 Pay node

We've made several enhancements to the [Chat 2 Pay node](https://clickatell.gitbook.io/flow/user-facing-nodes/commerce/chat-2-pay).

Flow-builders now have the option to either let Chat Flow **generate an order number automatically** or they can **generate a custom order number** specific to your business based on an API call. Auto-generated order numbers are available as variables to be used in the workflow.

We've also included the ability for flow-builders to add any **additional data** to payment requests. This gets passed to the payment provider and can be used to match on their backend system (in case of incomplete transactions). These key:value pair fields support variables.

<figure><img src="https://2380245535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl8ao2e7ogQyZBti1BuxA%2Fuploads%2FYnU41gXbT874h8utRXDE%2Fimage.png?alt=media&#x26;token=fb00c216-5948-432c-989e-9a7d1a474294" alt=""><figcaption><p>Enhanced Chat 2 Pay node</p></figcaption></figure>

## Dynamic List pagination

{% hint style="info" %}
[Find out more](https://clickatell.gitbook.io/flow/user-facing-nodes/branch-logic-split/menu-nodes-dynamic-list) about how to set up pagination on this node.
{% endhint %}

Previously, when using the [Dynamic List node](https://clickatell.gitbook.io/flow/user-facing-nodes/branch-logic-split/menu-nodes-dynamic-list) to present an option list that exceeded 10 items to your end-users, it was automatically rendered as a text menu as shown below.&#x20;

<figure><img src="https://2380245535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl8ao2e7ogQyZBti1BuxA%2Fuploads%2FIIMmuOa5m3scc5u5Y3bD%2Fimage.png?alt=media&#x26;token=a2785ba0-989e-4273-ac61-c79cfef8794b" alt="" width="270"><figcaption><p>Example of an unpaginated Dynamic List in WhatsApp</p></figcaption></figure>

We now support the ability to paginate dynamic lists instead of reverting to a text menu. If enabled for the node (default), the list above will now render as shown below.

{% hint style="info" %}
Note that pagination, even if enabled, will only come into effect for lists of more than 10 items.
{% endhint %}

<figure><img src="https://2380245535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl8ao2e7ogQyZBti1BuxA%2Fuploads%2FyvGJcQ1Zx5dXjhC4rV4B%2Fimage.png?alt=media&#x26;token=897b5dee-f7f7-457e-902f-87b442b55a95" alt=""><figcaption><p>Example of a paginated Dynamic List node on WhatsApp</p></figcaption></figure>

<figure><img src="https://2380245535-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl8ao2e7ogQyZBti1BuxA%2Fuploads%2Fsdu6W1ZwcLqTwsiQKi1c%2Fimage.png?alt=media&#x26;token=952accf2-938e-4d0f-b6c9-1e246ffad815" alt=""><figcaption><p>Example of a paginated Dynamic List node on USSD. The SMS channel will have a similar experience.</p></figcaption></figure>
