PS PrestaShop Iniciante

Reconciliação bancária de transferências: instalação e configuração

Instalação, estados acompanhados, validação automática, importação CSV, OFX e CAMT.053, verificação das propostas, lembretes, tarefa cron e resolução de problemas.

Atualizado Versão do módulo 1.0.0

Instalação

Instale o módulo em Módulos > Gestor de módulos > Carregar um módulo enviando o ficheiro ZIP, ou copie a pasta dfbankreconcile para o diretório /modules/ da loja e clique em Instalar.

Na instalação, o módulo cria quatro tabelas (importações, transferências, atribuições a encomendas, lembretes), acrescenta o separador Reconciliação bancária no menu Encomendas e regista o hook da página da encomenda. Os dados bancários dos lembretes são preenchidos a partir do módulo nativo de pagamento por transferência, se estiver configurado.

Nada muda na loja enquanto não importar um extrato: nenhum pagamento é registado e nenhum lembrete é enviado, já que os lembretes estão desativados por defeito.

Os quatro ecrãs do módulo

  • Transferências esperadas: as encomendas a aguardar transferência, com antiguidade, montante em dívida, lembretes enviados e data do próximo lembrete. No topo, quatro indicadores: montante pendente, transferências por verificar, transferências associadas e lembretes enviados em 30 dias.
  • Reconciliação: as transferências importadas, filtradas por separador (Por verificar, Associada, Parcial, Ignorada, Todas), com as propostas de encomendas e as ações.
  • Importar um extrato: envio do ficheiro e histórico das importações.
  • Lembretes: resumo das definições, URL da tarefa cron e registo dos lembretes e cancelamentos.

Configuração

Abra a configuração com o botão Definições da barra de ferramentas do módulo ou a partir do gestor de módulos.

Associação e validação

  • Estados de encomenda a aguardar transferência: as encomendas nestes estados são comparadas com as transferências importadas. Por defeito, o estado «A aguardar pagamento por transferência bancária». Mantenha Ctrl premido para selecionar vários.
  • Estado após o pagamento completo: «Pagamento aceite» por defeito.
  • Estado após um pagamento parcial: deixe «Manter o estado atual» ou escolha um estado próprio que tenha criado. Em todos os casos o pagamento é registado na encomenda.
  • Validar automaticamente as correspondências fiáveis e Pontuação mínima para validação automática: veja a secção seguinte.
  • Tolerância no montante: diferença aceite para considerar um montante exato, 0,01 por defeito.
  • Diferença aceite para comissões bancárias: uma transferência inferior ao montante em dívida no máximo por este valor liquida a encomenda. Útil para transferências internacionais em que o banco do cliente retém comissões. 0 por defeito, o que desativa a regra.
  • Procurar encomendas feitas nos últimos: 120 dias por defeito. As encomendas mais antigas não são propostas.
  • Enviar o e-mail de estado ao cliente: envia o e-mail associado ao estado «Pagamento aceite» quando a encomenda passa a paga.

Importação CSV

Os ficheiros OFX e CAMT.053 não precisam de configuração. No CSV, deixe vazios os campos das colunas: o módulo encontra a linha de cabeçalho nas primeiras 40 linhas e reconhece os nomes de coluna habituais em 8 idiomas, entre eles Data movimento, Data lançamento, Descritivo, Descrição, Montante, Crédito e Débito. Se a sua exportação não for reconhecida, indique o Separador de colunas, o Formato da data e os números das colunas, a começar em 1:

  • Coluna da data.
  • Coluna do montante para um montante com sinal, ou Coluna de crédito e Coluna de débito se o banco as separar.
  • Colunas do descritivo: uma ou várias colunas separadas por vírgulas, por exemplo 3,4. São unidas para formar o texto analisado.

A pontuação e a validação automática

Cada transferência é comparada com as encomendas a aguardar pagamento feitas até à data da transferência. Os pontos somam-se:

  • Referência da encomenda encontrada no descritivo: 60 pontos. A pesquisa ignora espaços e pontuação, pelo que uma referência cortada em duas pelo banco é encontrada na mesma.
  • Número de encomenda encontrado após Encomenda, Order, CMD, CDE, Commande, Bestellung, Pedido, Ordine ou Zamówienie: 45 pontos.
  • Montante exato: 35 pontos. Montante menos comissões bancárias, dentro da tolerância definida: 30 pontos.
  • Nome do cliente encontrado (apelido, empresa ou nome da morada de faturação, pelo menos 4 caracteres): 15 pontos.
  • Única encomenda com este montante, sem referência nem número: 10 pontos.
  • Várias encomendas numa transferência: quando o descritivo indica várias referências cuja soma corresponde ao montante, é acrescentada uma proposta agrupada com 95 pontos.

Exemplos: referência e montante exato dão 95. Número de encomenda, montante exato e nome dão 95. Montante exato e nome sem referência dão 50, ou 60 se for a única encomenda com esse montante.

Uma transferência é validada automaticamente durante a importação se a validação automática estiver ativa, se a melhor proposta liquidar a encomenda, se a sua pontuação atingir o limiar (90 por defeito) e se ultrapassar a segunda em pelo menos 15 pontos. As outras transferências com uma proposta de pelo menos 40 pontos passam a Proposta, as restantes a Sem correspondência.

Duas encomendas com o mesmo montante, sem referência no descritivo, nunca são validadas automaticamente: as suas pontuações são iguais.

Importar um extrato

  1. Descarregue o extrato da sua conta no banco online, em CSV, OFX, QFX ou CAMT.053 XML.
  2. Abra o ecrã Importar um extrato, escolha o ficheiro (máximo 20 MB) e clique em Importar e associar.
  3. A mensagem de resultado indica o número de transferências recebidas lidas, as linhas já importadas, as encomendas marcadas como pagas automaticamente e as transferências por verificar. Em seguida, abre-se o ecrã Reconciliação.

Só os créditos são mantidos. Cada linha é identificada pela data, montante e descritivo: uma linha já importada conta como duplicado e é ignorada. Pode, por isso, importar todas as semanas o extrato do mês em curso sem criar duplicados. Nos ficheiros CAMT.053, um lote de várias transferências é dividido em transferências individuais com o nome de cada ordenante.

Verificar as propostas

O separador Por verificar lista as transferências pendentes ordenadas por pontuação. Para cada transferência, a coluna Encomendas mostra até 5 propostas com a referência, o número da encomenda com ligação, o cliente e a empresa, o montante em dívida, a diferença se existir, a pontuação e os motivos. Uma etiqueta Pagamento parcial ou Pagamento em excesso assinala um montante diferente do devido.

  • Validar: regista o pagamento na encomenda proposta. É pedida confirmação se o montante diferir do devido.
  • Validação em lote: selecione transferências, ou Selecionar todas as propostas, e clique em Validar a primeira proposta das transferências selecionadas.
  • Atribuir: escreva uma referência ou um número de encomenda, ou vários separados por um espaço ou uma vírgula para uma transferência agrupada.
  • Ignorar: para uma transferência que não diz respeito a uma encomenda, por exemplo um reembolso de um fornecedor. Continua visível no separador Ignorada e pode ser restaurada, o que volta a associá-la.

O botão Associar novamente recalcula as propostas de todas as transferências pendentes, por exemplo após novas encomendas. A pesquisa filtra as transferências por descritivo, ordenante, referência da encomenda ou montante exato, por exemplo 1.234,56.

O que é registado no PrestaShop

A validação acrescenta um pagamento nativo à encomenda, visível no separador Pagamentos, na fatura e nas exportações contabilísticas. O meio de pagamento é o da encomenda, o ID de transação é a referência bancária do extrato (FITID em OFX, referência do banco em CAMT) ou, na sua falta, DFBR- seguido do número da transferência, e a data é a da operação. Se já existir uma fatura, o pagamento fica-lhe associado.

Se o montante liquidar a encomenda, tolerâncias incluídas, esta passa para o estado após o pagamento completo. A mudança de estado reutiliza o pagamento registado e não cria um segundo. Caso contrário, o pagamento é parcial: a encomenda passa para o estado após um pagamento parcial, se definido, o saldo em dívida fica visível e uma transferência posterior completará o pagamento.

As encomendas divididas entre várias transportadoras partilham uma referência. O módulo trata-as como uma só encomenda: o montante em dívida é a soma das encomendas, o pagamento é registado na primeira, como faz o PrestaShop, e todas mudam de estado.

Bloco na página da encomenda

A página de detalhe de uma encomenda a aguardar pagamento, ou que recebeu uma transferência, mostra um bloco Transferência bancária: montante ainda em dívida, transferências recebidas com data, montante e descritivo, lembretes enviados e um botão Enviar um lembrete de pagamento.

Lembretes de transferências não recebidas

Definições

  • Enviar lembretes de pagamento: desativado por defeito.
  • Prazos dos lembretes (dias após a encomenda): até 5 prazos separados por vírgulas, 3,7,14 por defeito. O último envia o e-mail de último lembrete. Dois lembretes para a mesma encomenda ficam separados por pelo menos 2 dias.
  • Não lembrar encomendas com mais de: 30 dias por defeito, para não escrever a clientes de encomendas antigas no dia da ativação.
  • Enviar uma cópia dos lembretes para: endereço em cópia oculta, opcional.
  • Dados bancários apresentados nos lembretes: titular da conta, IBAN, BIC e morada do banco.
  • Cancelar encomendas não pagas após: 0 por defeito, o que desativa o cancelamento. Uma encomenda paga parcialmente nunca é cancelada. O cancelamento repõe o stock dos produtos.

Não é enviado nenhum lembrete para uma encomenda que uma transferência a aguardar verificação propõe com pelo menos 40 pontos: o dinheiro provavelmente chegou. O resultado da tarefa indica quantas encomendas foram ignoradas por este motivo.

Tarefa cron

O ecrã Lembretes e a configuração mostram o URL da tarefa, protegido por um token. Agende uma chamada diária no seu alojamento:

0 9 * * * curl -s "https://www.a-sua-loja.pt/module/dfbankreconcile/cron?token=O_SEU_TOKEN" > /dev/null

A resposta é um JSON com o número de lembretes enviados, encomendas canceladas, encomendas ignoradas e erros. O botão Executar agora corre a mesma tarefa a partir do back-office. O botão Gerar um novo token da configuração invalida o URL anterior.

Os e-mails

O módulo inclui dois modelos, bankwire_reminder e bankwire_reminder_final, em HTML e texto, em 8 idiomas. O e-mail é enviado no idioma da encomenda, ou em inglês se esse idioma não estiver incluído. Contém o montante em dívida, o total da encomenda, os seus dados bancários e o pedido de indicar a referência no descritivo. O último lembrete avisa que a encomenda poderá ser cancelada. Variáveis disponíveis para personalizar os modelos em mails/: {firstname}, {lastname}, {order_name}, {order_date}, {amount_due}, {total_paid}, {bank_details}, {bank_details_html}.

Também pode lembrar um cliente a qualquer momento com o botão Lembrar do ecrã Transferências esperadas ou a partir da página da encomenda. Cada envio fica no registo de lembretes.

Resolução de problemas

«Não foi possível ler o ficheiro»

A linha de cabeçalho do CSV não foi reconhecida. Abra o ficheiro numa folha de cálculo, anote os números das colunas de data, montante (ou crédito e débito) e descritivo, e indique-os na secção Importação CSV da configuração.

«Não foi encontrado nenhum movimento neste ficheiro»

O ficheiro foi lido mas não contém nenhuma linha com data e montante utilizáveis. Verifique o formato da data (dia/mês/ano ou mês/dia/ano) e se o extrato não está vazio.

Uma transferência evidente não tem proposta

Verifique se a encomenda está num dos estados acompanhados, se foi feita antes da data da transferência e dentro do período de pesquisa, e se usa a mesma moeda que o extrato. Depois de corrigir um estado, clique em Associar novamente.

«A encomenda já não aguarda pagamento»

A encomenda mudou de estado ou foi paga desde a importação, por exemplo por outra transferência. Associe novamente para atualizar as propostas.

Os lembretes não são enviados

Verifique se os lembretes estão ativados, se o URL cron é chamado (o botão Executar agora permite testar), se as encomendas são mais recentes do que a antiguidade máxima definida e se a loja envia e-mails, em Parâmetros Avançados > E-mail.

Compatibilidade

  • PrestaShop 8.0 a 9.x, o mesmo ZIP cobre as duas versões.
  • Multiloja: as importações e transferências pertencem à loja ativa.
  • Formatos: CSV, TXT, OFX e QFX 1.x e 2.x, CAMT.053. O formato MT940 não é suportado.
  • Arquitetura ModuleAdminController, sem dependência Composer.
  • Interface e e-mails em português, inglês, francês, espanhol, alemão, italiano, neerlandês e polaco.
Esta página foi útil?

Ainda com dúvidas? Contacte o suporte