Protheus WebApp: o fim do SmartClient
O SmartClient Desktop foi descontinuado em 30 de junho de 2026 e, da release 12.1.2410 em diante, só existe o WebApp. O que muda na estação, no servidor e nas customizações.

O SmartClient Desktop, o programa instalado na máquina que abria o Protheus por mais de duas décadas, foi descontinuado pela TOTVS em 30 de junho de 2026. Desde a release 12.1.2410, o único cliente disponível é o WebApp, também chamado de SmartClient HTML: o Protheus abre no navegador, servido pelo próprio Application Server. Quem ainda está na 12.1.2310 pode continuar com o executável, mas sem evolução, suporte ou manutenção, conforme a Política de Ciclo de Vida de Software da TOTVS.
Para o gestor de TI, a mudança parece pequena: trocar um atalho por uma URL. Não é. O que o SmartClient Desktop fazia em silêncio na estação de trabalho, como imprimir em porta local, abrir o Excel, chamar uma DLL, ler um arquivo do disco, passa a depender de um segundo componente, o WebAgent, e de regras de segurança do navegador que a TOTVS não controla. No servidor, o WebApp traz junto o Broker como balanceador, o HTTPS como padrão prático e um limite de conexões por navegador que muda como o usuário abre rotinas. Este guia organiza o que já aconteceu, o que precisa estar pronto na estação e no servidor, o que quebra nas customizações e como conduzir a transição em um ambiente que não pode parar.
O que é o WebApp do Protheus?
O WebApp, ou SmartClient HTML, é o cliente de acesso do Protheus que roda dentro do navegador. O Application Server responde nativamente como servidor web, traduz as telas AdvPL e TL++ em HTML e entrega o ERP sem instalação na estação. Ele substitui o SmartClient Desktop, descontinuado em 30 de junho de 2026, e é o único cliente disponível da release 12.1.2410 em diante. Para funções que dependem da máquina do usuário, como impressão local, arquivos e integração com o Office, o WebApp usa um serviço complementar chamado WebAgent.
A TOTVS lista quatro vantagens no comunicado de substituição: não precisa ser instalado na máquina local, pode ser usado por conexão segura (HTTPS), não depende de plugins, Java ou ActiveX, e é multiplataforma. A migração não tem custo de licença para clientes da Linha Protheus. O que tem custo é o trabalho de adaptação, e é dele que este artigo trata.
O calendário que já passou
| Data | O que aconteceu | Fonte |
|---|---|---|
| 3 de março de 2026 | Protheus Infra Day 2026: TOTVS apresenta a infraestrutura da 12.1.2510, o sizing para a arquitetura WebApp e os modelos do Broker, incluindo o Broker HA | User Function, cobertura do evento, e TDN |
| 8 de abril de 2026 | TDN atualiza a matriz de compatibilidade do WebAgent (versões 1.0.25 e 1.1.0) | TDN, WebApp e WebAgent |
| 13 de abril de 2026 | TDN atualiza o guia de migração do SmartClient Desktop para o WebApp, com o alerta sobre o Chrome e o Edge 147 | TDN, Migrando do SmartClient Desktop para o WebApp |
| 30 de junho de 2026 | Descontinuação do SmartClient Desktop; fim do suporte, da evolução e da manutenção | Central de Atendimento TOTVS, Substituição SmartClient Desktop |
| 30 de junho de 2026 | Expiração da release 12.1.2410; Garantia Estendida a partir de 1 de julho | Política de Ciclo de Vida, no nosso guia da 12.1.2410 |
| 2 de julho de 2026 | Instaladores do WebAgent 1.1.1 publicados | TDN, WebApp e WebAgent |
| 5 de agosto de 2026 | TDN atualiza a lista de navegadores homologados | TDN, Navegadores homologados |
A leitura é direta: em outubro de 2026 não existe mais cenário de transição planejada. Quem está na 12.1.2410, 12.1.2510 ou 12.1.2610 já opera no WebApp. Quem ficou na 12.1.2310 para manter o executável está rodando um cliente sem suporte sobre uma release que também caminha para a expiração.
Por que a TOTVS encerrou o SmartClient Desktop?
O SmartClient Desktop é uma aplicação C++ monolítica, nas palavras do próprio TDN. Cada estação precisava de um executável instalado, atualizado a cada build do Application Server e, em ambientes com balanceamento, acompanhado de uma DLL do Broker. O WebApp inverte a lógica: o Application Server entrega a interface, o navegador renderiza, e a atualização acontece no servidor. O TDN resume a diferença de custo: uma sessão do WebApp consome cerca de 300 KB a mais que uma sessão do Desktop, referentes ao motor que traduz as telas em HTML, enquanto o processamento e a manipulação de dados continuam no AppServer e no DBAccess, sem diferença entre os dois clientes.
O movimento acompanha o resto da plataforma. O Infra Day 2026 tratou o Broker como peça central da arquitetura web, apresentou o sizing da 12.1.2510 já pensado para o WebApp e trouxe o Broker HA, de alta disponibilidade. A interface PO-UI, as rotinas em HTML e o acesso por tablet são o mesmo caminho. O executável na estação era o último elo da arquitetura cliente-servidor dos anos 2000.
O que muda na estação de trabalho
O navegador precisa ser homologado
A lista do TDN, atualizada em 5 de agosto de 2026, homologa Google Chrome (versão mínima 142), Microsoft Edge baseado em Chromium (mínima 145), Mozilla Firefox (mínima 147) e Yandex. O Safari não é homologado: a orientação da TOTVS para macOS é usar Chrome ou Firefox. Internet Explorer e o Edge antigo também ficam de fora. Tablets são homologados; celulares não, pela resolução e pelo formato de tela.
Chrome e Edge 147 bloqueiam o WebAgent em HTTP
Este é o alerta mais recente do guia de migração. A partir da versão 147, Chrome e Edge aplicam o Local Network Access também ao protocolo WebSocket, que é o canal entre o navegador e o WebAgent. Se o WebApp estiver em HTTP, sem TLS, o navegador bloqueia o processo por completo. A recomendação da TOTVS é migrar para HTTPS, mesmo com certificado autoassinado. Em HTTPS, o navegador pede uma permissão uma única vez (“Apps no dispositivo” no Chrome, “conectar a qualquer dispositivo em sua rede local” no Edge). Se o usuário clicar em bloquear, o WebAgent passa a se comportar como se não estivesse instalado, e a liberação é manual, máquina por máquina.
A aba hiberna, a sessão cai
Navegadores economizam memória hibernando abas inativas. Quando isso acontece com a aba do Protheus, a conexão com o AppServer é interrompida. O contorno é colocar o endereço do WebApp na lista de sites sempre ativos no Chrome e no Edge e, no Firefox, ajustar o parâmetro de descarregamento de abas. Desde o WebApp 10.1.3, o próprio sistema avisa o usuário quando a aba hibernou. Isso não é configuração de servidor: é política de estação, e vale distribuir por GPO.
Seis conexões por navegador
Os navegadores limitam as conexões simultâneas por domínio para evitar ataques de negação de serviço. Chrome, Edge, Firefox e Safari aceitam seis. O menu principal do Protheus consome uma, o que deixa cinco rotinas abertas ao mesmo tempo no mesmo navegador. Abrir uma janela anônima não ajuda; um segundo navegador diferente, sim. Para o usuário que vivia com oito telas do SmartClient abertas, essa é a mudança de hábito mais sentida.
Atalhos de teclado que o navegador não entrega
Ctrl+T, Ctrl+N, Ctrl+W, Ctrl+Tab, Alt+F4 e outros atalhos pertencem ao navegador e não chegam ao Protheus. Customizações que usam a função SetKey com essas combinações precisam ser reescritas. A tela cheia também não pode ser forçada por código; o contorno é abrir o navegador em modo quiosque, que não é homologado no Safari nem no macOS.
Impressão: a diferença que gera mais chamado
O SmartClient HTML não imprime em porta local sem ajuda. Pela Central de Atendimento, a impressão de relatórios é via servidor, com a alternativa de gerar o PDF e imprimir localmente. As funções de controle de impressão e a impressão direta dependem do WebAgent. Além disso, o navegador impõe duas limitações que o TDN detalha: o spool do navegador exibe no máximo 1.000 páginas, e a tela de seleção de impressora não pode ser suprimida pela aplicação, o que torna sem efeito o parâmetro que desligava a prévia no TReport. Os contornos (impressão silenciosa por linha de comando no Chrome ou por configuração no Firefox) mandam a impressão para a última impressora usada e não têm garantia de permanência. A recomendação da própria TOTVS é migrar relatórios para motores que não usam a impressão do navegador, como o FWMSPrinter e o SmartView.
O WebAgent: quando ele é obrigatório e quando não
O WebAgent é um serviço instalado na estação que devolve ao WebApp o que o navegador bloqueia por segurança: leitura e gravação de arquivos locais, integração com o Microsoft Office e chamadas a DLLs no Windows, bibliotecas no Linux e dylibs no macOS. Para cadastros e relatórios padrão, o TDN é explícito: não há impedimento em usar o ERP sem o WebAgent. Ele é necessário onde a rotina toca a máquina do usuário.
| Componente | WebAgent 1.0.25 ou inferior | WebAgent 1.1.0 ou superior |
|---|---|---|
| Application Server | 20.3.0.x (Harpia) ou superior | 24.3.0.0 (Panthera) ou superior; 26.3.1.0 ou superior |
| WebApp | 9.0 ou superior | 10.2.0 ou superior |
| Lib Protheus | 12.1.2210 ou superior | 12.1.2410 ou superior; 12.1.2610 ou superior |
Fonte: TDN, WebApp e WebAgent, matriz atualizada em 8 de abril de 2026. A versão corrente é a 1.1.1, com instaladores de 2 de julho de 2026.
O que o gestor de TI precisa saber sobre ele:
- Segurança. A conexão é exclusivamente por WebSocket seguro, restrita a localhost. Desde a versão 1.1.0, o handshake usa JWT para validar a origem, o que exige WebApp 10.2.0 ou superior.
- Distribuição. Os instaladores vêm da Central de Downloads da TOTVS e podem ser distribuídos pelo próprio AppServer, configurados no appserver.ini (desde o WebApp 9.0.3) ou em um arquivo WebAgent.json compartilhado entre vários servidores (desde o 9.0.0). Desde a versão 1.0.15 existe instalador MSI para Windows, o que permite instalação remota por GPO; nesse caso, a TOTVS orienta desligar a atualização automática via ini ou json para não haver conflito entre os dois mecanismos.
- Porta. A padrão é 21021. É possível fixar uma porta para todos os usuários na seção do WebAgent do appserver.ini, com um efeito colateral: a estação sem WebAgent instalado deixa de conseguir usar o ERP.
- Estações compartilhadas. Não compartilhar a mesma sessão do WebAgent entre dois usuários do Windows, porque funções como GetCredential podem devolver dados de quem iniciou o serviço. A orientação é usar o parâmetro launch, que abre o WebAgent em porta efêmera, inicia o navegador e encerra o processo alguns minutos depois de fechá-lo.
- Onde ele não roda. Não é homologado para Citrix, Windows Remote Desktop, GO-Global e VMware Horizon, nem para dispositivos móveis. Os sistemas homologados são Windows 10 e 11 Pro e Enterprise, Linux 64 bits e macOS. O Windows 10 perdeu o suporte da Microsoft em 14 de outubro de 2025, o que vale uma linha no inventário.
- Certificado. Para o WebSocket seguro é preciso registrar o certificado da TOTVS no sistema operacional, usando os arquivos da pasta do WebAgent, não os da pasta do AppServer.
O que muda no servidor
O AppServer vira servidor web
A configuração mínima, pelo TDN, é copiar o arquivo webapp.dll (Windows) ou webapp.so (Linux), baixado do Portal de Clientes, para a raiz do AppServer, e definir a porta na seção WebApp do appserver.ini. Depois, reiniciar o AppServer. Em ambientes com Porta Multiprotocolo, o acesso é pela mesma porta com /webapp no final da URL, e a configuração do App_Environment cria as rotas para WebApp, WebMonitor e REST.
[WEBAPP]
Port=8089
HTTPS deixa de ser opcional na prática
A TOTVS documenta a configuração de SSL/TLS do WebApp e, desde o alerta do Chrome 147, recomenda HTTPS mesmo com certificado autoassinado. Para o gestor de TI, isso significa tratar o Protheus como qualquer aplicação web interna: certificado válido, renovação com data e, se o acesso for externo, exposição só pelo Broker.
O Broker assume o balanceamento
O TDN é objetivo: o Broker é o responsável pelo balanceamento de carga do WebApp, e em ambientes com múltiplos servidores a orientação é usar o Broker HTTP. O Load Balance antigo, que distribuía conexões do SmartClient Desktop entre AppServers, foi descontinuado a partir do Application Server 20.3.1.x, como a User Function registrou em 2022. O Broker concentra as conexões, distribui entre os AppServers por conexão, memória, usuários ou threads, retém a sessão por até 180 segundos em instabilidade de rede e expõe uma única porta para fora. No Infra Day 2026 a TOTVS apresentou o Broker HA, com redundância do próprio Broker, documentado no TDN.
Se a sua operação tem mais de um AppServer e ainda balanceia pelo mecanismo antigo, esse é o item número um do projeto, antes de qualquer discussão sobre estação.
Cloud Protheus
Quem está no TOTVS Cloud não configura nada disso: a URL do WebApp aparece no portal TCloud, em PaaS, Protheus, Meu Ambiente, em “Exibir mais”, como link “Smartclient Webapp”. O que continua sendo seu é a estação: navegador homologado, WebAgent onde for necessário e as políticas de hibernação e permissão.
O que quebra nas customizações
A página do TDN sobre diferenças entre as versões HTML e Desktop lista o que não funciona ou muda de comportamento sem o WebAgent. Para o inventário, os grupos que mais aparecem em customização de cliente:
| Grupo | Funções e componentes | Comportamento no WebApp |
|---|---|---|
| Executar programas na estação | WinExec, ExecInClient, ExecInDLLOpen, ExecInDLLRun, ExeDLLRun2, ExeDLLRun3 | Não suportados sem WebAgent: o navegador não acessa o sistema de arquivos |
| Arquivos entre estação e servidor | CpyS2T, CpyT2S, CGetFile, funções de disco e IO | CpyS2T vira download; CpyT2S só de arquivos enviados pelo diálogo do navegador |
| Abrir sites e arquivos | ShellExecute, TWebEngine | ShellExecute só abre URLs em nova aba; o TWebEngine vira iframe e não navega para arquivo local nem para sites que bloqueiam iframe, como o Google |
| Identificação da estação | ComputerName, GetComputerName, GetClientIP, GetCredential, GetRmtInfo | Não suportados sem WebAgent; GetRmtInfo devolve só sistema operacional e navegador |
| Impressão | Funções de controle de impressão, TMSPrinter, TPageView | Não suportados; migrar para TReport em PDF, FWMSPrinter ou SmartView |
| Interface | SetKey com teclas do navegador, SetCSS, AddCSSRule, TIBrowser, TSystemTray, TOleContainer | Atalhos do navegador não chegam; CSS depende do suporte do navegador e das classes HTML; componentes descontinuados |
Dois detalhes para quem desenvolve: a função GetRemoteType passa a devolver, no parâmetro adicional, um prefixo HTML com a versão do WebApp (o TDN exemplifica “HTML-9.1.6 LINUX”), e é com ele que a customização descobre em que cliente está rodando. E os parâmetros de abertura que antes iam na linha de comando do executável vão na URL: ambiente, programa inicial e argumentos, o que facilita atalhos por área e automações. Para processos sem tela, o WebAgent aceita o modo headless desde a versão 1.0.9.
O ponto que o inventário costuma deixar passar são as automações de RPA e os scripts que dependiam da janela do SmartClient Desktop. Eles não migram: precisam ser refeitos sobre o navegador ou, melhor, substituídos por integração REST, como apontamos no guia da 12.1.2410.
Roteiro de transição para quem não pode parar
A ordem abaixo é a que usamos em ambientes de missão crítica. Ela separa o que é servidor do que é estação e deixa a estação por último, porque é onde o usuário percebe.
- Confirme a release e o cliente em uso. Na 12.1.2310 com SmartClient Desktop, o relógio já passou; na 12.1.2410 ou superior, o WebApp já está no ar e o que falta é o resto desta lista. Quem vai atualizar a release passa pelo UPDDISTR antes de pensar no cliente.
- Inventarie as customizações pelos grupos da tabela acima: impressão local, Office, DLLs, arquivos, atalhos, CSS, RPA. Cada ocorrência vira uma decisão: WebAgent, reescrita ou aposentadoria.
- Resolva o servidor. AppServer, DBAccess e License Server nas versões mínimas da release; Broker como balanceador se houver mais de um AppServer; HTTPS com certificado; Porta Multiprotocolo se for simplificar as rotas.
- Defina a política de WebAgent. Quais estações precisam dele, qual versão (1.1.0 ou superior pede WebApp 10.2.0 e Lib 12.1.2410), distribuição por MSI e GPO ou pelo AppServer, porta fixa ou efêmera, modo launch em estação compartilhada.
- Padronize o navegador por GPO. Versão mínima homologada, endereço do WebApp na lista de sites sempre ativos, permissão de rede local liberada para o domínio do Protheus, certificado do WebAgent instalado.
- Trate a impressão como projeto à parte. Relatórios TReport para PDF, SetPrint fatiado em blocos de até 1.000 páginas, migração dos relatórios críticos para FWMSPrinter ou SmartView, impressoras de etiqueta com WebAgent.
- Homologue com usuário real, nas áreas de faturamento, fiscal e estoque, que são as que mais imprimem e mais abrem rotinas em paralelo. O limite de cinco rotinas simultâneas por navegador precisa ser combinado antes, não descoberto no primeiro dia.
- Vire por área, com retorno possível enquanto a release permitir, e deixe o desligamento do executável para depois da primeira semana estável.
Como a WeePulse conduz a transição
A WeePulse sustenta e evolui ambientes Protheus em operação. Na transição para o WebApp, o trabalho começa pelo inventário de customizações contra a lista oficial de diferenças do TDN, segue pelo servidor (Broker, HTTPS, versões mínimas) e termina na política de estação e de impressão, com homologação por área antes da virada. Para quem atualiza a release no mesmo movimento, a transição do cliente entra no plano da atualização, com o UPDDISTR em simulação antes da janela. Se o ambiente já virou e os chamados de impressão, Excel ou “a tela caiu” se acumulam, o diagnóstico começa pelas quatro causas mais comuns: HTTP sem TLS, aba hibernando, WebAgent desatualizado e relatório preso no spool do navegador.
Perguntas frequentes sobre o WebApp do Protheus
O SmartClient Desktop ainda funciona?
Na release 12.1.2310, o executável ainda abre, mas desde 30 de junho de 2026 a TOTVS não evolui, não dá suporte nem mantém a tecnologia. Da 12.1.2410 em diante, só o WebApp está disponível.
A migração para o WebApp tem custo de licença?
Não. O comunicado da TOTVS informa que clientes da Linha Protheus não têm custo para migrar para o WebApp. O custo é de adaptação do ambiente e das customizações.
O WebAgent é obrigatório?
Não. Para cadastros e relatórios padrão, o WebApp funciona sem ele. O WebAgent é necessário nas estações que precisam de recursos locais: impressão em porta local, arquivos no disco, integração com Office e chamadas a DLLs.
Qual versão do WebAgent usar?
A versão corrente é a 1.1.1, de 2 de julho de 2026. Versões 1.1.0 ou superiores exigem Application Server 24.3.0.0 ou superior, WebApp 10.2.0 ou superior e Lib 12.1.2410 ou superior. Versões até a 1.0.25 rodam com Application Server 20.3.0.x, WebApp 9.0 e Lib 12.1.2210.
Por que o WebAgent parou depois da atualização do Chrome?
A partir do Chrome e do Edge 147, o Local Network Access passou a valer para WebSocket. Em HTTP, o navegador bloqueia o WebAgent por completo; em HTTPS, pede permissão uma vez. A solução é configurar SSL/TLS no WebApp e liberar a permissão de rede local na estação.
Quais navegadores são homologados?
Google Chrome (mínimo 142), Microsoft Edge Chromium (mínimo 145), Mozilla Firefox (mínimo 147) e Yandex, conforme a lista do TDN de 5 de agosto de 2026. Safari e Internet Explorer não são homologados.
Dá para usar o Protheus no celular?
Não é homologado. Tablets são homologados sem configuração adicional; celulares não, pela resolução e pelo formato de tela. O WebAgent não roda em dispositivos móveis.
Por que a sessão do Protheus cai quando troco de aba?
Porque o navegador hiberna abas inativas e isso interrompe a conexão com o AppServer. Coloque o endereço do WebApp na lista de sites sempre ativos no Chrome e no Edge, ou ajuste o Firefox para não descarregar abas.
Quantas rotinas posso abrir ao mesmo tempo?
Os navegadores homologados aceitam seis conexões simultâneas por domínio. O menu principal usa uma, então sobram cinco rotinas no mesmo navegador. Um segundo navegador diferente tem o próprio limite.
O Broker passou a ser obrigatório?
Pelo TDN, o Broker é o responsável pelo balanceamento de carga do WebApp, e em ambientes com mais de um servidor a orientação é usar o Broker HTTP. O Load Balance antigo foi descontinuado a partir do Application Server 20.3.1.x. Com um único AppServer, o Broker continua sendo escolha de arquitetura; com dois ou mais, não há outro caminho homologado.
Fontes
- Central de Atendimento TOTVS. Substituição SmartClient Desktop, TOTVS Linha Protheus: descontinuação em 30 de junho de 2026, benefícios do WebApp, disponibilidade por release, ausência de custo, Política de Ciclo de Vida.
- TDN. 4. Migrando do SmartClient Desktop para o WebApp, revisado em 13 de abril de 2026: Chrome e Edge 147 e o Local Network Access, hibernação de abas, limite de conexões, teclas de atalho, modo quiosque, relatórios com mais de 1.000 páginas, impressão silenciosa, dispositivos móveis, GetRemoteType, parâmetros por URL, modo headless, arquitetura do WebApp.
- TDN. 2. WebApp e WebAgent, revisado em 8 de abril de 2026: o que é o WebAgent, matriz de compatibilidade, WebSocket seguro e JWT, instalação e distribuição, MSI e GPO, porta 21021, certificado, sistemas operacionais homologados, Citrix e RDP, instaladores 1.1.1.
- TDN. SmartClient HTML, Diferenças entre as versões HTML e Desktop, revisado em 4 de julho de 2023: funções e componentes não suportados ou com comportamento diferente.
- TDN. SmartClient HTML (WebApp), Navegadores homologados, revisado em 5 de agosto de 2026.
- TDN. WebApp, Configurando nativamente o Application Server como servidor Web, revisado em 14 de agosto de 2023: webapp.dll e webapp.so, seção WebApp do appserver.ini, Porta Multiprotocolo, Broker como balanceador.
- Central de Atendimento TOTVS. Impressão Local no SmartClient HTML: impressão via servidor e alternativa em PDF.
- Central de Atendimento TOTVS. Cloud Protheus, Acesso WebApp (TCloud): onde encontrar a URL do WebApp no portal.
- User Function. Protheus Infra Day 2026: confira o que rolou durante o evento, 9 de março de 2026, com os links do TDN citados pela TOTVS (sizing da 12.1.2510, Broker, Broker HA).
- User Function. O fim do Load Balance, utilize o Broker no Protheus, 2022: descontinuação do Load Balance a partir do Application Server 20.3.1.x.


