Loja
Pacotes de aulas
Um pacote é um saldo de treinos pago: um cartão de 10 aulas, um bloco de 5, um mensal. Ele é vendido na loja como qualquer outro produto, é consumido no check-in e funciona sem matrícula -- quem chega de fora paga no balcão e treina na mesma noite.
1. Criar o produto do pacote
Vá em Loja > Produtos e clique em Criar produto. Em Tipo, escolha Passe -- os campos do pacote aparecem.
| Campo | O que faz |
|---|---|
| Nome | Aparece depois no pacote do aluno (ex.: "Pacote 10 aulas adulto"). |
| Valor bruto | Preço de venda com impostos. |
| Uso Máximo | Número de marcações. Deixe vazio para aulas ilimitadas dentro da validade (mensal). |
| Validade (dias) | Conta a partir do dia da venda. O último dia ainda vale: um pacote de 90 dias vendido em 31 de agosto vale até 28 de novembro. Vazio = sem vencimento. |
| Transferível | O pacote pode ser usado dentro da família (filhos e responsáveis). Não é um cartão ao portador. |
| Uma marcação por dia | Uma marcação cobre todas as aulas da mesma pessoa no mesmo dia. Jiu-jitsu às 18:00 mais open mat às 19:30 custa uma marcação. |
Um limite é obrigatório
Um produto de pacote precisa de uso máximo, validade ou os dois. Um pacote sem nenhum dos dois nunca acabaria -- o formulário não aceita.

2. Vender o pacote
Na mesma página: Criar venda.
Escolher o cliente
Busque um aluno existente -- ou use + Novo cliente para quem chega de fora: nome, sobrenome, e-mail e data de nascimento. O cliente é criado como aluno sem matrícula.
Adicionar o produto
Selecione o produto do pacote. Quantidade 2 gera dois pacotes, não um pacote com o dobro do saldo.
Escolher a forma de pagamento e concluir
Dinheiro ou débito automático. Registrada a venda, o pacote fica ativo na hora -- o cliente já pode treinar.
E-mail e data de nascimento
O e-mail é obrigatório: é por ele que o cliente entra no aplicativo (o código de acesso chega por e-mail). A data de nascimento é opcional, mas define a faixa etária do cliente -- sem ela, nenhuma regra de faixa etária pode ser aplicada a ele.
Com débito automático o pacote também fica ativo na hora. Se a cobrança falhar depois, os pacotes dessa venda são cancelados automaticamente; se a fatura for corrigida, eles voltam a valer. Um pacote cancelado na mão continua cancelado.
3. Usar uma marcação
Ao chegar, o aluno lê o QR code do clube com o aplicativo. O aplicativo faz o check-in na aula em andamento e desconta uma marcação.
| Regra | Comportamento |
|---|---|
| A matrícula vem primeiro | Quem tem matrícula ativa não gasta marcação. Um pacote com saldo nunca é consumido em silêncio. |
| Ordem | É marcado sempre o pacote que vence primeiro. Pacotes sem vencimento ficam por último. |
| Uma marcação por dia | Só a primeira aula do dia custa. As demais aulas do mesmo dia são livres. |
| Sem cobertura, sem check-in | Se o pacote está esgotado ou vencido e nada mais cobre a visita, o check-in é recusado. O aluno vê o motivo e a tentativa fica registrada. |
| Vale para todas as aulas | Um pacote cobre qualquer aula. A regra de faixa etária continua valendo. |
| Alocação tem prioridade | Quem o clube alocou na aula entra mesmo sem pacote. |
Uma presença lançada depois conta na data da aula: ao lançar o treino do mês passado, é marcado o pacote que valia naquela época.
4. Gerenciar pacotes
No perfil do aluno, a aba Pacotes traz uma linha por pacote -- com as marcações, o status, a validade e as etiquetas "Transferível" e "Uma marcação por dia".

| Ação | Onde | Efeito |
|---|---|---|
| Conceder pacote | Botão acima da lista | Pacote cortesia, sem venda -- uma gentileza ou uma aula experimental. |
| Descontar uma marcação | Gerenciar | Registra uma marcação manual (pagamento em dinheiro na porta, correção). |
| Estender | Gerenciar | Define uma nova data de validade. Pacotes vencidos continuam visíveis e podem ser estendidos a qualquer momento. |
| Cancelar | Gerenciar | Anula o pacote. Ele deixa de contar como cobertura. |
| Histórico | Gerenciar | Cada marcação com a data. Marcações manuais podem ser desfeitas uma a uma aqui. |

Devolver uma marcação
Uma marcação que pagou uma visita real volta ao remover essa presença da lista de presença -- não pela janela Gerenciar. Em um pacote de uma marcação por dia com duas visitas no mesmo dia, a marcação passa para a visita restante; só ao remover a última visita do dia ela é devolvida.
Clientes de pacote não têm matrícula e por isso não aparecem em nenhuma visão por status da lista de alunos. Para isso existe a visão salva Com pacote, que aparece assim que houver ao menos um pacote utilizável.
5. O que o aluno vê
No aplicativo os pacotes ficam no painel, em Cartões: nome, saldo restante, marcações e data de vencimento. Ao tocar no cartão abre o detalhe com o histórico.

Depois de um check-in bem-sucedido, o aplicativo mostra qual pacote pagou e quantas aulas restam. Em um check-in recusado, mostra o motivo (esgotado ou vencido) para o aluno renovar no balcão.
Limites
- Um pacote vale para todas as aulas; não é possível restringi-lo a uma modalidade ou aula.
- Pacotes são vendidos no clube; não há compra pelo aplicativo.
- Não há aviso automático de saldo baixo ou vencimento próximo.
- Clientes de pacote não contam como alunos ativos nas análises -- esse número depende da matrícula.