# Visão geral do protocolo SMPP

> O SMPP (Short Message Peer-to-Peer) é um protocolo aberto, binário e assente em TCP para trocar SMS entre uma aplicação externa (ESME) e um Short Message Service Centre (SMSC). É a interface padrão para mensagens A2P de elevado débito por ser com estado, de baixa latência e suportar relatórios de entrega nativamente.

- URL canônico: https://www.broadnet.me/pt/reference/smpp-protocol-overview
- Idioma: pt
- Última atualização: 2026-07-18
- Editor: BroadNet (https://www.broadnet.me)

O que é o SMPP, como funciona a sessão ESME↔SMSC, a diferença entre v3.4 e v5.0 e porque continua a ser o padrão para SMS A2P de elevado débito.

## O que é o SMPP e porque existe

O SMPP é um protocolo aplicacional de nível 7 que permite a uma aplicação de mensagens trocar mensagens curtas com um SMSC ou gateway de encaminhamento. Onde uma API REST é conveniente para baixos volumes, o SMPP é uma sessão binária persistente que evita a sobrecarga de HTTP por mensagem, sustenta milhares de mensagens por segundo numa única ligação e transporta operações de submit, entrega, consulta, substituição e cancelamento, além de relatórios de entrega assíncronos. É agnóstico quanto à rede subjacente — o SMSC trata da entrega via SS7/MAP, SIGTRAN ou IP até ao terminal. Publicado inicialmente pela Aldiscon/Logica no final da década de 1990, é hoje mantido pelo SMPP Developers Forum; a v3.4 (1999) continua a ser a versão mais implementada.

## O ESME e o SMSC

Os dois pares são o ESME (External Short Message Entity — a sua aplicação) e o SMSC (Short Message Service Centre — o gateway do operador ou agregador). O ESME abre uma ligação TCP à porta de escuta do SMSC (a porta 2775 registada na IANA para texto simples) e autentica-se com um bind. Apesar do nome 'peer-to-peer', a relação é tipicamente cliente (ESME) para servidor (SMSC); qualquer dos lados pode originar PDUs quando a sessão está bound, o que é como o SMSC envia mensagens originadas no terminal e relatórios de entrega de volta ao ESME.

*Papéis numa sessão SMPP*

| Termo | Significado |
|---|---|
| ESME | External Short Message Entity — a aplicação que se conecta (o seu remetente) |
| SMSC | Short Message Service Centre — o gateway da operadora/agregador |
| MC | Message Centre — o termo da v5.0 que generaliza o SMSC |
| MT | Mobile-Terminated — uma mensagem entregue a um aparelho |
| MO | Mobile-Originated — uma mensagem enviada de um aparelho para o ESME |

## Modelo de sessão e transporte

O SMPP corre sobre uma única ligação TCP de longa duração. Após o handshake TCP, o ESME envia um PDU de bind; num bind_resp bem-sucedido a sessão entra no estado bound e permanece aberta indefinidamente, mantida viva com PDUs enquire_link periódicos. As operações são pares pedido/resposta correlacionados pelo sequence_number, e vários pedidos podem estar pendentes em simultâneo (modo com janela / assíncrono) até um tamanho de janela negociado. A sessão termina com uma troca de unbind ou com o fecho da ligação TCP. O SMPP não tem cifra incorporada; a confidencialidade é acrescentada correndo a sessão sobre TLS.

## Versões: v3.3, v3.4 e v5.0

Na prática interessam três versões. A v3.3 é legada e raramente usada. A v3.4 introduziu o bind transceiver e os parâmetros opcionais TLV, sendo hoje o padrão de facto da indústria. A v5.0 é retrocompatível com a v3.4 e acrescenta sinalização de controlo de congestão, operações de broadcast e estados de mensagem adicionais, mas está menos implementada. A versão negociada é transportada no campo interface_version do bind: 0x34 para a v3.4 e 0x50 para a v5.0.

*Valores de interface_version*

| Valor | Versão |
|---|---|
| 0x33 ou inferior | SMPP v3.3 ou anterior |
| 0x34 | SMPP v3.4 |
| 0x50 | SMPP v5.0 |

## Perguntas frequentes

### O SMPP ainda é usado em 2026?

Sim. O SMPP continua a ser o protocolo dominante para SMS A2P de elevado volume entre aplicações, agregadores e SMSCs de operador. As APIs REST assentam sobre o SMPP por conveniência, mas a interligação com a operadora é quase sempre SMPP sobre TCP, normalmente protegido com TLS.

### Que porta usa o SMPP?

O valor por omissão registado na IANA é a porta TCP 2775 para SMPP em texto simples. Não existe uma única porta TLS normalizada, pelo que os fornecedores expõem uma porta separada com TLS (por exemplo 3550 ou uma porta por conta) para binds cifrados. Use sempre a porta que o seu fornecedor aprovisionar.

### Qual é a diferença entre SMPP e SMTP?

Não têm relação. O SMTP transporta e-mail; o SMPP transporta SMS entre aplicações e um SMSC. Os acrónimos semelhantes causam confusão, mas os protocolos não partilham desenho, portas nem formato de mensagem.

### Preciso de SMPP ou basta uma API REST de SMS?

Uma API REST é mais simples e adequada para volumes baixos a moderados e integração rápida. O SMPP compensa em elevado débito, onde uma sessão binária persistente dá menor latência, maior TPS sustentado e relatórios de entrega nativos e em tempo real na mesma ligação.

## Fontes

- [SMPP v3.4 specification (Issue 1.2)](https://smpp.org/SMPP_v3_4_Issue1_2.pdf)
- [SMPP v5.0 specification](https://smpp.org/SMPP_v5.pdf)
- [3GPP TS 23.040 — SMS technical realization](https://www.3gpp.org/dynareport/23040.htm)

## Relacionados

- [O que é SMPP?](https://www.broadnet.me/pt/answers/what-is-smpp)
- [Anatomia do PDU SMPP](https://www.broadnet.me/pt/reference/smpp-pdu-anatomy)
- [Gateway SMSC (operadoras)](https://www.broadnet.me/pt/operators/smsc-gateway)
- [Produto API SMS](https://www.broadnet.me/pt/products/sms-api)
- [Documentação do desenvolvedor](https://www.broadnet.me/pt/developers)
