> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://fyno.io/docs/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://fyno.io/docs/_mcp/server.

# Create and Configure SMS Template

> Create and configure SMS templates by defining template details, DLT settings, message content, encoding preferences, and SMS credit usage.

## Navigation

Go to → **Templates → External → SMS → Create**
![](/docs/_fern-img/b9fc1b211b350a9a88c3ff3509b5fa44502231092fe1c1de786a027443ef53dd.webp)

## Configure Template Content

### Basic Details

| Field               | Description                                                                                            |
| ------------------- | ------------------------------------------------------------------------------------------------------ |
| **Template Name**   | Unique name for internal identification.                                                               |
| **DLT Integration** | DLT account where the template will be registered.                                                     |
| **Category**        | Defines the SMS use case (e.g., service, promotional, transactional) as specified on the DLT platform. |
| **Template Type**   | The classification of the template as defined by the DLT provider.                                     |

### Template Type Selection

Select one of four template types before configuring content. Each option shows inline guidance in the dialog:

| Type             | Description shown in UI                                                                           |
| ---------------- | ------------------------------------------------------------------------------------------------- |
| Transactional    | Can only be used by Banks to send OTPs and alerts.                                                |
| Promotional      | Similar to Service Explicit, except it can be sent between 10 PM and 9 AM.                        |
| Service Implicit | All kinds of purely transactional SMS content like OTPs, order placement, order tracking, etc.    |
| Service Explicit | All kinds of promotional content should be registered here, like discounts, offers, new launches. |

> **NOTE**: For detailed use cases and DLT-compliant message formats for each type, see [Template Types](../template-type).

Select a Template Type, then select **Create Template** to open the template editor. The editor is split into two panels: the configuration form on the left, and a live SMS preview on the right. This layout and the fields below are shared across all four template types.

### Header

Enter the sender header for the message. This must match one of the DLT-registered headers already configured in your DLT integration (for example, `FYNOIO`). The field shows a live character counter.

### SMS Content

Enter the message body. Use **+ Add Variable** to insert a placeholder rather than typing it manually. Variables appear as numbered placeholders in the order added — `{{1}}`, `{{2}}`, `{{3}}`, and so on.

As you type, a stats panel next to the content box updates in real time:

| Stat            | What it shows                                                                      |
| --------------- | ---------------------------------------------------------------------------------- |
| Encoding        | The encoding currently applied to the message (e.g., GSM-7).                       |
| 1 Credit equals | The number of characters that make up a single SMS credit at the current encoding. |
| Credits Used    | Estimated number of SMS credits the message will consume.                          |
| Characters Used | Total character count of the message as composed.                                  |

If the content exceeds 1 credit, a banner appears with a **Reduce Credits** action. See [Reduce Credits with Fyno AI](#reduce-credits-with-fyno-ai).

### Reduce Credits with Fyno AI

If the message exceeds 1 credit, a banner appears below the SMS Content box. Select **Reduce Credits** in the banner to reduce the credits using Fyno AI.
![](/docs/_fern-img/36e2ed1dc0fad623f6fef8ddc64d7a2960b896f519ff55585fb85f307ac57b6e.webp)

To reduce credits:

1. Select **Reduce Credits**.

2. If the message uses more than 2 credits, choose a target in **Reduce to \[n] credit**, then select **Generate Content**.

   ![](/docs/_fern-img/f7730b5a4c31e7b49862d8f95add65e491032db2e46803a3ebf2100987f19589.webp)

3. Fyno AI rephrases the content in three steps: it reads the content, keeps every variable you added, and trims the length without changing the meaning. Select **Cancel** to stop at any point.

4. Review the suggested content, then select one of the following:

   ![](/docs/_fern-img/9792c80344a8ef652a7e10a68d5fbeb77dd804267b18d9d8e38e995776593f6e.webp)

   * **Use This Content** to replace the text in the SMS Content box.
   * **Re-Generate Content** to try again. You can describe what to change and, optionally, select feedback on what went wrong with the previous output to help us improve our AI features. Then select **Generate**.

If Fyno AI can't reduce the credit count, it shows **"Oops! That didn't go as planned."** Select **Try Again** to retry with different guidance, or **View previous Content** to keep your original message.

> **NOTE**: Rephrased content is new content for DLT. Submit the template for approval again before using it.

### Sample for Body Content

Below the SMS Content box, a Sample for Body Content panel lists one input per variable used in the message, so the DLT provider can review the template with representative values.

* Do not enter real customer data — sample values only.
* Each input is typed to match the kind of value the variable will hold, shown as an icon inside the field.
* All sample values are required. An empty field is outlined in red with "Sample value is required" until filled in.

| Icon | Type    | Example                      |
| ---- | ------- | ---------------------------- |
| Tt   | Text    | Order ID, name, date string  |
| #    | Numeric | Amount, quantity             |
| 🔗   | URL     | Tracking link, callback link |

> **NOTE**: Templates with no variables (fully static content, as in some Service Implicit messages) don't show this panel.

## SMS Preview

The preview panel shows how the SMS will appear on a mobile device, using the Header as the sender name. You can:

* Validate formatting
* Check variable placement
* Review message length

The system automatically calculates:

* Character count
* Number of SMS credits

## Encoding and Credits

### GSM-7 Encoding

* **1 credit = 160 characters**

| No. of Messages | Text Characters | Unicode Characters |
| --------------- | --------------- | ------------------ |
| 1 SMS           | 160             | 70                 |
| 2 SMS           | 306             | 134                |
| 3 SMS           | 459             | 201                |
| 4 SMS           | 612             | 268                |
| 5 SMS           | 765             | —                  |

## Unicode Encoding

Enable this checkbox to send a unicode message if the content or placeholder values may contain unicode or non-English characters.

### Enable Unicode Message When:

* Using regional languages.
* Variables may contain Unicode text.

> **NOTE**: If the message isn't marked as unicode and either the content or placeholder values contain unicode characters, it might not be delivered correctly. SMS providers may also charge more for unicode messages.

## Saving and Submitting

At the top of the editor:

* **Save As Draft** — stores the template without sending it to the DLT provider.
* **Send To Provider** — submits the template for DLT approval.

The page header shows who created the template and when (e.g., "Created – 13d ago"), the current status (e.g., "Sent to provider for approval"), and a history icon to view prior versions.