# Contratos — locação e serviço

> Documentação para vendedores da Unefesta.
> Versão HTML: https://www.unefesta.com.br/documentacao-vendedor/pedidos/contratos-locacao-e-servico

## O que é?

Contratos na Unefesta permitem enviar ao comprador um **documento com os dados do pedido** (cliente, loja, itens, período) no momento em que a reserva é criada. O cliente **aceita online** no painel do pedido, enquanto o **pagamento segue em paralelo** — um não bloqueia o outro.

Serve para **locação** e **prestação de serviço**. Venda não entra neste fluxo.

> Nesta fase o aceite é **eletrônico na plataforma** (registro de IP, horário e usuário). **Não** equivale a assinatura com validade jurídica ICP-Brasil. Caução e assinatura avançada (ex.: ZapSign) ficam para etapas futuras.

## Relação com o pagamento

| Situação | O que acontece |
|----------|----------------|
| Pedido pago, contrato ainda pendente | Normal — você acompanha no painel e na trilha “Aguardando contrato” (se existir esta etapa - você personaliza) |
| Contrato aceito, pagamento pendente | Normal — o link de pagamento continua disponível |
| Ambos concluídos | Pedido segue o fluxo operacional da loja |

**Não** é necessário aceitar o contrato para pagar, nem pagar para aceitar.

## Ativar na loja

1. No painel do vendedor, abra **Minhas Lojas** → **Contratos** da loja desejada.
2. Crie ao menos um **template** (locação e/ou serviço).
   - Sem nenhum template ativo, contratos ficam **desabilitados** (e não dá para habilitar).
   - Com pelo menos um template, você **pode** habilitar — ou manter desabilitado se preferir.
   - O **primeiro** template de cada tipo vira **padrão** automaticamente.
   - Sempre deve existir **um padrão por tipo** enquanto houver templates daquele tipo.
3. Você pode ter vários templates (ocasiões/versões). No pedido, o **padrão** é alocado primeiro; o vendedor pode **trocar** o template antes do aceite do cliente.

Sem contratos habilitados (ou sem templates ativos), nenhum documento é gerado no checkout.

## Criar e editar templates

1. Em **Contratos**, clique em **Novo template**.
2. Informe **nome**, **tipo de transação** (locação ou serviço) e o **corpo** do texto (pode usar HTML simples).
3. Selecione quais **produtos/serviços** e **kits** usam aquele template (só os do mesmo tipo).
4. Itens do **mesmo template** no mesmo pedido geram **um único contrato** listando todos eles.
5. Templates **diferentes** no mesmo pedido geram **contratos separados** (o cliente aceita cada um).
6. Item com contrato habilitado **sem** template explícito usa o **padrão do tipo** (se existir e estiver ativo).
7. No pedido, o vendedor pode **trocar** o template vinculado (outra ocasião/versão) enquanto o contrato não foi aceito.

### Como o item passa a exigir contrato

**Não existe** opção “habilitar contrato” no formulário do produto, serviço ou kit. Não procure esse campo no anúncio.

O vínculo é só pela tela **Contratos** da loja:

| Ação no template | Efeito no item |
|------------------|----------------|
| Você **inclui** o produto/kit na lista do template e salva | A Unefesta **liga** o contrato naquele item e associa o template |
| Você **remove** o item da lista do template e salva | A Unefesta **desliga** o contrato naquele item e limpa o vínculo |
| Você **apaga** o template | Os itens que estavam nele também têm o contrato **desligado** |

Ou seja: escolher o item no template **é** habilitar o contrato nele. Fora disso, o anúncio não tem toggle separado.

### Placeholders suportados

Use no corpo do template (substituídos na geração do pedido):

| Placeholder | Conteúdo |
|-------------|----------|
| `{{buyer.name}}` | Nome do comprador |
| `{{buyer.email}}` | E-mail |
| `{{buyer.cpf}}` | CPF |
| `{{buyer.phone}}` | Telefone |
| `{{buyer.address}}` | Endereço de entrega/faturamento |
| `{{store.name}}` | Nome fantasia / razão social / nome PF |
| `{{store.document}}` | CNPJ **ou** CPF (o que estiver cadastrado) |
| `{{store.cnpj}}` | Só CNPJ (PJ) |
| `{{store.cpf}}` | Só CPF (PF) |
| `{{order.id}}` | Número do pedido |
| `{{order.total}}` | Total do grupo |
| `{{items.list}}` | Lista de itens (com unidades físicas, se houver) |
| `{{items.physical}}` | Só as unidades físicas (série, código etc.) |
| `{{period.start}}` / `{{period.end}}` | Início e fim do período / agendamento |
| `{{today}}` | Data de geração |

## O que acontece no pedido

1. No checkout, se a loja tem contratos ativos e o carrinho traz produtos/serviços/kits vinculados a um template, a Unefesta **gera o PDF** e marca o contrato como enviado.
2. O comprador recebe e-mail (quando há link de pagamento) com CTAs para **pagar** e **ver/aceitar contrato**.
3. Uma mensagem no **chat do pedido** também aponta para o contrato.
4. No detalhe do pedido (comprador e vendedor) aparece o painel de status do contrato.
5. O vendedor pode **reenviar o e-mail** do contrato pelo painel do grupo.

Se um item estiver com contrato habilitado **sem** template ativo **e** sem padrão do tipo, o pedido **segue sem exigir contrato**. O vendedor é **notificado** (chat do pedido + e-mail) para corrigir em Contratos da loja.

## Assinatura do cliente (aceite nativo)

1. O comprador abre o contrato.
2. Lê o texto, marca o aceite e confirma.
3. A Unefesta registra evidência (método nativo, IP, user-agent, horário) e gera PDF de aceite.
4. Comprador e vendedor recebem e-mail de confirmação.
5. Se a trilha do pedido estiver numa etapa cujo **nome contém “contrato”** (sem diferenciar maiúsculas), ela avança sozinha para a **próxima** etapa. Exemplos que disparam: **Aguardando contrato**, “Contrato pendente”. Nome sem a palavra “contrato” **não** avança.

## Trilha de status

- Na trilha **LOCAÇÃO PADRÃO** já existe a etapa opcional **Aguardando contrato**.
- Na trilha **SERVIÇO PADRÃO** (lojas novas) a mesma etapa opcional também é criada.
- Use a etapa para organizar a operação; o **checkout financeiro** não muda por causa do contrato.
- O avanço automático só ocorre se o pedido **já estiver** nessa etapa no momento do aceite. Se a trilha ainda não foi associada, ou a etapa atual tem outro nome, nada muda sozinho.

Veja também: [Trilha de Status](./trilha-de-status.md).

## Itens físicos

Quando o pedido reserva **unidades físicas** (série, código de barras etc.), elas entram no detalhe do item no pedido e, no contrato, em `{{items.list}}` / `{{items.physical}}`.

## Perguntas frequentes

**O cliente pagou sem aceitar o contrato. E agora?**  
Isso é permitido. Acompanhe o status no painel, reenvie o e-mail do contrato ou avance a trilha quando a política da loja permitir.

**O cliente aceitou sem pagar?**  
Também permitido. O link de pagamento permanece até expirar ou o pedido ser cancelado.

**Posso exigir contrato em venda?**  
Não neste fluxo — só locação e serviço.

**Onde habilito contrato no produto ou kit?**  
Em nenhum lugar do formulário do anúncio. Abra **Minhas Lojas** → **Contratos**, edite (ou crie) o template e **selecione** o produto/kit na lista. Ao salvar, o contrato fica ligado nesse item; ao tirá-lo da lista, fica desligado.

**O aceite vale juridicamente como assinatura digital?**  
Nesta fase, não. Trata-se de aceite eletrônico na Unefesta, sem ICP-Brasil. Validade jurídica avançada virá em fase posterior.

**Como reenviar só o contrato?**  
No grupo do pedido (vendedor), use **Reenviar e-mail** no painel do contrato.

Se a loja tiver [notificações de pedido pelo WhatsApp](../pedidos/notificacoes-whatsapp.md) ligadas, o comprador também recebe no WhatsApp um modelo com o botão **Ver e aceitar contrato** (link direto para a página do contrato).

**Config incompleta no checkout**  
Se contratos estão habilitados e algum item exigiria contrato sem template explícito nem padrão ativo do tipo, o pedido é criado **sem** contrato. O vendedor recebe aviso no chat/e-mail para ajustar em Contratos da loja.

Lista completa de e-mails e mensagens de sistema (contrato enviado, aceito, reenviado): [E-mails e mensagens de sistema](../gerais/emails-e-mensagens-de-sistema.md).
