El objeto del canal Viber para [Advanced transactional](https://www.bulkgate.com/es/documentacion/advanced-api/advanced-transactional/2.0/). Se incluye en el objeto `channel` bajo la clave `viber`; consulte [Cascada de canales](https://www.bulkgate.com/es/documentacion/advanced-api/advanced-cascada-de-canales/).

> [!IMPORTANT]
> Los mensajes promocionales utilizan un objeto de Viber **distinto** bajo la misma clave: lleva un botón y una imagen en lugar de plantillas. Consulte [Viber – promocional](https://www.bulkgate.com/es/documentacion/advanced-api/advanced-viber-promotional/).

```json
{
	"viber": {
		"sender": "BulkGate",
		"expiration": 300
	}
}
```

## Objeto Viber

| NOMBRE DEL PARÁMETRO | VALOR | OBLIGATORIO | VALOR PREDETERMINADO |
|:--------------------|:---------------------------------------------------|:---------:|:-------------:|
| text | Texto del mensaje de Viber. Sustituye al `text` de nivel superior; consulte [Qué texto se utiliza](https://www.bulkgate.com/es/documentacion/advanced-api/advanced-cascada-de-canales/) | No | `null` |
| sender | Remitente de Viber registrado. Primero debe registrarse. Para el registro, póngase en contacto con el soporte [aquí](https://www.bulkgate.com/es/contacto/) | **Sí** | - |
| expiration | Límite de tiempo en segundos tras el cual se utiliza el siguiente canal de la cascada. Los valores inferiores a `60` se ignoran y se sustituyen por el valor predeterminado | No | `300` |
| template_id | Clave de una plantilla de Viber aprobada precedida de `@` (p. ej. `@order-confirmation`) o el ID de la plantilla en Viber. **Si se rellena, el mensaje se envía como plantilla** y `text` no se utiliza | No | `null` |
| template_language | Código de la versión de idioma de la plantilla. La mayoría de los idiomas tienen un código de dos letras (`cs`, `en`); las excepciones son `fr_FR`, `es_ES`, `pt_BR`, `pt_PT`, `zh-Hans` y `zh-Hant` | No | `en` |
| template_parameters | Array asociativo de parámetros de la plantilla, p. ej.: `{"code": "0451"}` | No | `[]` |

> [!IMPORTANT]
> Lo que cambia el mensaje a plantilla es `template_id`, no `use_template`. El parámetro `use_template` se sigue aceptando por compatibilidad con versiones anteriores, pero en este endpoint no tiene ningún efecto.

Todo mensaje transaccional de Viber debe basarse en una plantilla aprobada previamente por Viber. Cómo registrar una plantilla se describe en la página [Registro de plantillas de Viber](https://www.bulkgate.com/es/centro-de-ayuda/viber/registro-de-plantillas-de-viber/).

> [!WARNING]
> **Sin `template_id`, el mensaje no se factura a la tarifa transaccional.** Un mensaje de Viber enviado a través de este endpoint sin plantilla sale a la tarifa **promocional**; solo un mensaje basado en una plantilla aprobada se factura como transaccional.

## Ejemplo de solicitud completa

Primero Viber y SMS como alternativa. El `text` de nivel superior lo utilizan ambos tramos de la cascada; `expiration` indica cuánto esperamos a Viber antes de pasar a SMS.

```http-json
POST /api/2.0/advanced/transactional HTTP/1.1
Host: portal.bulkgate.com
Content-Type: application/json

{
	"application_id": 451,
	"application_token": "NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj",
	"number": ["420777777777"],
	"text": "Your order 4517 has been shipped.",
	"channel": {
		"viber": {
			"sender": "BulkGate",
			"expiration": 120
		},
		"sms": {
			"sender_id": "gText",
			"sender_id_value": "BulkGate"
		}
	}
}
```

El mismo mensaje como plantilla aprobada. `template_id` cambia el tramo de Viber a la plantilla, de modo que el `text` de nivel superior solo llega al tramo de SMS, y el tramo de Viber se factura a la tarifa transaccional.

```http-json
POST /api/2.0/advanced/transactional HTTP/1.1
Host: portal.bulkgate.com
Content-Type: application/json

{
	"application_id": 451,
	"application_token": "NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj",
	"number": ["375291234567"],
	"text": "Your verification code is 0451.",
	"channel": {
		"viber": {
			"sender": "BulkGate",
			"template_id": "TEMPLATE_ID",
			"template_language": "en",
			"template_parameters": {"code": "0451"}
		},
		"sms": {
			"sender_id": "gText",
			"sender_id_value": "BulkGate"
		}
	}
}
```

La respuesta es la misma para todos los canales; consulte [Advanced transactional](https://www.bulkgate.com/es/documentacion/advanced-api/advanced-transactional/2.0/).
