Portal do Desenvolvedor
O portal do desenvolvedor Levy Fleets e onde desenvolvedores terceirizados se registram como fornecedores, constroem plugins, testam em sandbox e os enviam para revisao no marketplace. Ele vive em /developers e e aberto a todos - nenhum requerimento ou chamada de vendas necessario.
Construir um plugin e aberto a todos
Desenvolvedores solo, agencias, grandes fornecedores - qualquer um pode se registrar e enviar. Levy Plugins e um marketplace publico, nao um programa de parceiros curado.
Quem constroi plugins
- Fornecedores com um produto existente - Veriff, Cover Genius, Captur.ai construiram plugins porque ja tinham um SaaS que se encaixava. Plugin = distribuicao para operadores Levy.
- Desenvolvedores indie - pontuacao de deteccao de fraude, analytics personalizado, integracoes IoT de nicho. A Levy e um lugar para monetizar uma pequena ferramenta focada.
- Agencias construindo para clientes - plugins construidos por agencias para um cliente de frota especifico podem ser listados como privados ou publicos.
- Operadores Levy existentes - as vezes uma frota constroi uma ferramenta interna util para outros clientes Levy e a lista.
O que voce precisa
Para enviar um plugin, voce precisara de:
- Um perfil de fornecedor - nome, e-mail de suporte, homepage, logo opcional da empresa
- Um Acordo de Parceiro de Plugin assinado - termos juridicos padrao (notificacao de violacao em 24h, propriedade de IP, rescisao)
- Um endpoint de webhook funcionando - URL HTTPS que aceita POSTs assinados da Levy
- Um manifesto
plugin.json- veja schema abaixo - Capturas de tela - pelo menos uma, recomendado tres (1280x800 PNG/JPG)
- Uma descricao longa - conteudo Markdown para a pagina de detalhes do marketplace
- (Para plugins pagos) Conta Stripe Connect Express - a Levy o guiara pelo onboarding
O manifesto
Cada plugin entrega um manifesto plugin.json (ou .yaml). Forma TypeScript completa:
type PluginManifest = {
slug: string; // 'my-fraud-tool' — minusculas, separado por hifens, unico
version: string; // semver, ex. '1.0.0'
name: string; // nome de exibicao
vendor: {
name: string;
email: string;
url: string;
};
category: 'kyc' | 'insurance' | 'parking' | 'analytics'
| 'notifications' | 'iot' | 'payments' | 'workflow' | 'other';
description: string; // 1-2 frases para cartoes
long_description_mdx?: string; // corpo da pagina de detalhes (Markdown)
screenshots: string[]; // URLs CDN
homepage: string;
support_url: string;
permissions: PluginPermission[];
webhook_subscriptions: LevyEvent[];
webhook_endpoint: string; // sua URL que a Levy fara POST
config_schema: JSONSchema7; // renderizado como formulario durante a instalacao
oauth?: {
authorize_url: string;
token_url: string;
scopes: string[];
};
pricing: PluginPricing;
ui_mounts?: UIMount[]; // apenas v4
};
Veja Enviando um plugin para referencia completa do schema e exemplos campo a campo.
Permissoes que voce pode solicitar
A Levy usa permissoes finas e com escopo. Solicite apenas o que voce precisa - escopos extras prejudicam sua taxa de aprovacao e sua taxa de instalacao de operador.
| Escopo | Caso de uso |
|---|---|
read:rides | Dados de corrida sem preco |
read:rides.geo | Trilhas GPS e coordenadas |
read:rides.financial | Precos, taxas, repasses |
write:rides.flags | Flags de fraude, pontuacoes de estacionamento |
write:rides.tags | Tags de categorizacao |
read:customers | IDs anonimizados de passageiros |
read:customers.pii | Nomes, e-mails, telefones - classe administrativa |
write:customers.tags | Marcar passageiros (status KYC, etc.) |
write:customers.notes | Adicionar notas de operador |
read:vehicles | Inventario de frota |
write:vehicles.status | Bloquear / desbloquear - classe administrativa |
write:vehicles.notes | Notas de manutencao |
read:payouts | Registros de repasse a parceiros |
read:zones | Definicoes de zona |
write:zones | Criar/editar zonas - classe administrativa |
read:webhooks | Replay de log de eventos |
A permissao write:rides.cost nao existe. Plugins nao podem alterar tarifas de corrida - isto e reservado para o nucleo Levy para proteger a contabilidade de reembolsos. Se voce precisa emitir um reembolso, solicite a equipe de parcerias para adicionar um fluxo de reembolso-contra-a-corrida.
Eventos que voce pode assinar
ride.created, ride.started, ride.ended, ride.cancelled, ride.adjusted
vehicle.status_changed, vehicle.battery_low, vehicle.offline
customer.created, customer.kyc_completed, customer.suspended
payment.captured, payment.refunded, payout.completed
zone.entered, zone.exited, zone.violation
support.ticket_created
Assine o conjunto minimo que voce precisa. Cada entrega de evento e um POST para seu webhook_endpoint com assinatura HMAC-SHA256 no cabecalho X-Levy-Signature.
Sandbox
Antes de enviar, voce obtera acesso a uma subconta sandbox com dados sinteticos de corrida, veiculo e cliente. Dispare eventos de teste do portal do desenvolvedor para verificar seu endpoint de webhook, a renderizacao do seu formulario de configuracao e seu fluxo de autenticacao.
Eventos sandbox sao claramente marcados com "environment": "sandbox" para que voce possa ramificar seu codigo.
Fila de revisao e SLA de 5 dias
Quando voce envia um plugin, ele entra na fila de revisao Levy. Nossa equipe de operacoes revisa:
| Verificacao | O que olhamos |
|---|---|
| Validade do manifesto | Conformidade com schema, JSON valido |
| Necessidade de permissao | Todos os escopos solicitados sao realmente usados? |
| Postura de privacidade | Como os dados do passageiro sao tratados, armazenados, excluidos? |
| Confiabilidade do webhook | Seu endpoint responde corretamente a eventos de teste? |
| Justica de precos | O preco esta na faixa razoavel (US$ 0-999/mes ou por evento)? |
| Acordo de fornecedor | Assinado e atual? |
| Capturas de tela e descricao | Precisas, sem alegacoes enganosas? |
SLA de revisao de 5 dias: visamos lhe dar uma decisao (aprovar, solicitar mudancas, rejeitar) dentro de 5 dias uteis. A maioria das revisoes completa em 2-3 dias. Voce recebe atualizacoes por e-mail conforme a revisao avanca.
Se solicitarmos mudancas, voce pode reenviar a qualquer momento e o relogio SLA reinicia. Reenvios normalmente completam em 1-2 dias.
Divisao de receita
Fornecedores de plugin recebem 80% da receita bruta do plugin; a Levy cobra uma taxa de plataforma de 20%. Parceiros estrategicos podem negociar ate 10% (a Levy fica com menos) por valor estrategico, ou ate 30% para plugins de nicho onde a Levy fornece aquisicao de cliente significativa.
O Stripe Connect lida com repasses. Voce faz onboarding uma vez durante o registro de fornecedor. Faturas mensais sao geradas automaticamente; repasses chegam 7 dias apos o pagamento do operador.
Obrigacoes pos-lancamento
Uma vez que seu plugin esteja ativo:
- SLA de notificacao de violacao de 24 horas - se voce tiver um incidente de seguranca afetando dados de operadores Levy, notifique-nos em 24 horas.
- Atestacao SOC 2 anual - se voce processa PII, pedimos seu relatorio SOC 2 anualmente.
- Manutencao - mantenha seu endpoint de webhook saudavel. Plugins com >7 dias de falhas continuas de webhook sao desativados automaticamente em todas as instalacoes.
- Tempo de resposta de suporte - operadores esperam respostas em 1 dia util para sua
support_url. - Atualizacoes de versao - versoes patch e minor sao atualizadas automaticamente para operadores instalados; versoes major exigem reconsentimento do operador.
Comecar
- Enviando um plugin - passo a passo completo de envio
- Visite
/developerspara registrar um perfil de fornecedor - Leia o Acordo de Parceiro de Plugin antes de comecar