SmartHub AppsMáquina de aquisição

P1.3 · Relatório em PDF e entrega

Depende de P1.2. Skill obrigatória: `/identidade-ecomsmart`.

O prompt

Leia a skill /identidade-ecomsmart inteira antes de escrever CSS. Use brand/tokens.css e brand/base.html deste repositório como base.

Este relatório é a peça que o lojista encaminha para o sócio. Precisa parecer cara.

1. HTML

Template renderizando o RaioX em A4 retrato, item 14 do manual:

Páginas: capa · resumo executivo com 4 KPIs e 3 frases · faturamento · recompra · receita adormecida · curva RFV · produtos · próximos passos com CTA para o Hub.

Gráficos em SVG gerado no servidor, sem biblioteca JS — precisa funcionar no Chromium headless e no e-mail. Módulo raiox/graficos.py com barras_mensais, barras_horizontais, donut_segmentos.

2. PDF

chrome --headless=new --disable-gpu --no-pdf-header-footer \
  --virtual-time-budget=8000 --print-to-pdf=saida.pdf file:///caminho/arquivo.html

Não há Chrome na imagem base. Adicione Chromium ao Dockerfile ou use sidecar — escolha e justifique o tradeoff de tamanho.

Tarefa gerar_pdf_raiox(raiox_id) salvando em object storage, com URL assinada de 30 dias.

3. Entrega

E-mail por SMTP2GO (credenciais no Secret ecomsmart-hub-app já existente). Item 18: 600 px, coluna única, banner Profundo, 1 CTA, rodapé com descadastro, fallback Arial.

Assunto com até 45 caracteres e um número: R$ 84.300 parados na sua base. Corpo com até 120 palavras e um botão. Pixel de abertura dispara o +5 do score.

WhatsApp para quem deixou telefone, tom SmartConversas, API Oficial. Se a integração não existir ainda, deixe interface e stub.

4. Nutrição

Cinco e-mails em 14 dias, cada um com um número do Raio-X do próprio lojista:

DiaAssuntoConteúdo
0R$ {adormecida} parados na sua baseO relatório
2{pct}% compraram uma vez sóQuanto custa por mês
5Seu campeão está mais caro?Radar de Preço, R$ 97/ano
9{n} produtos sem venda há 90 diasCapital parado
14Como recuperar {adormecida}Convite para falar com o time

Como Campanha e Etapa com agendamento Celery, editável sem deploy. Cancele quando o lead compra ou entra na fila A ou B.

Critérios de aceite

  1. Passe o checklist do manual pergunta por pergunta, e me mostre cada resposta
  2. PDF das 3 lojas de teste conferido: nada cortado, nada na borda, KPIs tabulares, sem sombra fora de modal
  3. E-mail testado em Gmail e Outlook
  4. Nutrição cancelada ao comprar
  5. Teste automatizado de palavras proibidas em todos os templates. Escreva esse teste de verdade
© 2026 EcomSmart · Uso interno · pt-BR