author
Francisco Felipe Jimeno2022-05-11

SMS API: Lista de tareas completa en una integración

Escrito por Francisco Felipe Jimeno, Product Manager en LINK Mobility Spain

Integrar un SMS API para envío de notificaciones SMS a través de API es relativamente sencillo para un desarrollador. Sin embargo, una integración no se limita a producir líneas de código. Hay una serie de factores que son relevantes para elegir un buen proveedor de SMS.

Vamos a analizar cuáles son los factores más relevantes en la elección de una API SMS a la vez que proporcionamos una lista de tareas completa para que no se te olvide ningún punto en el proceso.

Análisis previo

Lista de requisitos SMS API

No olvides los requisitos que no son directamente técnicos sino del caso de uso.

  • Soporte técnico: ¿es agil? La resolución de dudas en la integración nos puede dar una idea de lo eficaz que va a ser cuando el servicio esté en producción.

  • Países con cobertura: La mayoría de mensajes se envían a un país, pero ¿tienes clientes en otros países? ¿es necesario cobertura internacional?

  • Confirmación de entrega: ¿Necesitas conocer la fecha y hora en la que se entregó el SMS al teléfono?.

  • Servicios de certificación. Además de conocer los datos de la confirmación de entrega quizá necesites que se certifique esta información.

  • Remitente: ¿hay flexibilidad para personalizar el remitente del mensaje?

  • Mensajes programados. Si los SMS no son para su envío inmediato sino que se programan con fecha y hora.

  • Caudal de envío. ¿los envíos van a ser masivos? ¿qué caudal de envío necesito?

  • Mensajes bidireccionales: ¿necesitas recibir respuesta a los mensajes que envías?

  • Seguridad: ¿el proveedor cumple alguna la normativa de seguridad?, ¿RGPD?

  • Disponibilidad. ¿El proveedor ofrece algún tipo de SLA?

Comprueba si existe ya algún módulo SMS para tu software

Los desarrolladores muchas veces nos complicamos la vida. Es posible que ya exista un conector para enviar SMS a través de nuestro software. En ese caso no es necesario hacer un desarrollo personalizado, sino que la tarea de integración puede recaer en un experto en una herramienta y no en el departamento de IT.

Esta es una lista de los conectores más solicitados:

  • Salesforce

  • Hubspot

  • Zapier

  • Oracle Marketing Cloud

  • Adobe Campaign

  • Emarsys

  • Shopify

  • Magento

  • Microsoft Dynamics 365

Elige el tipo de API

El tipo de API más común es de tipo REST. Sin embargo, cuando el volumen de SMS es muy elevado conviene utilizar SMPP aunque el desarrollo es más complicado desde el punto de vista técnico. Si tienes dudas pregunta al proveedor e infórmate bien del protocolo que conviene mejor al caso de uso.

Selecciona el lenguaje de programación

La elección del lenguaje de programación normalmente viene condicionada por el proyecto en el que se está trabajando y no por la necesidad específica de una API SMS.

La API SMS de tipo REST es independiente del lenguaje de programación y en todos los lenguajes hay librerías para este tipo de conexión que facilitan el desarrollo.

Elección del proveedor SMS API

Condiciones técnicas

Selecciona un proveedor que te ofrezca una buena impresión de su capacidad técnica. Hay una serie de indicios que nos pueden ayudar:

  • Revisa el documento de la API. Suele haber parámetros opcionales que ofrecen funcionalidades avanzadas.

  • Habla con su departamento de soporte para evaluar su capacidad de ofrecer respuesta a tus dudas.

  • ¿Qué tipo de rutas utilizan? Hay rutas de envío de SMS que se conocen como rutas grises y que no ofrecen las garantías suficientes para un servicio de calidad. Asegúrate que el proveedor ofrece siempre rutas directas.

Condiciones económicas

  • ¿Qué precio ofrecen? Es obvio que es un aspecto muy relevante, pero no el único. No olvides que un proveedor podría ofrecer un precio menor pero estar utilizando rutas de baja calidad.

  • ¿Hay cuotas mensuales o anuales por el servicio?

  • ¿Qué facilidades de pago ofrecen?

Condiciones legales y reputación

  • Revisa los términos del contrato

  • Revisa las condiciones de uso

  • ¿Qué tipo de clientes usan ya su servicio? ¿Nos dan confianza?

Prueba de concepto

Antes de empezar pregunta por módulos o conectores que para faciliten o hagan innecesario escribir código fuente para la integración.

Empieza con una prueba, un código fuente sencillo para asegurarte que se establece la conexión y se envía un SMS a través de la API con un texto simple “Hola Mundo”.

El envío no acaba con la petición, es necesario leer la respuesta del proveedor para confirmar que se ha recibido correctamente el mensaje y no se ha emitido ningún código de error.

Añade al código el flujo correspondiente a los posibles errores. Separa los errores de la API de los errores en las comunicaciones (firewall, proxy, timeout de conexión…).

Confirmación de entrega: La confirmación de entrega es asíncrona. Deberás implementar un webhook para recibir la información.

Timeouts: El código debe configurar correctamente los timeouts que aplican al caso de uso para no bloquear el servicio.

Integración del envío de SMS en tu software

Una vez terminada la prueba de concepto integra el código que envía SMS en tu software, siguiendo el manual de estilo y las buenas prácticas de programación y documentación.

Formato de los números de teléfono: Una API SMS permiten enviar a cualquier país. Si tu base de datos no contiene los teléfonos en formato con prefijo internacional es necesario realizar las adaptaciones necesarias para que el formato del prefijo internacional sea el esperado por el proveedor.

1 SMS = 160 caracteres. Comprueba la longitud de los mensajes a enviar para no superar los 160 caracteres. Si no es posible revisa la API para enviar SMS concatenados, pero recuerda que se facturarán tantos SMS como partes concatenadas tenga el mensaje.

Juego de caracteres: El alfabeto de los SMS es limitado. No permite vocales acentuadas. Si no es suficiente el juego de caracteres estándar recuerda que puedes enviar SMS Unicode, pero el tamaño máximo del mensaje se reduce a 70 caracteres.

Controla el flujo de envío. Si se produce un error en el envío el código tiene que decidir si continúa con el resto de destinatarios o envía una alerta para una revisión manual. También hay que decidir cómo se gestionan los errores y reintentos.

Testing: Una buena integración tiene test automáticos para asegurar la calidad del software ante los cambios en el código.

Contratación

Ya está todo listo, el departamento de compras debe finalizar el proceso de contratación para conseguir las credenciales de envío de SMS en producción.

¿Necesitas ayuda en la integración?

Si necesitas el acompañamiento de un experto y un equipo técnico para la integración de un servicio de envío SMS profesional, rápido y personalizable que se ajuste a tus necesidades, contacta con nosotros a través del formulario de contacto, en infocomercial@linkmobility.com o en nuestro teléfono: 912 160 100.