Entwicklerportal
Das Levy Fleets-Entwicklerportal ist der Ort, an dem sich Drittentwickler als Anbieter registrieren, Plugins erstellen, in der Sandbox testen und sie zur Marktplatz-Pruefung einreichen. Es lebt unter /developers und ist fuer alle offen - kein Antrag oder Verkaufsgespraech erforderlich.
Plugin-Entwicklung ist fuer alle offen
Einzelentwickler, Agenturen, grosse Anbieter - jeder kann sich registrieren und einreichen. Levy Plugins ist ein oeffentlicher Marktplatz, kein kuratiertes Partnerprogramm.
Wer Plugins erstellt
- Anbieter mit einem bestehenden Produkt - Veriff, Cover Genius, Captur.ai haben Plugins erstellt, weil sie bereits ein passendes SaaS hatten. Plugin = Distribution an Levy-Betreiber.
- Indie-Entwickler - Betrugserkennungs-Scoring, benutzerdefinierte Analytik, Nischen-IoT-Integrationen. Levy ist ein Ort, an dem ein kleines fokussiertes Tool monetarisiert werden kann.
- Agenturen, die fuer Kunden bauen - agentur-gebaute Plugins fuer einen bestimmten Flottenkunden koennen als privat oder oeffentlich gelistet werden.
- Bestehende Levy-Betreiber - manchmal baut eine Flotte ein internes Tool, das fuer andere Levy-Kunden nuetzlich ist, und listet es auf.
Was Sie benoetigen
Um ein Plugin einzureichen, benoetigen Sie:
- Ein Anbieterprofil - Name, Support-E-Mail, Homepage, optionales Firmenlogo
- Eine unterzeichnete Plugin-Partnervereinbarung - Standard-Rechtsbedingungen (24-Stunden-Datenpannen-Benachrichtigung, IP-Eigentum, Kuendigung)
- Ein funktionierendes Webhook-Endpunkt - HTTPS-URL, die signierte POST-Anfragen von Levy akzeptiert
- Ein
plugin.json-Manifest - siehe Schema unten - Screenshots - mindestens einer, empfohlen drei (1280x800 PNG/JPG)
- Eine lange Beschreibung - Markdown-Inhalt fuer die Marktplatz-Detailseite
- (Fuer kostenpflichtige Plugins) Stripe Connect Express-Konto - Levy fuehrt Sie durch das Onboarding
Das Manifest
Jedes Plugin liefert ein plugin.json- (oder .yaml-) Manifest. Vollstaendige TypeScript-Form:
type PluginManifest = {
slug: string; // 'my-fraud-tool' — Kleinbuchstaben, Bindestrich-getrennt, eindeutig
version: string; // semver, z. B. '1.0.0'
name: string; // Anzeigename
vendor: {
name: string;
email: string;
url: string;
};
category: 'kyc' | 'insurance' | 'parking' | 'analytics'
| 'notifications' | 'iot' | 'payments' | 'workflow' | 'other';
description: string; // 1-2 Saetze fuer Karten
long_description_mdx?: string; // Detailseiten-Body (Markdown)
screenshots: string[]; // CDN-URLs
homepage: string;
support_url: string;
permissions: PluginPermission[];
webhook_subscriptions: LevyEvent[];
webhook_endpoint: string; // Ihre URL, an die Levy POSTen wird
config_schema: JSONSchema7; // wird als Formular waehrend der Installation gerendert
oauth?: {
authorize_url: string;
token_url: string;
scopes: string[];
};
pricing: PluginPricing;
ui_mounts?: UIMount[]; // nur v4
};
Siehe Plugin einreichen fuer vollstaendige Schema-Referenz und feldweise Beispiele.
Berechtigungen, die Sie anfordern koennen
Levy verwendet feingranulare, geltungsbeschraenkte Berechtigungen. Fordern Sie nur das an, was Sie benoetigen - zusaetzliche Scopes schaden Ihrer Genehmigungsrate und Ihrer Betreiber-Installationsrate.
| Scope | Anwendungsfall |
|---|---|
read:rides | Fahrtdaten ohne Preisgestaltung |
read:rides.geo | GPS-Tracks und Koordinaten |
read:rides.financial | Preise, Gebuehren, Auszahlungen |
write:rides.flags | Betrugsflags, Parkbewertungen |
write:rides.tags | Kategorisierungs-Tags |
read:customers | Anonymisierte Fahrer-IDs |
read:customers.pii | Namen, E-Mails, Telefonnummern - Admin-Klasse |
write:customers.tags | Fahrer taggen (KYC-Status usw.) |
write:customers.notes | Operator-Notizen hinzufuegen |
read:vehicles | Flottenbestand |
write:vehicles.status | Sperren / entsperren - Admin-Klasse |
write:vehicles.notes | Wartungsnotizen |
read:payouts | Partnerauszahlungsdatensaetze |
read:zones | Zonendefinitionen |
write:zones | Zonen erstellen/bearbeiten - Admin-Klasse |
read:webhooks | Wiederholung des Ereignisprotokolls |
Die Berechtigung write:rides.cost existiert nicht. Plugins koennen Fahrtpreise nicht mutieren - dies ist dem Levy-Kern vorbehalten, um die Erstattungsbuchhaltung zu schuetzen. Wenn Sie eine Erstattung ausstellen muessen, fordern Sie das Partnerschaftsteam auf, einen Erstattung-gegen-die-Fahrt-Fluss hinzuzufuegen.
Ereignisse, die Sie abonnieren koennen
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
Abonnieren Sie das Mindestset, das Sie benoetigen. Jede Ereigniszustellung ist ein POST an Ihr webhook_endpoint mit HMAC-SHA256-Signatur im X-Levy-Signature-Header.
Sandbox
Bevor Sie einreichen, erhalten Sie Zugriff auf ein Sandbox-Subkonto mit synthetischen Fahrt-, Fahrzeug- und Kundendaten. Feuern Sie Testereignisse aus dem Entwicklerportal, um Ihr Webhook-Endpunkt, Ihre Konfigurationsformular-Darstellung und Ihren Auth-Fluss zu verifizieren.
Sandbox-Ereignisse sind deutlich mit "environment": "sandbox" gekennzeichnet, damit Sie Ihren Code verzweigen koennen.
Review-Warteschlange und 5-Tage-SLA
Wenn Sie ein Plugin einreichen, tritt es in die Levy-Review-Warteschlange ein. Unser Ops-Team prueft:
| Pruefung | Was wir uns ansehen |
|---|---|
| Manifest-Gueltigkeit | Schema-Konformitaet, gueltiges JSON |
| Berechtigungsnotwendigkeit | Werden alle angeforderten Scopes tatsaechlich verwendet? |
| Datenschutzhaltung | Wie werden Fahrerdaten gehandhabt, gespeichert, geloescht? |
| Webhook-Zuverlaessigkeit | Reagiert Ihr Endpunkt korrekt auf Testereignisse? |
| Preisfairness | Ist der Preis im vernuenftigen Bereich (0-999 $/Monat oder pro Ereignis)? |
| Anbietervereinbarung | Unterzeichnet und aktuell? |
| Screenshots und Beschreibung | Genau, keine irrefuehrenden Behauptungen? |
5-Tage-Review-SLA: wir streben an, Ihnen innerhalb von 5 Werktagen eine Entscheidung (genehmigen, Aenderungen anfordern, ablehnen) zu geben. Die meisten Pruefungen werden in 2-3 Tagen abgeschlossen. Sie erhalten E-Mail-Updates, waehrend die Pruefung voranschreitet.
Wenn wir Aenderungen anfordern, koennen Sie jederzeit erneut einreichen, und die SLA-Uhr startet neu. Wiedereinreichungen werden typischerweise in 1-2 Tagen abgeschlossen.
Umsatzbeteiligung
Plugin-Anbieter erhalten 80 % des Bruttoeinnahmens des Plugins; Levy erhebt eine Plattformgebuehr von 20 %. Vorzeigepartner koennen auf 10 % verhandeln (Levy erhebt weniger) fuer strategischen Wert oder bis zu 30 % fuer Nischen-Plugins, bei denen Levy eine signifikante Kundenakquisition bietet.
Stripe Connect uebernimmt Auszahlungen. Sie steigen einmal waehrend der Anbieterregistrierung ein. Monatliche Rechnungen werden automatisch generiert; Auszahlungen kommen 7 Tage nach der Betreiberzahlung an.
Verpflichtungen nach dem Start
Sobald Ihr Plugin live ist:
- 24-Stunden-Datenpannen-Benachrichtigungs-SLA - wenn Sie einen Sicherheitsvorfall haben, der Levy-Betreiber-Daten betrifft, benachrichtigen Sie uns innerhalb von 24 Stunden.
- Jaehrliche SOC 2-Bescheinigung - wenn Sie PII verarbeiten, bitten wir um Ihren SOC 2-Bericht jaehrlich.
- Wartung - halten Sie Ihren Webhook-Endpunkt gesund. Plugins mit >7 Tagen kontinuierlichem Webhook-Versagen werden in allen Installationen automatisch deaktiviert.
- Support-Antwortzeit - Betreiber erwarten Antworten innerhalb von 1 Werktag an Ihre
support_url. - Versions-Updates - Patch- und Minor-Versionen werden automatisch fuer installierte Betreiber aktualisiert; Major-Versionen erfordern die erneute Zustimmung des Betreibers.
Beginnen Sie
- Plugin einreichen - vollstaendige Einreichungsanleitung
- Besuchen Sie
/developers, um ein Anbieterprofil zu registrieren - Lesen Sie die Plugin-Partnervereinbarung vor dem Start