01 / 05
O desafio
A Saudi Ceramics tinha um catálogo com mais de 3.200 SKUs entre revestimentos, louças sanitárias e cerâmica industrial, e uma rede de revendedores em 18 países. Até então, cada revendedor tinha um catálogo impresso e uma conversa no WhatsApp com um representante regional. Cada pedido de orçamento passava por três pessoas e duas planilhas. A precisão dos pedidos girava em torno de 91% — boa, mas não de nível corporativo.
O objetivo estratégico era claro: dar aos revendedores um portal de autoatendimento onde pudessem pesquisar o catálogo completo, gerar orçamentos, fazer pedidos e acessar especificações técnicas — no próprio idioma, em qualquer dispositivo, com autenticação ligada ao Azure AD que suas empresas já usavam.
02 / 05
Nossa abordagem
Projetamos o portal em torno de três princípios: uma busca que nunca mente, orçamentos que nunca arredondam errado e conteúdo que se adapta a quem lê. Escolhemos Laravel + Livewire + PostgreSQL + Meilisearch. Livewire porque o portal é essencialmente baseado em formulários e queríamos que a equipe de operações pudesse ampliá-lo sem tocar em JavaScript. Meilisearch porque a busca dos revendedores é uma experiência de primeira linha — erros de digitação, transliterações, códigos de produto e consultas em árabe precisam retornar o SKU certo em menos de 50 ms.
O PIM (gestão de informações de produto) ficou dentro do Filament. A equipe do cliente agora edita especificações, envia imagens, marca a disponibilidade por região e traduz conteúdo em uma única interface. Cada campo é disponibilizado em três idiomas (inglês, árabe e francês), com regras de fallback que impedem que páginas vazias cheguem ao ar.
03 / 05
Decisões-chave
Integramos com o Azure AD via SAML desde o primeiro dia. Nada de autenticação de consumidor, nenhuma senha armazenada localmente. O notebook do revendedor já sabe quem ele é; o portal simplesmente pede à Microsoft que confirme e entrega um token assinado. A entrada de um novo país de revendedores passou de três semanas (papelada + TI local) para menos de um dia.
Cada preço é calculado no servidor, no momento da requisição, com base no nível, na região e na moeda do revendedor. Sem cache, sem cálculos no cliente. Isso elimina categorias inteiras de bugs de divergência de preços que atormentavam a era das planilhas.
Adotamos suporte completo a RTL no design system desde o primeiro dia, não como adaptação posterior. O árabe não é um detalhe — é o idioma principal de cerca de metade da base de revendedores. Cada componente foi projetado em LTR e RTL, com numerais, iconografia e layout espelhados onde fazia sentido linguisticamente.
04 / 05
O que mudou
Revendedores de 18 países entraram no portal nos primeiros 90 dias. A precisão dos pedidos subiu de 91% para 99,4%, porque os revendedores agora informam os SKUs diretamente no catálogo ao vivo, em vez de transcrevê-los de um PDF. O tempo médio entre o pedido de orçamento e o pedido confirmado caiu de 4,7 dias para 11 horas. A equipe de vendas realocou 30% do seu tempo da digitação de dados para o relacionamento de fato.
05 / 05
Próximos passos
Estamos construindo uma camada de rastreamento de embarques integrada ao módulo de frete do SAP. Os revendedores verão a previsão de chegada dos contêineres ao vivo e poderão sinalizar exceções diretamente à equipe de operações — fechando a última parte do ciclo que ainda acontece no WhatsApp.