Carga SFTP de Templates e Campanhas
Esta documentação orienta como usar os serviços automáticos de importação via SFTP para Templates e Campanhas no Robbu Maestro.Configuração
A configuração de SFTP pode ser feita na seção Configurações > Empresa > Transferência de Arquivos A Gerente de Ambiente pode decidir se as assessorias poderão utilizar um SFTP próprio ou somente o gerenciado pela Robbu. Há duas formas de conectar um servidor SFTP ao Maestro:SFTP Robbu
A Robbu disponibiliza um servidor SFTP gerenciado, pronto para uso imediato- Ao habilitar, o sistema fornece:
- Servidor
- Porta
- Nome de usuário
- Senha
SFTP Próprio
A própria empresa gerencia o seu SFTP.⚠️ Atenção: Essa opção deve ser habilitada pela Gerente de Ambiente nas configurações de Ambiente
⚠️ Se algum parâmetro estiver em branco ou inválido, a importação será ignoradaEssa flexibilidade permite que cada empresa defina o modelo mais adequado ao seu nível de governança e requisitos de segurança.
Segurança
- É fundamental manter as credenciais em segurança.
- Garantir o correto uso de porta e endereço do servidor para estabelecer a conexão.
- A proteção desses dados garante a integridade dos arquivos durante as transferências.
Diretórios
O Maestro utiliza a seguinte árvore de diretórios dentro do servidor SFTP| Uso | Caminho SFTP |
|---|---|
| Templates a serem importados | /maestro/templates |
| Campanhas a serem importadas | /maestro/campaigns |
/processed para identificar os arquivos importados com sucesso
/error para identificar importações que não aconteceram e sinalizar qual foi o erro encontrado
⚠️ Estes diretórios são criados automaticamente após a conexão do servidor SFTP na tela de configuração, mas pode levar até 10 minutos para que esses diretórios apareçam.
Passo a passo
Importar campanhas
Siga as instruções abaixo para importar uma campanha para o Maestro usando o SFTPNome do arquivo
Não há uma nomenclatura específica a se seguir na importação de campanha, mas o nome do arquivo será o nome do Público importado, por isso recomendamos que seja um nome descritivo que possa identificar facilmente o mailing importado.⚠️ É muito importante que o arquivo tenha um nome consistente com relação à extensão.csv. Verifique se a extensão não está duplicada, como emarquivo.csv.csv
Colunas do arquivo
As colunas abaixo são possíveis no arquivo| Campo | Obrigatório | Descrição |
|---|---|---|
| TIPO_DE_REGISTRO | ✅ | Tipo de contato (TELEFONE ou EMAIL). |
| VALOR_DO_REGISTRO | ✅ | Valor do contato (número com DDD ou e-mail). |
| CANAL | ✅ | Canal da mensagem: whatsapp, email ou sms. |
| CODIGO_TEMPLATE | ✅ | Código do template aprovado no Maestro (ex.: W0003, E0001). |
| SEGMENTO | ✅ | Nome do segmento cadastrado no Maestro. |
| CPF_CNPJ | ✅ | Documento do cliente (para validações ou relatórios). |
| COD_CONTRATO | ✅ | Código do contrato do cliente. |
| REMETENTE | ⚠️ apenas WhatsApp | Número de envio no WhatsApp ou remetente configurado. |
| DATA_HORA_DISPARO | ❌ | Data e hora de disparo no formato yyyy-MM-dd HH:mm:ss. |
| NOME_CLIENTE | ❌ | Nome do cliente para referência. |
| NOME_ARQUIVO_ANEXO | ❌ | Arquivo inserido na mesma pasta do CSV no SFTP para ser adicionado como anexo em e-mail |
| Var1…Var20 | ❌ | Variáveis dinâmicas que alimentam os placeholders do template. |
⚠️ Não é necessário que os campos estejam na ordem sugerida, mas os nomes das colunas devem ser exatamente como estão nesta documentaçãoExemplo:
Fluxo de processamento
- Faça upload do arquivo
.csvem/maestro/campaigns - Um serviço rotineiro roda a cada 10 minutos e executa:
- Cria diretórios
processedeerrorse não existirem. - Busca arquivos
.csvainda não importados
- Cria diretórios
- Durante a importação, algumas validações são executadas:
- Nome do arquivo segue o padrão?
- Cada linha do CSV cumpre as regras do ambiente?
- Segmentos existem e assessoria possui permissão de acesso?
- Templates estão aprovados?
- Horários de saída são válidos?
- Importação:
- Cria um arquivo
{nome original}_EXCEPTIONS.csvcom todos os contatos que não foram processados pois quebraram regras.- Este arquivo contém a cópia da linha original com uma coluna adicional
Motivo Falhaexibindo o porquê do contato não ter sido processado
- Este arquivo contém a cópia da linha original com uma coluna adicional
- Há provedor para o canal configurado?
- Se não, apenas cria um arquivo
{nome original}_created.csvna pasta/processedcom todos os contatos que foram processados - Se sim, cria os disparos e depois cria um arquivo
{nome original}_VALIDATED.csvna pasta/processedcom todos os contatos que foram processados
- Se não, apenas cria um arquivo
- Os arquivos de anexos (se houver) são destruídos após o envio
- Cria um arquivo
- Se houver falha no arquivo inteiro
- Gera
{nome do arquivo original}_errorDetail.txtcom mensagem de erro na pasta/error
- Gera
Importar templates
Siga as instruções abaixo para importar templates para o Maestro usando o SFTPNome do arquivo
O nome do arquivo deve seguir a seguinte nomenclatura:- nome do segmento: nome exato do segmento configurado (Maestro/Segmentos).
- canal:
email|sms|whatsapp(case-insensitive). - nome da WABA (opcional, apenas WhatsApp): descrição da WABA.
- data: data de referência com formato yyyyMMdd (ex:
20250531).
retail_email_20250510.csvfinance_sms_20250101.csvstore_whatsapp_MinhaWaba_20250320.csv
Colunas do arquivo
⚠️ Não é necessário que os campos estejam na ordem sugerida, mas os nomes das colunas devem ser exatamente como estão nesta documentaçãoAs colunas abaixo são possíveis no arquivo: Templates WhatsApp:
| Campo | Obrigatório | Descrição |
|---|---|---|
| TEMPLATE_NAME | ✅ | Nome único do template (sem espaços, usar _ se necessário). |
| LANGUAGE | ✅ | Idioma no formato pt_BR, en_US, etc. |
| CATEGORY | ✅ | Categoria: MARKETING, UTILITY, AUTHENTICATION |
| HEADER_TEXT | ❌ | Texto do cabeçalho (opcional). |
| BODY_TEXT | ✅ | Texto do corpo da mensagem. |
| FOOTER_TEXT | ❌ | Texto do rodapé (opcional). |
| REPLYBUTTON_1 | ❌ | Texto do botão de resposta rápida 1. |
| REPLYBUTTON_2 | ❌ | Texto do botão de resposta rápida 2. |
| REPLYBUTTON_3 | ❌ | Texto do botão de resposta rápida 3. |
| URL_BUTTON | ❌ | URL do botão de ação (se existir). |
| URL_BUTTON_TEXT | ❌ | Texto exibido no botão de URL. |
| Campo | Obrigatório | Descrição |
|---|---|---|
| TEMPLATE_NAME | ✅ | Nome único do template (sem espaços, usar _ se preciso). |
| SUBJECT | ✅ | Assunto do e-mail. |
| BODY_HTML | ✅ | Conteúdo do corpo em HTML (inline). |
| Campo | Obrigatório | Descrição |
|---|---|---|
| TEMPLATE_NAME | ✅ | Nome único do template (sem espaços, usar _ se preciso). |
| TEXT_BODY | ✅ | Texto do corpo do SMS, pode conter variáveis dinâmicas (ex.: {{1}}). |
Fluxo de processamento
- Faça upload do
.csvem/maestro/templates - Um serviço rotineiro roda a cada 10 minutos e executa:
- Cria diretórios
processedeerrorse não existirem. - Busca arquivos
.csvainda não importados
- Cria diretórios
- Durante a importação, algumas validações são executadas:
- Nome do arquivo segue o padrão?
- Segmento existe e assessoria possui permissão de acesso?
- Importação:
- Cria os templates já com status
Em Revisão
- Cria os templates já com status
- Move o
.csvpara:/processedem caso de sucesso./errorem caso de falha.- Gera
{nome do arquivo original}_errorDetail.txtcom mensagem de erro.
- Gera
FAQ
Posso enviar arquivos sem seguir o padrão de nomenclatura?
Posso enviar arquivos sem seguir o padrão de nomenclatura?
Não. O arquivo será rejeitado e movido para a pasta error com um
_errorDetail.txt.Preciso recriar os diretórios processed e error manualmente?
Preciso recriar os diretórios processed e error manualmente?
Não. O sistema os cria automaticamente quando não existirem.
Posso reaproveitar um arquivo já processado?
Posso reaproveitar um arquivo já processado?
Não. Arquivos em
processed não são reprocessados. Para enviar novamente, gere um novo .csv.Com que frequência os arquivos são processados?
Com que frequência os arquivos são processados?
A cada 10 minutos, via rotina automática.