> For the complete documentation index, see [llms.txt](https://docs.hablla.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hablla.com/hablla-docs-es/flujos-de-automatizaciones/todos-los-componentes/transformacion-de-datos/formatear-telefono.md).

# Formatear Teléfono

### Visión General

El **Componente de Formateo de Teléfono** (identificado en el sistema por el identificador técnico `format_phone`) es un nodo utilitario enfocado en tratamiento y saneamiento de datos (*saneamiento de datos*). Su función principal es capturar cadenas de números telefónicos brutos o fragmentados recolectados a lo largo del flujo y unificarlas bajo las directrices de sintaxis y estandarización internacional. Asegura que el registro del contacto se grabe correctamente en la base de datos, evitando fallos de comunicación en envíos activos futuros.

### Parámetros de Configuración

La parametrización del bloque gestiona las cadenas de entrada y el mapeo de la variable de salida en el sistema:

* **DDI:** Campo de entrada de texto destinado a recibir el código de Marcación Directa Internacional del país del contacto (p. ej.: `55` para Brasil). Acepta valores estáticos o etiquetas dinámicas de variables del flujo.<br>
* **Teléfono:** Campo de entrada que recibe el cuerpo del número telefónico (incluyendo o no el DDD regional). Es el dato bruto que pasará por el proceso de limpieza y concatenación.<br>
* **Nueva Clave:** Campo de texto utilizado para definir el nombre del contenedor o variable local (el patrón visual mostrado es `formatedPhone`) que será generada por la plataforma para almacenar y exponer el número completamente tratado y unificado para el resto del flujo.<br>

### Constructor Visual

La interfaz del constructor adopta un modelo simple y lineal enfocado en la recopilación estructurada de inputs:

* **Formulario de Inputs Separados:** El constructor divide visualmente las propiedades de país (*DDI*) y línea (*Teléfono*), permitiendo al administrador estructurar reglas flexibles en flujos que atienden a diferentes nacionalidades de leads.<br>
* **Indexación Automatizada de Salida:** El campo *Nueva Clave* viene prellenado de forma nativa para agilizar el diseño del flujo. En el editor de automatizaciones, el bloque cuenta con conectores tradicionales de entrada y salida, procesando la cadena y liberando el contacto para la siguiente etapa en micromilisegundos.<br>

### Operadores Especiales

Las propiedades lógicas de este componente gestionan rutinas de concatenación, eliminación de caracteres especiales e inyección de payloads:

* **Limpieza Avanzada de Cadenas (Data Cleaning):** El motor interno del componente aplica expresiones regulares nativas para eliminar automáticamente cualquier carácter no numérico informado en los campos de entrada, eliminando espacios vacíos, paréntesis, puntos, guiones o símbolos de suma (`+`).<br>
* **Concatenación de Ámbito e Interpolación:** Los campos *DDI* y *Teléfono* aceptan la inserción de datos dinámicos en formato de llaves dobles `{{...}}`. En el momento de la ejecución, el motor resuelve las variables (p. ej.: buscando `{{ddi_capturado}}` y `{{resposta_telefone}}`), une los bloques numéricos de forma lineal e inyecta la cadena final limpia en la variable informada en *Nueva Clave*.<br>

### Ejemplos Prácticos

La tabla a continuación muestra escenarios clásicos de aplicación de este componente para estandarizar datos telefónicos en la plataforma:

| **DDI Informado** | **Teléfono Informado (Bruto)** | **Nueva Clave Configurada** | **Cadena Devuelta en la Variable** | **Caso de Uso Práctico**                                                                                                                                   |
| ----------------- | ------------------------------ | --------------------------- | ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `55`              | `(61) 99999-9999`              | `formatedPhone`             | `5561999999999`                    | El usuario escribió el teléfono con paréntesis y guiones en el Webchat. El componente limpia los símbolos y genera el número listo para canales oficiales. |
| `{{contato.ddi}}` | `61992222222`                  | `telefoneValido`            | `5561992222222`                    | Reutilizar el DDI del perfil del contacto y concatenarlo con el número bruto digitado en una etapa de triaje de Facebook Messenger.                        |
| `55`              | `{{$data.input_fixo}}`         | `whatsappDestino`           | `5511988887777`                    | Capturar un número proveniente de un formulario externo vía API, reformatearlo íntegramente y utilizarlo como parámetro en el bloque de envío de HSM.      |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.hablla.com/hablla-docs-es/flujos-de-automatizaciones/todos-los-componentes/transformacion-de-datos/formatear-telefono.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
