> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.icommkt.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Guia para importação automática de banco de dados e geração de entrega

### Descrição e escopo funcional

Permite adicionar um contacto a um perfil existente no sistema, incluindo toda a informação personalizada que nele tenha sido definida. Se o contato existir (endereço de e-mail), os campos personalizados fornecidos serão atualizados. As informações existentes nos campos personalizados que não forem fornecidas permanecerão inalteradas.

O objetivo do processo é automatizar a importação de bancos de dados e a consequente criação de remessas no ICOMM, com base nas informações provenientes de sistemas externos integrados por meio dele.

O fluxo começa quando o cliente deposita alguns arquivos (os necessários para a criação correta da remessa) em uma pasta definida de um repositório SFTP. A cada N minutos (tempo combinado e pré-definido), é verificada automaticamente a existência de arquivos a serem processados. Uma vez que os arquivos são
processados, eles são removidos do local original, armazenando uma cópia local nos servidores do ICOMM. Essas cópias são mantidas por 30 dias.

### Repositório SFTP

O repositório é um repositório SFTP e possui a segurança necessária para poder realizar este tipo de integração. Para qualquer dúvida, escreva para support@icommkt.com. No espaço definido, é conveniente gerar uma subpasta de uso exclusivo para este processo.

### Processo de entrada

**Nomenclatura de arquivo**
Conforme mencionado na seção Escopo Funcional, para cada remessa que você deseja acionar automaticamente, são necessários dois arquivos:

**[FILE_NAME].xml=** onde FILE_NAME representa o nome da campanha/envio. Por exemplo, EXAMPLE_CUSTOMER_WELCOME.xlm
**[FILE_NAME].csv=** onde FILE_NAME representa o nome do perfil que será criado na plataforma para associar ao referido envio. Por exemplo, EXAMPLE_CUSTOMER_WELCOME.csv

||| O nome de ambos os arquivos deve corresponder para que o processo seja concluído completamente.


### Estrutura do arquivo

**[FILE_NAME].xml**

```xml
<?xml version="1.0" encoding="UTF-8"?>
-<ArchivoXML>
<Email></Email>
<FromName></FromName>
<ReplyEmail></ReplayEmail>
<StartDate></StartDate>
<Subject></Subject>
<PreHeader></PreHeader>
<HtmlMessage></HtmlMessage>
<Group></Group>
<Action></Action>
<Campaign></Campaign>
<ViralMarketing></VIralMarketing>
<SocialNetworks></SocialNetworks>
<Testing></Testing>
<SendGoogleAnalytics></SendGoogleAnalytics>
</ArchivoXML>
```
**E-mail***: FROM EMAIL (deve ser um remetente declarado na plataforma no domínio da instância)

**FromName**: Remetente do envio (caso não seja enviado, leva o padrão declarado para cada instância)
**ReplyMail**: Reply TO Email (deve ser uma conta de resposta declarada na plataforma no domínio da instância)
**StartDate**: Data de início do envio AAAA-MM-DD HH24:MI:SS (padrão: AGORA + 10 minutos)
**Assunto***: Assunto da remessa. A nomenclatura para personalização dos campos no HTML da peça e/ou no assunto é: <*FIELD_NAME*>. Para qualquer dúvida a esse respeito, consulte a documentação do ICOMM.
**Pré-cabeçalho***: Enviar pré-cabeçalho
**HtmlMessage***: URL da peça HTML a ser enviada. A nomenclatura para personalização dos campos no HTML da peça e/ou no assunto é: *FIELD_NAME*>. Para qualquer dúvida a esse respeito, consulte a documentação do ICOMM.
**Grupo***: Nome do Perfil a enviar (deve ser igual ao nome do arquivo CSV e ao XML)
**Ação***: Nome da configuração de envio (deve ser igual ao nome do arquivo CSV e ao XML)
**Campanha***: Nome da campanha associada ao envio
**ViralMarketing**: verdadeiro/falso se a opção "Enviar para um amigo" estiver habilitada
**Redes Sociais**: caso queira ativar a opção de compartilhar nas redes sociais. Deve conter uma string separada por vírgula dos seguintes valores ->

1-Facebook
2-Twitter
3 - Linkedin
4-Google Plus See More
5-Pinterest
6-Whatsapp See More
Envie vazio se não quiser incluir o logotipo de nenhuma rede social (padrão: vazio)

**Teste**: verdadeiro/falso se você quiser marcar o envio como TESTE na plataforma (padrão: falso)
**Enviar GoogleAnalytics**: true/false caso queira incluir as tags do google analytics nos links das peças automaticamente como a plataforma faz (padrão: false)

**[FILE_NAME].csv**
O arquivo CSV contém a estrutura do perfil ou banco de dados para o qual a peça será enviada. Em todos os casos, o campo de e-mail deve ser incluído conforme necessário. Quaisquer outros campos personalizados na peça devem estar presentes como campos no arquivo CSV.
**E-mail***: EMAIL de destino.

### Circuito de Processo

Com base nas informações contidas no par de arquivos já definido, o processo realizará as seguintes ações:

1. A cada N minutos, é verificada a existência de novos arquivos a processar na referida pasta. Se houver arquivos, prossiga com as seguintes etapas detalhadas aqui. Caso contrário, o processo entra em espera até que o próximo intervalo de N minutos tenha decorrido.

2. Se houver arquivos, o perfil é criado com a estrutura definida na primeira linha do arquivo CSV (é necessário que o arquivo contenha os cabeçalhos relevantes na primeira linha). Se for um perfil já existente, verifica-se que não há novas colunas a serem incorporadas e em tal
caso eles estejam anexados à estrutura atual.

3. Os dados incluídos no arquivo CSV são importados para o perfil criado na etapa anterior.

4. A URL da peça a ser enviada é obtida a partir do atributo HTMLMESSAGE do arquivo XML e procedemos à criação da newsletter dentro da plataforma, atribuindo o FILE_NAME como referência para o seu nome. Caso exista uma versão anterior de uma peça com esse nome, o sistema verifica o conteúdo HTML atual em relação ao último importado para verificar se é necessário gerar uma nova versão da newsletter. Nesse caso e se houver variações, um FILE_NAME_v[N] é gerado como um nome de referência e conforme apropriado.

5. A remessa é gerada com os parâmetros estabelecidos no arquivo XML. Caso dele não seja possível obter o atributo STARTDATE, o embarque é agendado com 10 minutos de antecedência (recomenda-se também, por motivos de garantia de cumprimento das etapas anteriores, que NUNCA seja agendado um embarque com Data e Hora anteriores ao seguinte 10 minutos). .

O processamento é em tempo real e o embarque é definido na plataforma. Em todos os casos, ao aceder à plataforma, pode visualizar os objetos criados, bem como os resultados das importações (ver documentação do ICOMM) e acompanhar em tempo real os resultados de cada carregamento. A verificação de arquivo está programada para ocorrer a cada 10 minutos e, uma vez processados, os arquivos são excluídos do repositório SFTP.