Documento de análise · INOVE
Visão consolidada do produto Mototáxi | Táxi em Redenção-PA: o que cada app faz, como o despacho funciona, precificação recomendada, riscos e um roadmap realista do MVP à v2 — em português claro, para alinhar time e operação.
1 · Visão geral do produto
A INOVE conecta passageiros a motoristas credenciados de Mototáxi e Táxi em Redenção-PA. O dinheiro não passa pela plataforma: o app calcula e informa o valor; o pagamento é Dinheiro, PIX ou Cartão direto com o motorista.
Quem pede a corrida. Login por telefone + OTP.
Só para quem já foi credenciado no portal.
Admin da cooperativa / ponto de credenciamento.
Motorista não se cadastra sozinho. Credenciamento presencial no ponto + ativação no portal. O app só autentica telefone já liberado. Isso reduz fraude e alinha com a operação local de Redenção-PA.
2 · Requisitos funcionais
Lista do que o sistema precisa fazer no MVP, agrupada por quem usa.
Passageiro
| ID | Requisito | Prioridade | Notas |
|---|---|---|---|
| P-01 | Login por telefone + OTP SMS | Must | Sem senha |
| P-02 | Informar origem (GPS) e destino obrigatório | Must | Dentro da geofence |
| P-03 | Escolher tipo: Mototáxi ou Táxi | Must | Respeita toggles do portal |
| P-04 | Ver valor estimado e forma de pagamento (info) | Must | Dinheiro / PIX / Cartão |
| P-05 | Solicitar corrida e acompanhar status | Must | Estados §4 |
| P-06 | Ver motorista no mapa + ETA | Must | Realtime GPS |
| P-07 | Chat e/ou ligação com motorista | Should | MVP: ao menos ligação |
| P-08 | Cancelar com motivo | Should | Métricas de abandono |
| P-09 | Avaliar corrida (estrelas) | Should | Pós-finalização |
| P-10 | Histórico de corridas | Should | Lista simples |
| P-11 | Cupom de desconto | Could | Portal cria códigos |
| P-12 | SOS / compartilhar viagem / favoritos | Could | v1.1+ |
Motorista
| ID | Requisito | Prioridade | Notas |
|---|---|---|---|
| M-01 | Login só se telefone estiver Ativo no portal | Must | Sem auto-cadastro |
| M-01b | Uma modalidade fixa (Mototáxi ou Táxi) | Must | Definida no credenciamento |
| M-02 | Status Indisponível / Disponível / Em viagem | Must | Padrão: Indisponível |
| M-03 | Receber oferta com timeout 25–30s | Must | Push + tela cheia |
| M-04 | Aceitar ou recusar oferta | Must | Recusa → próximo |
| M-05 | Navegação / abrir no Maps | Must | Até origem e destino |
| M-06 | Confirmar “No local” e “Iniciar / Finalizar” | Must | Avança estados |
| M-07 | Ver forma de pagamento informada | Must | Só informativo |
| M-08 | Dashboard: corridas, ganhos, aceitação | Should | Dia / semana |
| M-09 | Alerta docs vencendo | Could | CNH / CRLV |
Admin (Portal)
| ID | Requisito | Prioridade | Notas |
|---|---|---|---|
| A-01 | Credenciar motorista (docs, veículo, ponto, 1 modalidade) | Must | Mototáxi XOR Táxi |
| A-02 | Configurar tarifas por tipo | Must | Bandeirada + km + mín |
| A-03 | Definir região (polígono ou raio) | Must | Redenção-PA |
| A-04 | Ativar/desativar Mototáxi e Táxi | Must | Operações |
| A-05 | Dashboard KPIs do dia | Should | Corridas, online, aceitação |
| A-06 | Cupons (% / fixo / 1ª / horário) | Should | Acordo de desconto local |
| A-07 | Listagem e detalhe de corridas | Should | Suporte a disputas |
| A-08 | Monitoramento em mapa ao vivo | Could | v1.1 |
| A-09 | Comissão / repasse financeiro | Could | Só se houver modelo |
| A-10 | Relatórios exportáveis | Could | CSV / PDF |
3 · Requisitos não funcionais
Sem esses pilares, a experiência “parecida com Uber/99” não segura na prática.
| Tema | Requisito | Meta sugerida |
|---|---|---|
| GPS realtime | Posição do motorista em viagem atualizada com frequência alta; passageiro vê no mapa. | Update ≤ 3–5s em viagem; ≤ 15s ocioso |
| Push | Oferta ao motorista e mudanças de status ao passageiro (aceita, a caminho, no local…). | Entrega < 2s na mediana (rede ok) |
| Geofencing | Origem/destino só dentro da área Redenção-PA (polígono ou raio). | Bloqueio client + server |
| LGPD | Telefone, localização e histórico são dados pessoais. Base legal, consentimento, retenção e exclusão. | Política + termo no 1º acesso |
| Offline parcial | Motorista em área com sinal fraco: fila de eventos (aceite, status) com retry; não perder finalização. | Retry exponencial + idempotência |
| Performance | Apps leves (Flutter-ready); cold start aceitável; mapa sem travar em aparelhos médios. | Splash < 2s; 60fps UI alvo |
| Segurança | Auth por OTP; tokens curtos; APIs autenticadas; rate limit em SMS e login. | Sem segredo no app; HTTPS only |
| Disponibilidade | Matching e status críticos com alta disponibilidade no horário comercial local. | Monitorar erros e latência |
4 · Fluxo de despacho (matching)
Quando o passageiro solicita, o backend oferece a corrida ao motorista mais próximo (mesmo tipo, Disponível, dentro da região). Se não responder em 25–30s, passa ao próximo — e assim por diante.
Estados da corrida
| Estado | Quem dispara | O que o passageiro vê | O que o motorista vê |
|---|---|---|---|
| Solicitada | Passageiro | “Procurando…” | — |
| Ofertada | Sistema | Buscando (ainda) | Sheet com timer |
| Aceita | Motorista | Dados do motorista | Navegar até origem |
| A caminho | Motorista / auto | Mapa + ETA | Rota ativa |
| No local | Motorista | “Motorista chegou” | Aguarda embarque |
| Em viagem | Motorista | Rota ao destino | Navegar + finalizar |
| Finalizada | Motorista | Valor + avaliação | Ganho registrado |
| Cancelada | Qualquer / sistema | Motivo + opção nova | Volta a Disponível |
Tempo curto demais frustra o motorista (não lê a oferta). Tempo longo demais deixa o passageiro “pendurado”. 25–30s é o sweet spot de apps de transporte — dá para ajustar depois com dados reais de Redenção.
5 · Pagamento
A INOVE não processa pagamento. O passageiro escolhe como pretende pagar; o motorista recebe na hora. Isso simplifica o MVP (sem PSP, split, chargeback) e mantém o modelo local de Mototáxi/Táxi.
Troco combinado verbalmente. App só marca a preferência.
Chave do motorista (fora do app) ou QR na maquininha pessoal.
Maquininha do motorista. App não tokeniza cartão.
Riscos e mitigações
| Risco | Impacto | Mitigação |
|---|---|---|
| Passageiro muda a forma na hora | Fricção / discussão | Confirmação verbal no embarque; status “forma preferida”, não contrato |
| Disputa de valor | Suporte / reputação | Valor estimado claro + recibo simples no app (PDF/tela) com trecho e preço |
| Cupom sem “caixa” da plataforma | Quem absorve o desconto? | Política da cooperativa: desconto acordado com o motorista ou fundo local |
| Corrida sem pagamento | Prejuízo do motorista | Avaliação, bloqueio de abusadores, histórico; mediação no ponto |
| Expectativa de “pago no app” | Confusão UX | Copy explícita: “Você paga direto ao motorista” |
6 · Precificação
Uber, 99 e Maxim usam variações de bandeirada + distância + tempo, com dinâmico em picos. Em cidade média/pequena, o MVP deve ser previsível e fácil de explicar no ponto.
| Modalidade | Quando usar | Fase | Recomendação |
|---|---|---|---|
| Bandeirada + R$/km + mínimo | Dia a dia, fácil de auditar | MVP | Adotar agora · fórmula no portal |
| Valor único por viagem | Trechos muito padronizados | Opcional MVP | Modo alternativo no portal (já previsto na UI) |
| Valor fixo por zonas | Bairros ↔ centro com preço fechado | Fase 2 | Depois que a geofence estiver estável |
| Dinâmico / pico | Chuva, eventos, pouca frota | Fase 2+ | Só com comunicação clara ao passageiro |
| Cupons (1ª corrida, %, fixo, horário) | Aquisição e campanhas locais | Should | Definir quem absorve o desconto |
preço = max(mínimo, bandeirada + km × R$/km + espera_extra × R$/min)
· Calcular no servidor · Mostrar estimativa antes de confirmar · Recibo simples no fim.
7 · Melhorias sugeridas (priorizadas)
Priorização MoSCoW para não tentar entregar “Uber completo” no dia 1. Foque no Must; o Should entra se o ritmo permitir; Could é backlog consciente.
Sem destino, sem estimativa nem matching confiável.
Tempo estimado até o embarque e, em viagem, até o destino.
Bloquear pedidos fora de Redenção-PA com mensagem clara.
Espera longa, errou endereço, mudou de ideia…
Estrelas pós-corrida e lista das últimas viagens.
Botão de emergência com contato local / ligação rápida.
Link ao vivo para familiar acompanhar.
Casa, trabalho, ponto de referência da cidade.
25–30s com feedback visual; silêncio = recusa.
Indisponível / Disponível / Em viagem — sem ambiguidade.
Botões “No local”, “Iniciar”, “Finalizar”.
Deep link Google/Apple Maps ou mapa embutido.
Visível no dashboard; base para ranking e coaching.
Aviso no app + alerta no portal (CNH/CRLV).
CNH, CRLV, foto, veículo, ponto.
Corridas, frota, aceitação — export CSV.
Detalhe da corrida: trajeto, horários, valor, avaliações.
Frota online ao vivo para o despachante do ponto.
Só se a cooperativa cobrar % — senão, fora do escopo MVP.
8 · Riscos legais e operacionais
Transporte local e dados pessoais pedem cuidado. Nada disso impede o MVP — mas precisa estar no radar da operação em Redenção-PA.
É um ponto forte (confiança), mas vira gargalo se a demanda crescer. Documentar o checklist do ponto e treinar quem ativa no portal.
Mototáxi e táxi podem ter regras locais (alvará, ponto, identificação). Validar com a prefeitura / sindicato antes de campanhas grandes.
Telefone + GPS + histórico = dado sensível na prática. Termo de uso, política de privacidade, retenção e pedido de exclusão.
Menos compliance financeiro, mais disputa humana. Recibo simples + avaliação + mediação no ponto mitigam.
Cascata esgota sem motorista → frustração. Monitorar taxa de não-atendimento e horários de pico locais.
Foto, placa, avaliação e (depois) compartilhar viagem / SOS. Credenciamento presencial já é a primeira camada.
Software não substitui autorização local. A INOVE organiza a operação — a conformidade com regras de Redenção-PA continua com a cooperativa / pontos.
9 · Roadmap
Entregas em marcos visíveis. Cada fase precisa ser testável na rua — não só no Figma.
Passageiro pede → motorista recebe oferta a tempo → aceita → chega → finaliza → valor combinado é pago fora do app → admin vê a corrida no portal. Se esse loop roda estável em Redenção-PA, vocês já têm produto.
INOVE · Análise de requisitos · Mototáxi | Táxi · Redenção-PA · Documento vivo — atualize após cada piloto