Skip to content

Informe de entrega SMS (DLR): estados y códigos

Qué muestra un informe de entrega SMS (DLR): DELIVRD, UNDELIV, EXPIRED, REJECTD y otros estados, el formato del DLR, los códigos de error y cómo leerlos.

Actualizada el 20 octubre 2026

Un informe de entrega SMS (DLR) indica el estado final de un mensaje: DELIVRD (llegó al terminal), UNDELIV (falló), EXPIRED (venció el periodo de validez), REJECTD (rechazado por la red), DELETED, UNKNOWN, o ACCEPTD y ENROUTE como estados intermedios. El estado viene acompañado de un código de error que explica los fallos, pero los códigos de error son propios de cada operador o plataforma.

Cómo le llega un DLR

Por SMPP, el acuse se solicita con el campo registered_delivery de submit_sm (el valor 1 pide un acuse tanto en caso de éxito como de fallo; el valor 2, solo en caso de fallo). El proveedor responde con submit_sm_resp y un ID de mensaje, lo que solo significa que el mensaje se aceptó, no que se entregó. Más tarde el acuse llega como un deliver_sm cuyo esm_class lo marca como acuse de entrega. Con las HTTP API, la misma información se envía a su webhook. Ambas interfaces se comparan en SMPP vs HTTP API para SMS A2P.

La especificación SMPP 3.4 propone un formato de texto para el acuse, que siguen la mayoría de las plataformas:

id:1234567890 sub:001 dlvrd:001 submit date:2610201015 done date:2610201015 stat:DELIVRD err:000 text:Your code is

El id coincide con el ID de mensaje de submit_sm_resp. Las fechas suelen tener el formato AAMMDDhhmm. Muchas plataformas envían además los mismos datos en los parámetros opcionales receipted_message_id y message_state.

Valores de estado

EstadoSignificado¿Final?
DELIVRDEntregado en el terminalSí
UNDELIVNo se pudo entregar (número no válido, abonado ausente, restringido, bloqueado)Sí
EXPIREDEl periodo de validez terminó antes de la entrega, a menudo porque el teléfono estaba apagado o sin coberturaSí
REJECTDRechazado por la red o por un firewall SMS, a menudo por motivos de sender ID o de contenidoSí
DELETEDEliminado del SMSC antes de la entregaSí
UNKNOWNEstado final desconocido o no informadoTratarlo como fallido mientras no se demuestre lo contrario
ACCEPTDAceptado por el SMSC en nombre del abonado, sin confirmación del terminalIntermedio
ENROUTEEn tránsito, todavía se está intentando la entregaIntermedio

Algunas plataformas envían acuses intermedios y después uno final. Su sistema debe actualizar el estado del mensaje cada vez y tomar como resultado solo el estado final.

Códigos de error

El campo err lleva un código de tres dígitos, normalmente 000 en caso de éxito. En los fallos, su significado depende del operador y de cada plataforma de la cadena, así que no existe una lista universal. Las categorías habituales detrás de los códigos son: abonado desconocido o no asignado, abonado ausente, memoria del terminal llena, llamada restringida, fallo de red y bloqueo por filtro antispam o firewall. Pida a cada proveedor su tabla de códigos de error y hágala corresponder con sus propias categorías. No confunda los códigos de error del DLR con los códigos command_status de SMPP que se devuelven en el envío: estos se explican en códigos de error SMPP habituales.

Cómo leer correctamente los DLR

  • La falta de DLR no es un fallo por defecto. Algunos destinos o rutas no devuelven acuses. Sepa cuáles son antes de crear alertas.
  • El momento importa. Un estado EXPIRED puede llegar horas o días después, según el periodo de validez que haya fijado. Un periodo de validez corto conviene al OTP, donde un código que llega tarde no sirve.
  • Los mensajes concatenados pueden generar un acuse por parte. Cuente un mensaje largo como entregado solo cuando lo estén todas sus partes. Consulte SMS largos concatenados.
  • Lo que parece demasiado bueno es una señal. Una ruta con un 100% de DELIVRD y acuses instantáneos puede estar enviando DLR falsos.

Cómo usar los DLR para gestionar las rutas

Agregue los estados por país, por red y por ruta cada hora. Un aumento de UNDELIV o REJECTD en una red suele indicar un cambio en el firewall o un problema con el sender ID; un aumento de EXPIRED puede indicar congestión. Esta es la base de la monitorización de la entrega, explicada en tasa de entrega y latencia de SMS. Cuando una ruta se degrada, una ruta de respaldo le permite mover el tráfico rápidamente.

VoIPMatcher obtiene de sus carriers rutas SMS A2P con informes de entrega. Solicite una ruta SMS e indíquenos qué destinos necesitan soporte completo de DLR.

Preguntas frecuentes

¿Qué significa DLR en SMS?

DLR significa delivery report, informe o acuse de entrega. Es el mensaje de estado que se devuelve después de que una red intenta entregar un SMS, e indica al remitente si el mensaje llegó al terminal, falló, caducó o fue rechazado. Las plataformas A2P lo devuelven al remitente por SMPP o a un webhook.

¿Cómo activo los informes de entrega de SMS en mi teléfono?

En la mayoría de las aplicaciones de mensajes de Android, los informes de entrega son una opción de los ajustes de SMS de la aplicación, a menudo dentro de los ajustes avanzados. El iPhone no ofrece informes de entrega para los SMS normales. Los informes de entrega del teléfono son distintos de los DLR A2P que las empresas reciben de su proveedor de SMS, que se solicitan al enviar cada mensaje.

¿Qué es un DLR del SMSC?

Un DLR del SMSC es el acuse de entrega que genera el Short Message Service Centre del operador después de intentar entregar el mensaje. Es el único informe que refleja lo que ocurrió en la red. Los acuses creados por plataformas intermedias sin confirmación del operador no son DLR reales del SMSC y pueden ocultar tráfico no entregado.

¿Por qué no recibo informe de entrega de algunos SMS?

Algunos destinos, redes y rutas no devuelven ningún acuse, y otros solo lo devuelven en caso de fallo. Por eso, la ausencia de DLR no demuestra que un mensaje haya fallado. Pregunte a su proveedor qué destinos tienen soporte completo de DLR, registre los acuses ausentes por separado de los fallos y confírmelo con pruebas en terminales.

¿Cuánto tarda un informe de entrega?

En buenas rutas, un informe DELIVRD suele llegar a los pocos segundos de la entrega. Los estados de fallo pueden tardar mucho más: un informe EXPIRED solo llega cuando termina el periodo de validez, lo que puede ser horas o días después. Los informes que siempre llegan menos de un segundo después del envío, incluso en los fallos, indican que se generan y no son reales.

¿Necesita una ruta?

Envíe el destino, el tipo de ruta y la tarifa objetivo. Le respondemos con lo que podemos ofrecer.

SMS A2P OTP por voz: cómo funcionan las llamadas de verificación Qué es el OTP por voz, cómo funciona una llamada de verificación con síntesis de voz, OTP por voz vs SMS, caller ID, coste y cómo prevenir el fraude. SMS A2P Herramientas cliente y servidor SMPP para pruebas Librerías cliente SMPP, servidores y simuladores de código abierto para pruebas, y un método paso a paso para probar una conexión SMPP. SMS A2P Cómo probar una ruta SMS: checklist de pruebas SMS A2P Cómo probar una ruta SMS o un gateway SMS antes de enviar tráfico: pruebas en terminal por red, sender ID, latencia, fiabilidad de los DLR, carga y pilotos. SMS A2P Buenas prácticas para SMS OTP: longitud, caducidad y entrega Buenas prácticas de SMS OTP para una entrega rápida y segura: ruta, sender ID, formato, longitud y caducidad del código, SMS pumping y respaldo. SMS A2P Consulta de número VoIP: cómo se detecta el tipo de línea Cómo funcionan la consulta de números VoIP y la detección del tipo de línea, qué significa cada tipo y cómo frenan registros falsos y fraude SMS. SMS A2P HLR y VLR: cuál es la diferencia en GSM HLR y VLR explicados: qué guarda cada registro de la red móvil, cómo trabajan juntos en llamadas, SMS y roaming, y qué los ha sustituido en 4G y 5G. SMS A2P SMS transaccional vs promocional: diferencias clave SMS transaccional vs promocional: qué significa cada tipo, consentimiento, baja, horarios de envío, normas de registro y por qué el tipo cambia el enrutamiento. SMS A2P Códigos de error SMPP: lista completa y significado Códigos de error SMPP explicados: valores command_status de SMPP 3.4 como 0x0B, 0x45 y 0x58, sus causas y cuáles reintentar o tratar como permanentes.