Yachtxchange: um aplicativo com acesso por perfil, cinco recursos de IA e infraestrutura com custo ocioso quase zero para corretoras de iates
Um diário de desenvolvimento do Yachtxchange — o SaaS B2B da SEYSO para corretoras de iates. Pense em navegação do nível do YachtWorld para compradores, mas vendida às corretoras como software por planos: um aplicativo móvel nas duas lojas, um portal de corretores que redige anúncios a partir de fotos em três minutos e uma conta de infraestrutura que arredonda para zero enquanto a corretora dorme.
1 app
Ambas as lojas, acesso por função
5
Funções, uma base de código
30→3
Minutos por anúncio
~$0
Infraestrutura ociosa por tenant
A proposta inicial: corretoras compram software, compradores ganham um marketplace
Marketplaces de iates monetizam anúncios; as corretoras que fazem o trabalho real ainda usam planilhas, pastas de fotos e descrições copiadas do Word. Escrever um bom anúncio — título, texto para compradores, inventário de equipamentos e notas de conservação — leva cerca de trinta minutos por embarcação, e a falta de consistência aparece na página de qualquer corretora.
O Yachtxchange inverte o modelo: a corretora é o cliente . Ela assina um plano, recebe um portal que faz o trabalho tedioso e seu inventário alimenta uma experiência de compra que parece um marketplace de primeira classe — web e móvel nativo — sem que a corretora desenvolva nada.
Quatro planos, aplicados no código — não em um PDF
Individual por $99/mês (5 anúncios, 1 usuário), Pro por $299 (25 anúncios, 3 usuários, pontuação de leads), Corretora por $799 (100 anúncios, 10 usuários, inteligência de preços) e um plano Empresarial personalizado com acesso à API e marca branca. O interessante é onde ficam os limites: ensureCanCreateListing , ensureCanAddSeat e ensureAiCreditsAvailable são controles chamados dentro de Server Actions e rotas de API, com Stripe como fonte de referência e um webhook que espelha o status da assinatura localmente. Sem limites baseados em boa-fé nem tarefa noturna de conciliação.
O uso de IA é medido da mesma forma — cada chamada ao copiloto grava uma linha na tabela usage_events , para que os créditos do plano possam ser contados, faturados e auditados desde o primeiro dia.
Cinco perfis, uma base de código — e corretoras que se organizam sozinhas
Existe exatamente um aplicativo móvel nas duas lojas e um aplicativo web em um domínio. O que você vê depende de quem você é:
buyerCadastro autônomo. Navegue, salve buscas e contate corretores.
broker_leadPrimeiro cadastro do domínio de e-mail de uma corretora. Permissões completas de corretor, além de faturamento e gestão de equipe.
broker_backupSegundo cadastro do mesmo domínio. Permissões completas — e promoção automática a responsável se o titular sair. A sucessão é uma regra de provisionamento, não um chamado de suporte.
broker_agentConvidado pelo responsável ou suplente. Anúncios e leads, configuráveis por usuário.
adminEquipe Yachtxchange. Administração completa da plataforma.
As corretoras correspondem a Clerk Organizations , e a coordenação entre responsável, suplente e corretor fica em um único módulo de provisionamento. Um pequeno controle de enorme importância: domínios de e-mail gratuitos — Gmail e similares — nunca são associados automaticamente a uma corretora existente, de modo que um desconhecido com Gmail nunca pode entrar no ambiente de outro cliente.
O monorepositório: esquemas Zod são o contrato
Dois aplicativos — apps/web (Next.js 16 App Router, grupos de rotas para marketing, comprador, corretor e administrador) e apps/mobile (Expo + EAS) — se apoiam em seis pacotes compartilhados: db (Drizzle ORM no Neon), auth (encapsuladores Clerk e provisionamento), ai, billing , ui e types . O pacote types é a peça central: os esquemas Zod são o contrato único compartilhado por Server Actions web, rotas de API, cliente de API móvel e ferramentas de IA. Uma alteração de esquema se propaga por todos os lugares que o compilador consegue verificar.
Um modelo de dados que vai além do anúncio
O diretório de esquemas conta a verdadeira história do produto: anúncios, leads, ofertas, agendamentos, vistoriadores e um cofre de documentos. O Yachtxchange está construindo discretamente a sala de negociação, não apenas a vitrine.
Multicliente por disciplina
Cada linha pertencente a um cliente carrega um brokerage_id e cada consulta filtra por ele ou fica atrás de um controle de administrador. Valores monetários são armazenados em centavos como bigint — nunca float.
A camada de IA: cinco recursos, nenhuma dependência de fornecedor
Tudo passa pelo Vercel AI Gateway com simples strings "provider/model" — sem SDK de fornecedor embutido na base de código, então trocar modelos ou fazer testes A/B exige mudar uma string, com observabilidade e alternativas de contingência incluídas.
Copiloto de anúncios — o recurso de 30 para 3
O corretor envia fotos e especificações em tópicos; um modelo de visão retorna um rascunho estruturado via generateObject conforme um esquema Zod: título SEO, descrição de 3–5 parágrafos para compradores, destaques visíveis sem rolar a página, lista de equipamentos inferida das fotos, nota de conservação e tags automáticas. Duas decisões de projeto importam mais. O prompt proíbe especificações inventadas — somente o que foi fornecido ou pode ser inferido visualmente. E o esquema inclui um array warnings que revela contradições e afirmações que precisam de verificação, para que o corretor revise alertas em vez de revisar textos. A criação de anúncios cai de ~30 minutos para ~3.
Busca semântica
Similaridade de cosseno do pgvector sobre embeddings de anúncios — “trawler estável para o Great Loop abaixo de 400k” funciona, não apenas filtros de marca/modelo.
Pontuação de leads
Consultas classificadas de 0–100 com uma próxima ação recomendada — corretores do plano Pro deixam de triar a caixa de entrada por intuição.
Extração de vistorias
Dados estruturados extraídos de PDFs de vistorias navais — o documento de que toda negociação depende, finalmente legível por máquina.
Verificação de vistoriadores
Sinais de antecedentes no cadastro de vistoriadores alimentando o fluxo de agendamentos — confiança codificada.
Com estrutura preparada para os próximos passos: inteligência de preços, melhoria e etiquetagem automática de fotos, busca por imagem, tradução e detecção de fraude por fotos duplicadas.
A economia: uma infraestrutura que fica ociosa a custo zero
As margens do SaaS B2B são construídas nas escolhas de infraestrutura. Uma corretora fica ativa talvez oito horas por dia — as tecnologias são escolhidas para que as outras dezesseis não custem nada:
Preço da Vercel por CPU ativa — pague por CPU durante o trabalho real — não enquanto uma função espera pelo banco de dados ou por uma chamada de IA.
Escalonamento a zero do Neon — O custo de computação do Postgres cai para $0 quando ocioso. Uma corretora ativa 8 h/dia paga por 8 h.
Uma implantação multicliente — todas as corretoras compartilham um projeto e um banco de dados, isoladas por brokerage_id — sem infraestrutura por tenant para supervisionar.
Reutilização de instâncias do Fluid Compute — requisições simultâneas compartilham instâncias já aquecidas; inicializações a frio são a exceção, não a regra.
O verdadeiro limite de custos é o armazenamento de fotos e vídeos — anúncios de iates são pesados. Já existem medidas de mitigação (redimensionamento e AVIF no envio, cache agressivo), com um gatilho acordado previamente: se as contas de saída de dados passarem de ~$500/mês, o armazenamento vai para R2. Definir os critérios de saída antes da conta chegar é a revisão de arquitetura mais barata que você fará.
Situação atual
Web e aplicativo móvel já rodam com o esquema ativo — navegação de compradores, portal de corretores com copiloto de anúncios, cobrança por planos e aplicativo móvel por perfil funcionam em desenvolvimento privado. Os perfis de compilação EAS estão configurados para envio às lojas. A área de negociação (ofertas, agendamentos, programação de vistoriadores e cofre de documentos) é entregue sobre o esquema já existente.
Se você dirige uma corretora e acha que vale testar a redução de 30 para 3 minutos por anúncio no seu próprio inventário, estamos abrindo um número limitado de conversas para pilotos.
Converse conosco sobre um piloto
O Yachtxchange é desenvolvido pela equipe por trás de LiftCrew AI, Sentinel e Liftline — e o mesmo modelo de assinatura sustenta nossa oferta de Aplicativos Móveis como Serviço.