Niveis de Recompensa
A Pontuacao classifica cada ciclista ativo em um de seis niveis. Cada nivel tem suas proprias vantagens e seu proprio teto mensal de credito. A atribuicao e automatica e recomputa apos cada viagem pontuada.
Navegacao
Edite niveis em Painel > Pontuacao do Ciclista > Configuracoes > Niveis.
Niveis padroes
| Nivel | Pontuacao | Vantagens padroes |
|---|---|---|
| Platina | 90+ | 10% desconto, 1 desbloqueio gratis/semana, reserva prioritaria |
| Ouro | 80-89 | 5% desconto, 1 desbloqueio gratis/mes |
| Prata | 70-79 | Credito bonus trimestral |
| Bronze | 50-69 | Precos padroes |
| Em Risco | <50 | Aumento de preco + intervencoes |
| Iniciante | <3 viagens | Nivel bloqueado, sem penalidades, selfie de capacete desbloqueia Prata |
Todos os limites sao editaveis. O nivel Iniciante nao pode ser excluido.
O que um nivel controla
Cada linha rider_score_tiers tem:
| Campo | Efeito |
|---|---|
min_score, max_score | Faixa de pontuacao |
unlock_discount_pct | % desconto na taxa de desbloqueio |
ride_discount_pct | % desconto no total da viagem |
free_unlock_count_per_month | Desbloqueios gratis por mes |
per_ride_credit_cents | Credito automatico por viagem qualificada |
monthly_credit_cap_cents_per_rider | Teto mensal por ciclista |
price_uplift_pct | Aumento positivo (so Em Risco) |
badge_color | Cor do badge do nivel |
perks | JSONB de texto de marketing |
Como recompensas alcancam o ciclista
Esta e a secao mais importante. Cada credito emitido pela Pontuacao flui pelo pipeline de reembolso de viagem.
O pipeline:
- Reward engine insere linha
rider_score_rewardscomstatus='pending'. - Linha
ride_refundse criada contra a viagem qualificadora. creditWalletForRefund({ referenceType: 'ride_refund', rideRefundId })e chamado.- Linha de recompensa e atualizada com IDs vinculados, depois
status='issued'.
Se o teto mensal por ciclista e excedido, marcamos como status='skipped_cap'.
Por que isso importa
Todos os creditos compartilham o mesmo encanamento contabil de um reembolso real. Nunca atualizamos wallet_balance diretamente. Nunca inserimos wallet_transactions manualmente.
Quando recompensas disparam
Tres tipos hoje:
| Tipo | Gatilho |
|---|---|
per_ride_credit | Em cada viagem qualificada para niveis com per_ride_credit_cents > 0 |
free_unlock_grant | Mensalmente para Ouro e Platina |
tier_promotion_bonus | Uma vez quando ciclista sobe para nivel mais alto (opcional) |
Teto mensal por ciclista
Padrao tipico: $10/mes Prata e abaixo, $25/mes Ouro, $50/mes Platina. Baseado em mes calendario.
Teto mensal por subconta
Defina um teto da frota em Configuracoes > Orcamento de recompensas. Quando atingido, linhas subsequentes ficam status='skipped_budget'.
Visibilidade para o ciclista
Ciclistas veem:
- Nivel atual e badge.
- Limite exato para proximo nivel.
- Lista de vantagens desbloqueadas.
- Historico de creditos com viagem vinculada.
O que ciclistas nao veem
- Snapshot interno de pesos.
- Pontuacoes de outros ciclistas (sem leaderboard publico na v1).
- O teto mensal da frota.
- Linhas de recompensa com
status='skipped_*'.
Vantagens de inicio frio para Iniciantes
Novos ciclistas em suas primeiras 3 viagens recebem vantagens de Prata se completarem a verificacao de capacete. Depois das 3 viagens, um nivel real e atribuido.
Transicoes de nivel e notificacoes
- Subida: push, comemoracao in-app,
tier_promotion_bonusopcional. - Descida: push com o que mudou. Sem recompensa. Sem intervencao automatica.
Recomendacoes praticas
- Mantenha Platina raro. 3-5% dos ciclistas ativos e saudavel.
- Use creditos por viagem em vez de bonus grandes de promocao.
- Comece com tetos conservadores, afrouxe depois.
Proximo
Veja Escada de Intervencao para as respostas automaticas do nivel Em Risco.