# Pagamento com sinal: sinal na encomenda e saldo na entrega

> Instalação Instale o módulo em Módulos > Gestor de módulos > Enviar um módulo enviando o ficheiro ZIP, ou copie a pasta dfdeposit para o diretório /modules/ da loja e…

- Página: <https://www.datafirefly.com/pt/documentation/dfdeposit/>
- Idioma: pt
- Atualizado em: 2026-10-07
- Outros idiomas: [fr](https://www.datafirefly.com/documentation/dfdeposit/index.md), [en](https://www.datafirefly.com/en/documentation/dfdeposit/index.md), [es](https://www.datafirefly.com/es/documentation/dfdeposit/index.md), [de](https://www.datafirefly.com/de/documentation/dfdeposit/index.md), [it](https://www.datafirefly.com/it/documentation/dfdeposit/index.md), [pl](https://www.datafirefly.com/pl/documentation/dfdeposit/index.md), [nl](https://www.datafirefly.com/nl/documentation/dfdeposit/index.md)
- Índice: <https://www.datafirefly.com/pt/documentation/llms.txt>

## Instalação

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

Na instalação, o módulo:

- cria as suas tabelas (sinais, transações Stripe, regras de percentagem);
- cria cinco estados de encomenda: **A aguardar o sinal**, **Sinal recebido, saldo por pagar**, **Saldo solicitado**, **Pronto para levantamento, saldo por pagar** e **Enviado, saldo por pagar**;
- acrescenta o menu **Encomendas > Sinais** e o ecrã **Percentagens de sinal**, acessível a partir desse menu e da configuração;
- regista os seus hooks: métodos de pagamento, página de produto, carrinho, confirmação de encomenda, conta de cliente, página da encomenda no back office e fatura PDF.

Na desinstalação, as tabelas são mantidas de propósito: a numeração das faturas de sinal e das notas de crédito tem de continuar sequencial se reinstalar o módulo.

## Verificação da configuração

A página de configuração começa com uma lista de verificações a verde, laranja ou vermelho: método de pagamento pronto, chave Stripe aceite pelo Stripe, modo de teste ainda ativo, segredo do webhook preenchido e data do último evento recebido, última execução do cron, estados que pedem o saldo presentes, um deles marcado como pago, menções legais das faturas. Corrija qualquer linha vermelha antes de abrir as vendas.

O botão **Testar a chave Stripe** consulta o Stripe com a chave do modo selecionado. O teste também é feito automaticamente ao guardar quando a chave muda. Os URL do webhook e do cron copiam-se com o botão **Copiar**.

## Regras de sinal

### Percentagem e montante mínimo

**Percentagem de sinal**: parte dos produtos elegíveis paga na encomenda, entre 1 e 99 %. **Montante mínimo da encomenda** (IVA incluído): abaixo dele, a opção de sinal fica oculta. 0 significa sem mínimo.

### Categorias elegíveis e outros produtos

Deixe a lista vazia para propor o sinal em todo o catálogo, ou selecione as categorias pretendidas. A definição **Outros produtos do carrinho** decide o que acontece aos produtos não elegíveis num carrinho misto: **Pagos na totalidade com o sinal** (somados a 100 % ao montante do sinal) ou **Ocultar a opção de sinal**.

### Portes de envio e arredondamento

Os portes podem ser **pagos com o saldo** (predefinição), **pagos com o sinal** ou **repartidos segundo a percentagem de sinal**. O arredondamento é feito ao cêntimo ou à unidade seguinte, para montantes como 748 € em vez de 747,35 €.

### Grupos de clientes e apresentação

**Grupos de clientes**: só os grupos selecionados veem a opção, por exemplo os profissionais para equipamento profissional. Vazio = todos os clientes. **Mostrar nas páginas de produto** acrescenta por baixo do botão de compra uma linha como «Encomende com um sinal de 30 %: 747,00 € agora, 1743,00 € no envio ou no levantamento». **Mostrar no carrinho** acrescenta ao resumo a repartição sinal / saldo.

## Percentagens por produto, categoria ou marca

Abra **Percentagens de sinal** a partir da lista de sinais ou da configuração e clique em **Adicionar uma percentagem**. Cada regra visa um único alvo: um produto (pesquisa por nome, referência ou ID), uma categoria ou uma marca, com uma percentagem entre 0 e 99 %.

Ordem de prioridade: a regra do produto, depois a da categoria mais profunda entre as categorias do produto, depois a da marca e, por fim, a percentagem predefinida da configuração. Uma percentagem de **0 %** exclui o alvo: o produto é pago na totalidade com o sinal. Uma regra aplica-se mesmo que a categoria do produto não esteja entre as categorias elegíveis.

Quando um carrinho tem produtos com percentagens diferentes, o sinal é calculado linha a linha. A percentagem mostrada ao cliente e na fatura é então a percentagem efetiva, por exemplo 48,39 %.

## Saldo

### Estados que pedem o saldo

Quando uma encomenda com o sinal pago passa para um destes estados, o cliente recebe o email de pedido do saldo com a ligação de pagamento. Por predefinição: **Saldo solicitado**, **Pronto para levantamento, saldo por pagar** e **Enviado, saldo por pagar**.

Não use o estado nativo **Enviado** numa encomenda com o saldo por pagar: está marcado como pago no PrestaShop, que regista então automaticamente o resto como pago. Use **Enviado, saldo por pagar**. A verificação da configuração assinala um estado que pede o saldo marcado como pago.

### Estado após pagamento total

Estado aplicado quando o saldo chega a zero (Pagamento aceite por predefinição), e um segundo para as encomendas já enviadas (Enviado por predefinição). É nesse momento que o PrestaShop gera a fatura final.

### Lembretes e notificações

**Lembrete a cada** X dias e **Número máximo de lembretes** controlam os emails de lembrete enviados pela tarefa cron. **Notificações à equipa**: endereços, separados por vírgulas, avisados quando um cliente paga um sinal ou um saldo online, quando chega um sinal com um montante inesperado e quando é feita uma encomenda por transferência.

### Outras formas de pagar o saldo

Texto livre por idioma mostrado na página do saldo e nos emails, por exemplo «O saldo também pode ser pago com cartão ou em numerário no levantamento na oficina».

## Pagamento com cartão (Stripe)

1. Ative **Ativar o pagamento com cartão** e escolha o modo **Teste** ou **Produção**.
2. Cole a chave secreta do modo escolhido (`sk_test_`, `sk_live_` ou uma chave restrita `rk_`). As chaves guardadas aparecem mascaradas.
3. No painel do Stripe, Programadores > Webhooks, crie um endpoint com o URL indicado na configuração e os eventos `checkout.session.completed` e `checkout.session.async_payment_succeeded`.
4. Copie o segredo de assinatura `whsec_` para o campo **Segredo de assinatura do webhook**.

O cliente é redirecionado para uma página do Stripe Checkout. No regresso, a encomenda é criada de imediato. Se o cliente fechar o separador antes de regressar, é o webhook que cria a encomenda. Cada sessão é processada uma única vez.

Depois do primeiro pagamento de teste, a linha «Último evento Stripe recebido» da verificação deve ficar verde. Se continuar laranja, verifique o URL e os eventos do endpoint.

## Transferência bancária

Ative **Propor o sinal por transferência** e preencha o titular, o IBAN, o BIC e o nome do banco. A encomenda é criada em **A aguardar o sinal**; o cliente vê os seus dados bancários na página de confirmação e recebe-os por email, com a referência da encomenda como referência da transferência.

**Mostrar os dados bancários para o saldo** acrescenta a transferência como forma de pagar o saldo. **Cancelar encomendas por transferência não pagas após** X dias: a tarefa cron cancela as encomendas que continuam a aguardar o sinal sem nenhum pagamento, e o stock volta a estar à venda. 0 desativa este cancelamento.

## Fatura de sinal

**Prefixo de numeração** (AC por predefinição) e **Prefixo das notas de crédito** (AVAC por predefinição) têm de ser diferentes. **Número seguinte (mínimo)** permite continuar uma numeração existente: a fatura seguinte recebe este valor se for superior ao último número emitido. **Menções legais**: texto por idioma impresso no fundo de cada fatura de sinal (denominação social, capital, NIF, condições de pagamento).

## Tarefa cron

Agende uma vez por dia o URL do cron indicado na configuração, por exemplo às 6h. Envia os lembretes de saldo e cancela as encomendas por transferência expiradas, para todas as lojas. A verificação da configuração indica a sua última execução.

## O percurso do cliente

1. No checkout, o cliente escolhe «Pagar um sinal de X € com cartão» ou «por transferência». O detalhe mostra o total, o sinal, o saldo e uma barra de repartição.
2. Após o pagamento com cartão, a encomenda passa para **Sinal recebido, saldo por pagar** e a fatura de sinal é emitida e anexada ao email. Com transferência, a encomenda aguarda a sua confirmação.
3. Quando a encomenda chega a um estado que pede o saldo, o cliente recebe a ligação para a página do saldo: pagamento com cartão, dados bancários e as suas indicações.
4. Depois de pago o saldo, a encomenda passa para o estado final e o cliente recebe um email de confirmação.

Um progresso em três passos (Sinal pago, Encomenda pronta e saldo pedido, Totalmente paga) aparece na confirmação, no detalhe da encomenda da conta de cliente e na página do saldo. O cliente pode pagar o saldo a partir da sua conta antes mesmo de lhe ser pedido.

## Gerir os sinais no back office

### Encomendas > Sinais

No topo, quatro indicadores: saldos ainda por receber, saldos pedidos, transferências por confirmar e sinais recebidos este mês. Para cada encomenda, a lista mostra a percentagem, o total, o sinal, o montante pago, o saldo por pagar, o estado e a fatura de sinal. Selecione várias encomendas e escolha **Pedir o saldo** para enviar as ligações de uma só vez, por exemplo no dia em que um lote está pronto para levantamento.

### Bloco «Sinal e saldo» da página da encomenda

- **Confirmar o sinal**: para uma transferência recebida, indique o montante, o método e a referência. O pagamento é registado e a fatura de sinal emitida e enviada.
- **Pedir o saldo agora** ou **Reenviar a ligação de pagamento**, com a ligação do saldo para copiar.
- **Registar um pagamento do saldo**: transferência, cheque, numerário, cartão na loja ou na entrega. Quando o saldo chega a zero, a encomenda passa para o estado final e o cliente é avisado.
- **Anular a fatura de sinal (nota de crédito)**: para uma encomenda cancelada, emite uma nota de crédito numerada. O reembolso em si é feito no Stripe ou por transferência.

## Faturação

A fatura de sinal inclui a morada de faturação, a referência da encomenda, a percentagem, uma linha por taxa de IVA com montante sem IVA, IVA e montante com IVA, o método de pagamento e o saldo restante. A repartição do IVA é calculada proporcionalmente às taxas da encomenda, portes e embrulho incluídos, e fixada na emissão. O cliente transfere-a a partir da sua conta, o administrador a partir da lista ou da página da encomenda.

A fatura final do PrestaShop é gerada no pagamento do saldo, com um bloco que refere a fatura de sinal. A nota de crédito retoma os montantes da fatura de sinal com sinal negativo e a referência da fatura anulada.

Em Portugal, as faturas devem ser emitidas por programa certificado pela AT. Confirme com o seu contabilista se a fatura de sinal deve ser emitida no seu software de faturação certificado, usando o documento do módulo como suporte interno.

## Resolução de problemas

### A opção de sinal não aparece no checkout

Verifique por esta ordem: um método de pagamento pronto (chave Stripe ou IBAN), o grupo do cliente, o montante mínimo, as categorias elegíveis e as regras a 0 %, e a definição «Ocultar a opção de sinal» se o carrinho tiver um produto não elegível.

### Um pagamento com cartão não criou nenhuma encomenda

O segredo do webhook provavelmente falta ou está errado, ou o endpoint não escuta os eventos certos. O pagamento continua visível no Stripe. Depois de corrigir o webhook, reenvie o evento a partir do painel do Stripe: a encomenda é criada.

### A encomenda está em «Erro de pagamento»

O montante pago com cartão não corresponde ao sinal previsto, normalmente porque o carrinho mudou durante o pagamento. Verifique os pagamentos da encomenda e depois confirme o sinal no bloco da página da encomenda ou reembolse o cliente.

### Os lembretes não são enviados

A tarefa cron não está a ser executada ou o intervalo de lembrete está a 0. A verificação da configuração indica a data da última execução.

### O saldo aparece como pago mas o cliente não pagou nada

Foi aplicado à encomenda um estado marcado como pago (Pagamento aceite, Enviado): o PrestaShop regista então o resto como pago. Verifique os pagamentos da encomenda e, nas próximas, use os estados do módulo.

## Compatibilidade

- PrestaShop 8.0 a 9.x, o mesmo ZIP cobre as duas versões.
- Multiloja, multimoeda (moedas sem casas decimais tratadas para o Stripe) e multilingue.
- Arquitetura ModuleAdminController, API do Stripe chamada diretamente, sem dependências Composer.
- Interface, emails e PDF em francês, inglês, espanhol, alemão, italiano, neerlandês, polaco e português.
