> ## Documentation Index
> Fetch the complete documentation index at: https://docs.robbu.global/llms.txt
> Use this file to discover all available pages before exploring further.

# Carga de Mailing e Campanhas via FTP

> Configure a importação automática de mailings e criação de campanhas via FTP/SFTP no Invenio Center: parâmetros de conexão, nomenclatura de arquivos e exemplos práticos.

<Note>
  **Configurações gerais do job de importação:**

  * **Tipo:** Job recorrente para processamento automático
  * **Frequência:** A cada **2 minutos**
  * **IPs de saída:** `191.233.248.49` e `104.41.0.210` — libere-os no firewall se usar servidor FTP/SFTP próprio
</Note>

***

## Configurar Conexão FTP

<Tabs>
  <Tab title="🌐 Servidor Próprio (FTP/SFTP)" icon="server">
    ### Conexão com Servidor Próprio

    **Caminho:** Invenio Center > Configurações > **FTP**

    <Tip>
      **Acesso direto:** [Configurações](https://inveniocenter.robbu.global/painel/configuracoes)
    </Tip>

    <Frame caption="Animação de configuração da conexão FTP">
      <img src="https://i0.wp.com/robbu.global/wp-content/uploads/2022/06/Animacao2.gif?resize=768%2C453&ssl=1" />
    </Frame>

    <Steps>
      <Step title="Acessar configurações FTP">
        Acesse: **Invenio Center > Configurações > FTP**
      </Step>

      <Step title="Preencher os parâmetros de conexão">
        | Campo                    | Valor / Observação                                                 |
        | ------------------------ | ------------------------------------------------------------------ |
        | **Servidor**             | Endereço do servidor (ex: `ftp.robbu.com.br`) — **sem** `https://` |
        | **Usuário**              | Nome de usuário para autenticação                                  |
        | **Senha**                | Senha de acesso                                                    |
        | **Porta**                | FTP → `21` · SFTP → `22`                                           |
        | **Modo de criptografia** | Depende do servidor — o mais comum é **Use Explícito**             |
      </Step>

      <Step title="Validar a conexão">
        Após salvar, o sistema exibe imediatamente se a conexão foi bem-sucedida.

        <Frame caption="Conexão bem-sucedida">
          <img src="https://robbublob.blob.core.windows.net/docs/invenio-center/ftp/conexaosucesso.png" />
        </Frame>

        <Frame caption="Falha na conexão">
          <img src="https://robbublob.blob.core.windows.net/docs/invenio-center/ftp/conexaosemsucesso.png" />
        </Frame>

        Para validação extra, use **FileZilla** ou **WinSCP** enviando um arquivo de teste.
      </Step>
    </Steps>

    <Warning>
      **Regras de preenchimento do servidor:**

      * ❌ Não inclua `https://` no início — informe apenas o endereço (ex: `ftp.seudominio.com`)
      * ❌ Não utilize **IPs privados** como host:
        * `10.x.x.x`
        * `172.16.x.x` até `172.31.x.x`
        * `192.168.x.x`
    </Warning>
  </Tab>

  <Tab title="☁️ SFTP Invenio (sem servidor próprio)" icon="cloud">
    ### Usar o SFTP da Invenio

    Se sua empresa não possui servidor FTP, utilize o **SFTP fornecido pela Invenio**.

    **Caminho:** Invenio Center > Configurações > Conta > Gerenciar > **FTP**

    <Tip>
      **Acesso direto:** [Configurações da conta](https://inveniocenter.robbu.global/painel/configuracoes/conta)
    </Tip>

    <Steps>
      <Step title="Acessar FTP nas configurações da conta">
        Acesse: **Invenio Center > Configurações > Conta > Gerenciar > FTP**

        <Frame caption="Tela de configuração do FTP da conta">
          <img src="https://robbublob.blob.core.windows.net/docs/invenio-center/ftp/ftpconfig.png" />
        </Frame>
      </Step>

      <Step title="Habilitar a transferência de arquivos">
        Ative o botão **"Habilitar transferência de arquivos"**.

        <Frame caption="Habilitando o FTP no Invenio Center">
          <img src="https://robbublob.blob.core.windows.net/docs/invenio-center/ftp/habilitando FTP.png" />
        </Frame>
      </Step>

      <Step title="Conectar com o endpoint SFTP fornecido">
        Use as credenciais geradas com as seguintes configurações:

        | Campo              | Valor                                            |
        | ------------------ | ------------------------------------------------ |
        | **Prefixo da URL** | `sftp://` obrigatório                            |
        | **Exemplo**        | `sftp://sarobbuinveniosftp.xyz.core.windows.net` |
        | **Porta**          | `22`                                             |
        | **Protocolo**      | SFTP (SSH)                                       |

        <Check>
          O servidor Invenio já é do tipo **SFTP seguro** — a criptografia é nativa via SSH.
        </Check>
      </Step>
    </Steps>
  </Tab>
</Tabs>

***

## Nomenclatura dos Arquivos

Os arquivos devem seguir o padrão de nomenclatura abaixo para serem processados corretamente. A ordem dos parâmetros importa.

**Formato base:** `mailing_DDMMYY_999[_parâmetros].csv`

| Parâmetro                | Descrição                                                                                       |
| ------------------------ | ----------------------------------------------------------------------------------------------- |
| `mailing`                | **Obrigatório** — todo arquivo deve começar com `mailing`                                       |
| `_DDMMYY`                | Data da geração do arquivo — o sistema importa **apenas arquivos com a data do dia corrente**   |
| `_999`                   | Sequência do arquivo no dia — **não pode haver dois arquivos com mesma sequência no mesmo dia** |
| `_cXXXXXXXX`             | Código da carteira — se omitido, o arquivo deve estar numa **pasta com o nome da carteira**     |
| `_dDESCRICAO`            | Descrição do mailing — se omitido, usa o nome do arquivo. **Não pode conter `_` (underline)**   |
| `_h`                     | Higienização dos contatos durante a importação                                                  |
| `_smslong`               | Campanha SMS via longcode                                                                       |
| `_smsshort`              | Campanha SMS via shortcode                                                                      |
| `_whatsappexclusivo`     | Campanha WhatsApp Oficial com número exclusivo                                                  |
| `_whatsappcompartilhado` | Campanha WhatsApp Oficial com número compartilhado                                              |
| `_nw99999999999`         | Número de WhatsApp exclusivo para a campanha                                                    |
| `_ntNOME_TEMPLATE`       | Nome do template WhatsApp a ser utilizado                                                       |
| `_email`                 | Campanha de E-mail para o mailing                                                               |
| `_ceEMAIL@DOMINIO`       | Conta de e-mail remetente — padrão: conta ativa do cliente                                      |
| `_teTITULO`              | Assunto/título do e-mail da campanha                                                            |
| `_iDDMMYYHHMM`           | Data e hora de início da campanha (ex: `_i0102180820` = 01/02/18 às 08:20)                      |
| `_q88999`                | Envio parcelado: `88%` por lote · `999` minutos de intervalo                                    |
| `_x999`                  | Descarta contatos com interação nas últimas `999` horas — **posicionar antes de `_nt`**         |
| `_limpartag`             | Substitui todas as tags dos contatos pela nova tag do arquivo                                   |
| `_removercarteiras`      | Remove o contato das demais carteiras, mantendo apenas a do arquivo                             |
| `_LEddMMyyHHmm`          | Data/hora limite de envio — evita disparos fora do horário desejado                             |
| `_whatsappprospect`      | Campanha via WhatsApp Prospect — **usar apenas quando houver números prospects**                |

<Warning>
  **`_whatsappprospect`** deve ser usado **somente quando houver números prospects** no arquivo. Caso contrário, use `_whatsappexclusivo` com `_nw` para especificar o número. O uso incorreto causa falha na importação.
</Warning>

***

## Exemplos de Nomenclatura

<AccordionGroup>
  <Accordion title="mailing_101117_1.csv">
    **Ação:** Importa sem especificar carteira.

    O arquivo deve estar em uma pasta cujo nome é o código da carteira.
  </Accordion>

  <Accordion title="mailing_101117_1_c123_dRégua 60 dias.csv">
    **Ação:** Importa na carteira `123` com a descrição `Régua 60 dias`.
  </Accordion>

  <Accordion title="mailing_101117_1_c123_h.csv">
    **Ação:** Importa na carteira `123` e executa **higienização** dos contatos.
  </Accordion>

  <Accordion title="mailing_101117_1_cALTORISCO3_smslong_i0102180820.csv">
    **Ação:** Importa na carteira `ALTORISCO3` e cria campanha de **SMS Longcode** com início em **01/02/18 às 08:20**.
  </Accordion>

  <Accordion title="mailing_101117_1_cBRAD_smsshort_q15020.csv">
    **Ação:** Importa na carteira `BRAD` e cria campanha de **SMS Shortcode** com início imediato, enviando **15% da base** a cada **20 minutos**.
  </Accordion>

  <Accordion title="mailing_101117_1_cMAIOR30_whatsappexclusivo_nw11998877665_ntTEMPLATE HOMOLOGADO ITAU_x36.csv">
    **Ação:** Importa na carteira `MAIOR30`, cria campanha de **WhatsApp Oficial** (número exclusivo `11998877665`, template `TEMPLATE HOMOLOGADO ITAU`) com início imediato, descartando contatos com interação nas últimas **36 horas**.
  </Accordion>

  <Accordion title="mailing_101117_1_c123_email_teAportunidade!!!_ceAVISO@COMUNICADO.COM.BR.csv">
    **Ação:** Importa na carteira `123` e cria campanha de **E-mail** com assunto `Aportunidade!!!` usando a conta `AVISO@COMUNICADO.COM.BR`.
  </Accordion>
</AccordionGroup>

***

## Links Relacionados

<CardGroup cols={2}>
  <Card title="Agendamento de Relatório por FTP" icon="server" href="https://docs.robbu.global/docs/center/agendamento-relatorio-ftp">
    Envio automático de relatórios via FTP/SFTP
  </Card>

  <Card title="Configurações Gerais da Conta" icon="gear" href="https://docs.robbu.global/docs/center/configuracoes-gerais-da%20conta">
    Configurações gerais do ambiente
  </Card>

  <Card title="Importação de Público" icon="users" href="https://docs.robbu.global/docs/center/publico-importacao">
    Importar mailings pelo Invenio Center
  </Card>
</CardGroup>

***

## ⁉️ Perguntas Frequentes (FAQ)

<AccordionGroup>
  <Accordion title="⏱️ Com que frequência os arquivos são processados?">
    O job de importação roda a cada **2 minutos**, garantindo ingestão contínua dos arquivos válidos no servidor.
  </Accordion>

  <Accordion title="🔒 Quais IPs liberar no firewall?">
    Se você usa servidor FTP/SFTP próprio, libere:

    * `191.233.248.49`
    * `104.41.0.210`

    Sem essa liberação, a conexão pode falhar silenciosamente.
  </Accordion>

  <Accordion title="☁️ Não tenho servidor próprio. Como usar o SFTP da Invenio?">
    **Caminho:** Invenio Center > Configurações > Conta > Gerenciar > FTP > Habilitar transferência de arquivos

    Use o endpoint fornecido com prefixo `sftp://` e porta `22`.
  </Accordion>

  <Accordion title="❌ Que erros de configuração do servidor devo evitar?">
    | Erro comum                | Correto                              |
    | ------------------------- | ------------------------------------ |
    | Incluir `https://` na URL | Apenas o endereço: `ftp.dominio.com` |
    | Usar IP privado como host | Usar domínio ou IP público           |
    | Porta errada              | FTP = `21` · SFTP = `22`             |

    Use **FileZilla** ou **WinSCP** para validar antes de configurar na plataforma.
  </Accordion>

  <Accordion title="📅 Qual data colocar no nome do arquivo?">
    Sempre a **data do dia corrente** no formato `_DDMMYY`. O sistema ignora arquivos com datas diferentes do dia de processamento.
  </Accordion>

  <Accordion title="🔢 Como funciona a sequência `_999` no nome?">
    Representa a **ordem do arquivo no dia**. Não pode haver dois arquivos com a mesma sequência no mesmo dia — isso causaria conflito de importação.
  </Accordion>

  <Accordion title="🗂️ Como informo a carteira se não usar `_cXXX`?">
    Coloque o arquivo em uma **pasta cujo nome é o código da carteira**. O sistema lerá o nome da pasta como identificador da carteira.
  </Accordion>

  <Accordion title="📦 Como fracionar o envio em lotes?">
    Use `_q88999` onde:

    * `88` = percentual da base enviado por lote
    * `999` = intervalo em minutos entre lotes

    **Exemplo:** `_q15020` → 15% por lote, a cada 20 minutos.
  </Accordion>

  <Accordion title="🚫 Como excluir contatos que interagiram recentemente?">
    Use `_x999` para descartar contatos com interação nas últimas `999` horas.

    **⚠️ Atenção:** O parâmetro `_x` deve vir **antes** de `_nt` (nome do template) no nome do arquivo.
  </Accordion>

  <Accordion title="📩 Como configurar campanha de WhatsApp Oficial?">
    Combine os parâmetros conforme o tipo de número:

    * **Número exclusivo:** `_whatsappexclusivo` + `_nw11999000000` + `_ntNOME_TEMPLATE`
    * **Número compartilhado:** `_whatsappcompartilhado` + `_ntNOME_TEMPLATE`
    * **Prospect:** `_whatsappprospect` + `_ntNOME_TEMPLATE` (somente se houver números prospects)
  </Accordion>
</AccordionGroup>
