DF ERP Bridge: exportação ERP agendada (Sage 100, EBP, Cegid, Codial)
Instalar e configurar a exportação ERP agendada: perfis, formatos Sage 100 / EBP / Cegid / Codial, transportes FTP e e-mail, cron.
O DF ERP Bridge exporta automaticamente as suas encomendas, clientes e stock PrestaShop para o seu software de gestão (Sage 100, EBP, Cegid, Codial) ou para um formato genérico CSV, XML ou JSON. Os ficheiros são gerados na cadência que definir e entregues automaticamente por FTP/FTPS ou por e-mail, sob o controlo de um cron. Este guia cobre a instalação, a criação de perfis, os formatos, os transportes, o agendamento e a segurança.
Nota para lojas portuguesas: os quatro presets Sage 100, EBP, Cegid e Codial correspondem às versões francesas destes programas e seguem as convenções de importação francesas (codificação Windows-1252, campo SIRET). O módulo não gera ficheiros SAF-T (PT) nem substitui um software de faturação certificado pela AT: trata-se de uma ponte de dados para o seu ERP. Para um ERP português ou internacional (PHC, Primavera, Sage Portugal, Moloni, Odoo), use os formatos genéricos CSV, XML ou JSON e mapeie as colunas no importador do seu software.
Instalação
- No back-office, abra Módulos > Gestor de módulos, clique em Instalar um módulo e carregue o ficheiro
dferpbridge.zip. - Depois de instalado, clique em Configurar.
- Na primeira instalação, é gerado automaticamente um token de cron e a retenção dos registos é fixada em 30 dias. Estas definições podem ser alteradas na secção Definições, no fundo da página de configuração.
O módulo é exclusivamente back-office: não acrescenta nada ao front-office da sua loja. É compatível com PrestaShop 8.0 a 9.x e multiloja.
Criar um perfil de exportação
Um perfil descreve uma exportação: que dados, em que formato, para que destino e com que frequência. Pode criar tantos perfis quantos precisar. Clique em Adicionar um perfil e preencha os campos.
Campos principais
- Nome do perfil: uma etiqueta que o ajuda a identificá-lo (ex. « Encomendas para Sage, diário »).
- Dados a exportar: Encomendas, Clientes ou Stock.
- Formato ERP: Sage 100, EBP, Cegid, Codial, ou um formato genérico CSV / XML / JSON.
- Transporte: depósito FTP ou anexo de e-mail.
- Frequência: Horária, Diária ou Semanal. Avaliada a cada chamada do cron.
- Filtro de estados de encomenda: (apenas encomendas) seleção múltipla; deixe vazio para exportar todos os estados.
- Exportação incremental: exporta apenas os registos criados desde a última passagem.
- Ativo: um perfil inativo é ignorado pelo cron mas continua a poder ser executado manualmente.
Os formatos de exportação
Os quatro presets ERP são produzidos na codificação Windows-1252, com separador ponto e vírgula, quebras de linha CRLF e decimais com vírgula, a convenção esperada pelas ferramentas de importação francesas. Os formatos genéricos saem em UTF-8.
Sage 100
Ficheiro .txt de dois níveis: linhas de cabeçalho « E » seguidas das suas linhas de detalhe « L », numa estrutura compatível com a importação de documentos do Sage 100 Gestion Commerciale. Os portes são acrescentados numa linha dedicada « PORT ». A ordem das colunas pode ser remapeada no assistente « Format d’import paramétrable » do Sage.
EBP
CSV plano .csv com linha de cabeçalhos, uma linha por linha de encomenda (os campos de cabeçalho são repetidos). Adequado à importação parametrizável do EBP Gestion Commerciale.
Cegid
Documento XML .xml estruturado em DOCUMENTS / DOCUMENT com um bloco ENTETE e um bloco LIGNES, para a integração de documentos ao estilo Cegid Business / XRP Flex.
Codial
CSV plano .csv com cabeçalhos, uma linha por linha de encomenda, pensado para o módulo de importação configurável do Codial.
Genéricos CSV / XML / JSON
Para qualquer outra ferramenta (Odoo, Dolibarr, PHC, Primavera, ERP interno, folha de cálculo), estes formatos exportam a totalidade dos campos em UTF-8. O CSV genérico inclui um BOM para uma abertura limpa no Excel; o XML aninha as linhas sob cada encomenda; o JSON encapsula os registos num envelope com entidade, data e contagem.
Transportes
FTP / FTPS
Preencha o anfitrião, a porta (21 por defeito), o utilizador, a palavra-passe e o caminho remoto (ex. /exports/prestashop). O modo passivo e o SSL explícito (FTPS) são suportados através de interruptores dedicados.
A palavra-passe FTP é cifrada em repouso na base de dados com a chave de cifragem da sua loja. Ao modificar um perfil, deixe o campo da palavra-passe vazio para conservar o valor existente.
O ficheiro é enviado em anexo para o endereço indicado em E-mail do destinatário. Os modelos de e-mail são fornecidos em francês e em inglês.
Agendamento por cron
O painel Execução agendada (cron) mostra o URL seguro a chamar. Adicione-o ao seu crontab ou a um serviço de cron. A cada chamada, só são executados os perfis cuja frequência já venceu (com uma tolerância de 5 minutos).
*/15 * * * * curl -s "https://a-sua-loja.pt/module/dferpbridge/cron?token=O_SEU_TOKEN" > /dev/null 2>&1
Parâmetros opcionais do URL:
id_profile=N: executa apenas um perfil.force=1: ignora o controlo de frequência e executa em qualquer caso.
Agende o cron pelo menos tão frequentemente como a frequência mais elevada usada pelos seus perfis. Um perfil « horário » precisa de um cron chamado no mínimo de hora a hora.
Execução manual
Cada perfil dispõe de um botão Executar agora sob a lista, que dispara a exportação imediatamente ignorando a frequência, útil para testar um perfil depois da configuração.
Exportação incremental e filtros
Em modo incremental, as encomendas e os clientes exportados são apenas os criados depois da data da última passagem bem-sucedida, o que evita duplicados no seu ERP. O stock é sempre exportado como instantâneo completo, independentemente desta definição.
Para as encomendas, o filtro de estados limita a exportação aos estados selecionados (por exemplo « Pagamento aceite » e « Enviada »). Cada encomenda inclui as suas linhas de detalhe, o IVA calculado por linha, os portes e a morada de faturação completa (SIRET, NIF de IVA intracomunitário). Numa loja portuguesa, o campo SIRET fica vazio; o NIF do cliente é transportado no campo do IVA intracomunitário.
Registo das exportações e retenção
As 20 últimas exportações aparecem no back-office com o seu estado (sucesso, vazio, erro), o número de registos, o ficheiro gerado e uma eventual mensagem. Os registos mais antigos do que a duração de retenção configurada (30 dias por defeito) são purgados automaticamente a cada passagem do cron.
Segurança
- O URL de cron é protegido por um token comparado em tempo constante; uma chamada sem token válido devolve um erro 403.
- A palavra-passe FTP é cifrada em repouso e só é decifrada no momento da ligação.
- Pode regenerar o token de cron a partir das Definições; o URL antigo deixa então de funcionar.
Resolução de problemas
« Invalid token » ao chamar o cron
Verifique que o token no URL corresponde exatamente ao mostrado no painel cron. Se tiver sido regenerado, atualize o seu crontab.
A exportação FTP falha
Certifique-se de que a extensão PHP FTP está disponível no servidor, de que o anfitrião e o utilizador estão corretos e de que o caminho remoto existe. Experimente ativar ou desativar o modo passivo consoante o seu servidor.
O perfil executa mas não é produzido nenhum ficheiro
O estado « vazio » significa que nenhum registo correspondia aos filtros (por exemplo, nenhuma encomenda nova desde a última passagem em modo incremental, ou um filtro de estados demasiado restritivo).
Os formatos XML dão erro
Os presets Cegid e XML genérico requerem a extensão PHP XMLWriter, padrão na maioria dos alojamentos PrestaShop.
Compatibilidade
- PrestaShop 8.0, 8.1, 8.2 e 9.x
- PHP 7.4 a 8.3
- Multiloja
- Extensão PHP FTP necessária para o transporte FTP; XMLWriter necessário para os formatos XML