Etapas do Projeto Bora
Transparência total: o que já construímos, o que está em fase de teste e o que falta até o piloto em Esmeraldas/MG e as lojas de aplicativo. Atualizado em 28/08/2026.
Cada etapa abaixo se desdobra em dezenas de peças. Mapeamos ~210 itens comparando peça por peça com o que Uber e 99 oferecem hoje — e classificamos cada um: o que é paridade obrigatória, o que vamos fazer melhor e o que é exclusivo do Bora.
104 entregues ou em teste40 desenhadas · ~130 pela frenteRumo ao piloto
Painel de testes · piloto fechado
Como vamos testar: uma etapa por vez
Cada etapa só começa quando a anterior passou. A última é a corrida inteira — porque ela
depende de todas as outras funcionarem juntas.
Marque cada item conforme testar. O que você marcar fica salvo neste navegador.
Régua de honestidade: "PRONTO" aqui significa ensaiado por
roteiro automático contra o servidor. Só vira operacional
quando uma pessoa passar por ele num celular de verdade. Estado oficial de cada frente:
docs/GO_LIVE_CHECKPOINT.md.
0 de 0 conferidospiloto fechado, por convite
1
Entrar no Bora
Will, Carol e Leo · 10 minutos
PRONTO
O acesso é por convite nominal: o link vale para um único celular e é ele que
confirma que o número é seu. Enquanto o SMS não existe, é o convite que segura a porta.
Ensaiado antes de você. Um roteiro automático percorre esta etapa inteira pelo mesmo
caminho que você vai percorrer — número comum, convite de verdade, arquivo do tamanho de
uma foto de celular. Foi ele que achou os cinco defeitos corrigidos hoje.
- Abrir o link do convite e ver seu nome na tela
- Receber o código, entrar, preencher nome e nascimento
- Ler os termos abrindo de verdade e aceitar
- Fechar o app, abrir de novo e continuar logado
- Em "Seus aparelhos", sair de todos e confirmar que o outro aparelho caiu na hora
- Digitar um e-mail sem convite e ser recusado — tem que barrar, sem dizer se o e-mail existe
2
Cadastro do motorista
Will e Leo · 20 minutos cada
PRONTO
São 11 etapas com documento, foto e dados do veículo. O teste de verdade não é preencher
tudo certo — é parar no meio, fechar o app e voltar depois.
- Enviar CNH com EAR, CRLV, selfie, antecedentes e fotos do veículo
- Sair no meio e voltar: tem que retomar exatamente onde parou
- No painel de operação, abrir o cadastro e ver a selfie ao lado da CNH
- Tentar aprovar sem marcar o checklist — o servidor tem que recusar e listar o que faltou
- Recusar uma etapa com motivo e conferir se o motorista lê o motivo
- Corrigir o que foi recusado e ser aprovado
- Tentar ficar online antes da aprovação — tem que barrar
3
Perfil do passageiro
Carol · 10 minutos
PRONTO
- Cadastrar um cartão em Perfil → Pagamento — o número não sai do celular; a tela mostra só o final
- Salvar "Casa" e "Trabalho" e conferir que salvar Casa de novo troca o endereço, não duplica
- Cadastrar contato de emergência — o próprio número é recusado, de propósito
- Pedir cópia dos próprios dados e conferir o arquivo
- Pedir exclusão da conta, ver o prazo de 30 dias e depois cancelar o pedido
4
Motorista na rua
Will em SP e Leo em Esmeraldas · dirigindo
CODIFICADO · FALTA CARRO REAL
Esta etapa não se testa parado. É a única que exige carro andando: mapa girando na direção
do movimento, a seta do Bora seguindo o carro e a troca de visual entre dia e noite.
- Ficar online e ver a seta do Bora andar no mapa junto com o carro — o app do motorista ganhou mapa: fora de corrida, norte para cima; em corrida, o mapa gira com o carro e inclina, na pegada Waze
- Aceitar uma corrida e ver a faixa "X min até o passageiro" com a rota desenhada — o ETA é pela rota real, e é o mesmo que o passageiro vê como "chega em X min"
- Conferir o mapa de dia e de noite — o visual muda pelo relógio
- Entrar em túnel ou área sem sinal e ver o app se recuperar sozinho
- Ficar 20 minutos online e conferir se o consumo de bateria é aceitável
- Ficar offline e confirmar que parou de receber oferta
5
O celular toca com o app fechado
Will e Leo · 5 minutos
CODIFICADO · FALTA APARELHO
Uma corrida que chega só quando o app está aberto é uma corrida perdida. Este é o teste que
separa aplicativo de brinquedo.
- Autorizar notificação e receber uma de teste com o app fechado
- Conferir a oferta com o app aberto, em segundo plano e fechado, no iPhone e no Android — respeitando as permissões e o modo Foco do próprio aparelho; o critério é chegar de forma confiável, não "furar" configuração do sistema
- Tocar na notificação e cair direto na tela da oferta
- Deixar a oferta expirar e conferir que a notificação velha não abre nada
6
Dinheiro, sem corrida ainda
Will · as telas já existem; o dinheiro real depende da chave Pagar.me
METADE PRONTA
Pagamento se testa isolado, antes de misturar com corrida. Se o dinheiro falhar
junto com o trânsito, ninguém sabe qual dos dois quebrou.
- Cadastrar cartão de teste e cobrar R$ 1,00 — com o provedor de mentira já dá; com dinheiro real espera a Pagar.me
- Ver a divisão: quanto foi do motorista, quanto do Bora, quanto de taxa
- Conferir "disponível" e "a receber" separados em Ganhos — tela pronta
- Sacar pelo Bora Agora e ver a taxa aparecer antes de confirmar — tela pronta; no piloto o saque é simulado
- Cartão recusado, webhook repetido e fora de ordem, duplo clique em sacar — ensaiados com o provedor de mentira: 38 conferências, e acharam dois bugs de dinheiro que já estão corrigidos
- Fechar o razão: a soma de tudo tem que dar exatamente zero — conferido em todas as partidas
7
Código por e-mail para todo mundo
Will · depende do domínio na Resend
ESPERA VOCÊ
Hoje o e-mail chega só para o Will (chave restrita). Com o domínio oborateleva.com
na Resend, chega para todos — e SMS sai do plano: posse de um número não prova quem a
pessoa é; o cadastro do motorista prova.
- Carol e Léo digitam o e-mail e recebem o código em aparelho real
- Confirmar que o código nunca aparece na tela para gente de verdade
- Pedir código 6 vezes seguidas e ser barrado pelo limite
- Tocar em "Reenviar" e o código anterior deixar de valer
- Entrar com Google com o mesmo e-mail e cair na mesma conta
8
A comunidade do Leo entra
Leo + testadores de Esmeraldas
PRONTO
Até aqui foram três pessoas conhecidas. Agora entra gente que não estava na sala quando o
app foi feito — e é ela que encontra o que a gente não vê.
- Convidar cada pessoa pelo painel e mandar o link individual
- Ver quem entrou e quem ficou parado na lista de convites
- Dois motoristas online e dois passageiros pedindo ao mesmo tempo
- A mesma corrida ofertada a dois: só um consegue aceitar
- Revogar um convite e confirmar que a pessoa perde o acesso
9
A corrida inteira, do play ao pagamento
Carol chama, Will dirige · a etapa que depende de todas
POR ÚLTIMO
Só faz sentido rodar quando 1 a 8 passaram. Aqui não se testa uma peça: testa-se o Bora.
- Carol pede a corrida e vê o preço fechado antes de confirmar
- A oferta chega no celular do Will com o líquido dele e "até o embarque: X min" — o motorista escolhido é o que chega primeiro pela rota, não o mais perto em linha reta
- Will aceita e navega até a Carol com o mapa na pegada Waze
- Carol acompanha o carro andando no mapa dela
- Carol manda "Estou na portaria" pelo chat e Will vê a bolinha — sem trocar telefone; tentar mandar um número tem que ser barrado
- Embarque com o PIN — o número certo entra, o errado não
- A viagem roda com trânsito real e a rota se ajusta
- Desembarque: Will finaliza e o preço bate com o combinado
- A cobrança acontece e o valor cai no saldo do Will
- Os dois se avaliam
- Carol aperta 🆘 no meio da viagem — a faixa vermelha aparece no painel em até 10 s, com a posição do carro
- Will aperta 🆘 online sem corrida e a operação registra "falso alarme" com texto
- Refazer cancelando no meio e conferir a regra de cancelamento
- Refazer com passageiro ausente e conferir a compensação do deslocamento
O que o ensaio pegou antes de vocês
Sete defeitos, achados percorrendo o cadastro em vez de olhar o código. Três deles
quebrariam o primeiro documento enviado ou a análise dele.
- Nenhuma foto de documento subia — não a partir de foto grande: a partir de 200 KB. Era o limite padrão da biblioteca de servidor, que ninguém nunca decidiu. O motorista travaria na CNH vendo "não conseguimos completar agora"
- A etapa aceitava o documento de outra pessoa — o identificador de um arquivo não é segredo, e não havia conferência de dono. Um motorista podia apontar a CNH de um terceiro como sendo a dele
- O motorista ficaria preso nos termos — ele aceitava, o servidor continuava pedindo, a tela mandava aceitar de novo. Sem erro nenhum, então a pessoa conclui que é ela que está errando
- O cadastro se aprovava sozinho — a CNH seria aprovada por ninguém, e a tela de análise da operação nunca receberia um caso
- CNH e CRLV eram aceitos sem o documento — a validação conferia o que a pessoa digita. A operação abriria a análise com a tela vazia
- A operação não conseguia abrir documento nenhum — o link para o arquivo não levava a credencial. A revisão humana, única defesa sem fornecedor de verificação, estava quebrada
- A tela dizia "prova de vida" sem existir prova de vida — renomeada. O que existe é a operação comparando a selfie com a CNH, item a item, com registro imutável de quem conferiu o quê
Nenhum deles aparecia nos testes automatizados, que somam 179 verdes: eles rodam por uma
faixa de números reservada, com um arquivo de cem bytes. Testar o caminho que ninguém
percorre dá sensação de cobertura sem cobertura — e essa é a lição que ficou no lugar
dos cinco defeitos.
O que ainda impede o dinheiro de verdade
Estas etapas rodam com pagamento de mentira. Para cobrar valendo, falta:
- Chave da Pagar.me e o ciclo financeiro fechado em sandbox — etapa 6
- Domínio do Bora na Resend — etapa 7; SMS saiu do plano (decisão ADR-003)
- Seguro de Acidentes Pessoais de Passageiros (APP)
- Consulta formal à Prefeitura de Esmeraldas respondida por escrito
- Termos revisados por advogado
- Monitoramento de erros ligado — hoje um erro em produção acontece em silêncio
Próximas etapas · rumo ao piloto e às lojas
- SMS real no login CONTRATAÇÃO
- Pagamento real: cartão + Pix em ambiente de testes do parceiro, depois produção CONTRATAÇÃO
- Monitoramento de erros 24/7 (a equipe fica sabendo antes do usuário)
- Cadastro completo do motorista: fotos guiadas, selfie com prova de vida, vistoria recorrente
- GPS ao vivo: posição do motorista no mapa do passageiro em tempo real
- Notificações push (oferta chega mesmo com o app fechado)
- Jurídico: CNPJ, regulamentação municipal de Esmeraldas, termos de uso, política de privacidade, seguro EM ANDAMENTO
- Testes de segurança e carga + checklist go/no-go (backup, restauração, planos de incidente)
- Piloto fechado em Esmeraldas: equipe → 3-5 motoristas âncora → passageiros convidados
- Apps nas lojas: App Store e Google Play (mesmo código, empacotado) + expansão de categorias (Elétrico, Pet, Taxi, Premium, Cargo, Elite) e Bora Coach
Fase 6 — Blindagem: auditoria e testes automáticos
Antes de crescer, garantir que o que existe não quebra
- Auditoria de segurança completa — revisão crítica de todo o código do servidor, com 12 problemas encontrados e corrigidos antes de qualquer passageiro real usar
- Duas pessoas nunca ficam com a mesma corrida — o banco agora garante uma única oferta ativa por viagem, e quem perde a disputa é avisado na hora
- Corrida concluída não pode ser desfeita — um cancelamento atrasado não apaga mais uma viagem que aconteceu de verdade nem o ganho do motorista
- Passageiro ausente só antes de embarcar — ninguém encerra uma viagem em andamento como se o passageiro não tivesse aparecido
- Motorista ocupado sai da fila — quem já está numa corrida não recebe outra e deixa alguém esperando
- Nenhuma corrida fica presa — um vigia automático encerra ou envia para revisão humana qualquer viagem parada em qualquer etapa
- Ganhos do dia corretos — o extrato passou a somar pelo horário de Brasília, não pelo relógio do servidor
- Proteção contra tentativa de invasão de conta — o limite de tentativas do código de acesso agora é à prova de ataques em paralelo
- Tempo de espera do motorista — quando ele chega e você não desce, o relógio corre: 2 minutos de tolerância sem cobrança e, depois, o tempo parado passa a ser trabalho pago. Você é avisado antes, durante e 60 segundos antes do fim
- Deslocamento até você também conta — o caminho que o motorista faz para te buscar é medido e compensado, algo que nenhuma plataforma paga como parcela própria hoje
- O motorista nunca fica refém — se ele chamou e você não respondeu, ele pode encerrar e seguir sem nenhuma penalidade: sem taxa, sem queda de nota, sem perder acesso a corridas
- Começamos medindo, não cobrando — nesta fase o app mostra ao motorista quanto ele teria recebido e não cobra ninguém. Os valores só serão definidos com dados reais de Esmeraldas, nunca por chute
- 79 testes automáticos — o caminho inteiro (login, pedido, corrida, PIN, pagamento, avaliação) é verificado a cada mudança, incluindo um teste para cada problema que já foi corrigido
Fase 7 — Justiça de reporte e apps prontos para teste
O fim do bloqueio silencioso — e os dois aplicativos com cara de produto
- Quem é acusado sabe do que é acusado — nada de conta bloqueada sem explicação: o motorista vê o teor da denúncia e envia sua versão com o vídeo da câmera antes de qualquer decisão
- Decisão feita por gente, com justificativa registrada — toda análise exige um porquê escrito e não pode ser refeita depois
- Desfecho simétrico — se a denúncia não se confirma, ela é anulada, a nota do acusado é restaurada e o registro passa a pesar sobre quem denunciou. Mentir tem custo
- Aplicativos completos — motorista com Rodar, Evolução, Ganhos e Perfil; passageiro com Pedir, Viagens e Perfil. Prontos para as primeiras pessoas testarem de verdade
Fase 8 — Onda Zero: confiança e dinheiro
A decisão de parar de criar recurso novo até o Bora ser confiável o bastante para colocar duas pessoas desconhecidas no mesmo carro
- O cadastro do motorista virou produto — onze etapas com barra de progresso, que salvam sozinhas e voltam exatamente de onde você parou. Quando algo é recusado, o app diz o que corrigir: "esta CNH está vencida", nunca "cadastro rejeitado"
- Documento de verdade, com foto — CNH, CRLV, selfie, antecedentes e fotos do carro. A imagem é comprimida no celular antes de subir, para quem está no 4G conseguir enviar. Nenhum documento tem link público: só o dono e a operação conseguem ver
- Bloqueia só o que precisa bloquear — falta a chave PIX? segue rodando e acerta antes do primeiro pagamento. Falta antecedentes? não roda
- Documento vencendo avisa antes — aos 30 e aos 7 dias. Ninguém é tirado da rua de surpresa
- Sair de todos os aparelhos — o botão do celular roubado. Vale na hora, e mantém conectado o aparelho de onde você pediu: quem acabou de ser assaltado precisa continuar resolvendo
- Excluir a conta pelo app — com 30 dias para desistir. E dizemos exatamente o que fica guardado por obrigação legal, em vez de prometer que apagamos tudo
- Baixar seus dados — um arquivo com tudo que temos sobre você: conta, corridas, avaliações, aparelhos e aceites
- Toda decisão sobre uma pessoa tem dono — aprovar, bloquear ou decidir uma denúncia fica registrado com quem fez e por quê. Bloqueio sem motivo escrito não passa
Fase 9 — Bora Minha Vida
Do "faturei R$ 180 hoje" para o "sobraram R$ 96" — a conta que nenhum aplicativo de corrida mostra
- Seu lucro real, não seu faturamento — o motorista informa combustível, consumo, parcela, seguro, IPVA e manutenção, e o app desconta tudo do que entrou. É o número que decide se vale a pena continuar rodando às 22h
- O quilômetro sem passageiro aparece — rodar 6 km para buscar uma corrida de 3 km é o que faz um dia cheio virar um dia perdido. O Bora mostra quanto isso custou, em reais
- "Vale a pena esta corrida?" — antes de aceitar, o motorista vê quanto sobra de verdade daquela corrida, já descontado o combustível de ir buscar
- É opcional e é dele — informar custo não influencia aprovação nem quanto o motorista recebe. E a meta é a que ele definiu, não a que a plataforma gostaria
Fase 10 — A porta de entrada e o celular tocando
A primeira impressão do Bora, e a notificação que chega mesmo com o aplicativo fechado
- Uma tela de entrada, não um formulário — quem abre o Bora vê primeiro alguém dentro de um carro e o que ganha ao usar o aplicativo. O login vem depois: ninguém baixa app de mobilidade por causa de um campo de telefone
- Entrar pelo celular, pelo Google ou pela Apple — no Brasil o telefone é a âncora da conta, porque é ele que recebe a corrida. Google e Apple ficam como alternativa, e a mesma pessoa que entra pelos dois continua sendo uma conta: nunca juntamos contas por e-mail sem confirmar, porque é assim que alguém perde a conta para quem controla um endereço parecido
- Termos e privacidade abrem de verdade — o texto vigente, servido na hora, com a versão registrada. Não é link decorativo
- Notificação nativa no iPhone e no Android — código escrito, ainda não homologado em aparelho real. A oferta expira em 30 segundos: entregar corrida velha é pior do que não entregar
- Documento vencido tira da rua sozinho — uma rotina diária avisa aos 30 e aos 7 dias e, no vencimento, retira o motorista da fila. Ninguém depende de lembrar
- A operação analisa cadastro etapa por etapa — com os documentos abertos na tela e motivo escrito obrigatório para recusar. Reprovar sem dizer o porquê deixou de ser possível
Os 12 bloqueadores do piloto real
Nada disso é opcional: sem estes itens, ninguém entra num carro do Bora pagando de verdade
- Seguro de Acidentes Pessoais de Passageiros (APP) contratado
- CNPJ e contrato social da operação
- Regulamentação municipal de Esmeraldas cumprida
- Termos de uso e política de privacidade publicados — escritos e no ar; aguardando revisão jurídica
- Pagamento real com repasse direto ao motorista e livro-caixa auditável
- Código de acesso por e-mail — sem senha e sem SMS; falta o domínio na Resend para chegar a todos
- GPS contínuo do motorista alimentando o mapa e o dispatch — a seta do Bora anda no mapa apontando para onde o carro vai
- Notificação de oferta com o app fechado — o servidor empurra a corrida e o celular toca
- Validação oficial de CNH/EAR no Denatran (Serpro Datavalid) — adaptador pronto, falta o contrato; hoje é revisão humana com checklist e evidência imutável
- Segurança em corrida: botão de emergência — 🆘 nos dois apps, na corrida e online; grava posição dos dois, avisa a operação com faixa vermelha e som, e os contatos por SMS quando houver; registro imutável por 60 meses
- Monitoramento de erros e backup testado
- Regras claras de cancelamento e de passageiro ausente — janela livre para cancelar, tolerância de espera e compensação do deslocamento, com o mesmo relógio para os dois lados