# Módulo Carrinho Fixo e Venda Cruzada com IA: instalação e configuração

> Instalar e configurar o módulo Carrinho Fixo e Venda Cruzada com IA para PrestaShop 8 e 9: gaveta Ajax, motor de recomendação alojado localmente, barra de portes grátis e camada de IA opcional.

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

## Apresentação

O módulo **Carrinho Fixo e Venda Cruzada com IA** (`dfstickycart`) acrescenta à sua loja PrestaShop uma gaveta de carrinho lateral que se abre em Ajax a cada adição, sem recarregar a página. Mostra o conteúdo do carrinho, uma barra de progresso « portes grátis » e um bloco de recomendações cruzadas calculadas a partir das suas encomendas reais, com uma camada de IA opcional.

O motor de recomendação é inteiramente alojado localmente: o módulo funciona sem qualquer chave de API. A IA é apenas uma camada de reordenação facultativa.

## Compatibilidade

- PrestaShop 8.0 a 9.x
- Monoloja e multiloja
- 5 idiomas: FR, EN, ES, DE, IT (o português traduz-se em Internacional > Traduções)
- Nenhuma dependência (nem Composer nem framework)

## Instalação

1. No back-office, abra **Módulos > Gestor de módulos**.
2. Clique em **Instalar um módulo** e selecione o ficheiro `dfstickycart.zip`.
3. Depois de instalado, clique em **Configurar**.

O módulo regista automaticamente os seus hooks (`actionFrontControllerSetMedia`, `displayHeader`, `displayFooter`) e cria a sua tabela de cache na instalação. A desinstalação elimina essa tabela.

## Configuração

### Geral

- **Ativar o módulo**: mostra ou oculta a gaveta e o botão flutuante.
- **Posição da gaveta**: à direita ou à esquerda do ecrã.
- **Abertura automática**: abre a gaveta a cada adição ao carrinho.
- **Botão flutuante**: mostra um botão de carrinho permanente com o contador de artigos.
- **Cor principal**: cor de destaque da gaveta, dos botões e da barra.

### Recomendações

- **Ativar as recomendações**: mostra o bloco de venda cruzada na gaveta.
- **Número de produtos**: número de sugestões apresentadas (3 por defeito).
- **Estratégia**: _Auto_ (apenas motor alojado localmente) ou _IA_ (reordenação por inteligência artificial).
- **Mensagem de carrinho vazio**: texto apresentado quando o carrinho ainda não contém nenhum artigo.

### Portes grátis

Preencha o **limiar de portes grátis** na moeda por defeito. A barra de progresso mostra automaticamente o montante restante (« Faltam X € para os portes grátis ») e converte-se na moeda ativa do cliente. Indique 0 para ocultar a barra.

Numa loja portuguesa que envia para os Açores e a Madeira, verifique que o limiar corresponde bem às suas regras de transporte: o módulo mostra um único limiar, enquanto os seus portes reais podem diferir consoante a zona. Um limiar anunciado que não se aplique nas ilhas é uma fonte clássica de reclamações.

### Inteligência artificial (opcional)

- **Fornecedor**: Mistral por defeito, ou qualquer serviço compatível com o OpenAI.
- **Endpoint**: URL da API de completação (por defeito o endpoint de chat do Mistral).
- **Modelo**: nome do modelo (por exemplo um modelo Mistral leve).
- **Chave API**: a sua chave. Nunca é reapresentada e mantém-se se deixar o campo vazio numa atualização.

Se a chave estiver ausente ou se a API não responder, o módulo recorre silenciosamente ao motor alojado localmente. A gaveta nunca é bloqueada por um erro de IA.

As razões personalizadas geradas pela IA são escritas no idioma do pedido: verifique numa loja em português que saem em português europeu e, se necessário, precise-o no prompt do módulo.

## Funcionamento do motor de recomendação

As sugestões são construídas a partir de um conjunto de produtos vindo de três fontes, por ordem de prioridade:

1. **Compra conjunta (market-basket)**: produtos realmente encomendados com os do carrinho, a partir das encomendas válidas (peso mais forte).
2. **Afinidade de categoria**: produtos das mesmas categorias que o carrinho.
3. **Mais vendidos**: recurso quando o histórico é insuficiente.

O resultado é guardado em cache por composição de carrinho durante uma duração configurável, para limitar os cálculos. Se a estratégia _IA_ estiver ativa, a camada de inteligência artificial reordena esse conjunto e gera uma curta razão personalizada para cada produto.

## Desempenho

O conteúdo da gaveta é carregado em Ajax apenas na abertura: nenhum pedido adicional é executado enquanto o cliente não abrir o carrinho. As recomendações em cache evitam recalcular o motor a cada apresentação.

## FAQ e resolução de problemas

### A gaveta não abre

Verifique que o módulo está ativado, limpe a cache do PrestaShop (**Parâmetros avançados > Desempenho**) e controle que o tema carrega o jQuery no front-office.

### Não aparece nenhuma recomendação

Numa loja recente sem histórico de encomendas, o motor assenta na afinidade de categoria e depois nos mais vendidos. Certifique-se de que tem produtos ativos e visíveis no catálogo.

### As sugestões de IA não mudam

Os resultados são guardados em cache por composição de carrinho. Reduza a duração da cache durante os seus testes, ou modifique o carrinho para gerar uma nova chave de cache.
