Plattform-Verwaltung (Biketour-Manager Owner)
Verwalten Sie Ihre Reseller, analysieren Sie Lizenzverkäufe und konfigurieren Sie globale Preismodelle.
Reseller-Verwaltung
| Name | Shortcode | Stufe | Keys (Verfügbar/Belegt) | Aktionen |
|---|
Globale Lizenzpakete
| Paketname | Lizenzen | Grundpreis | Mengenrabatt | Effektiver Preis |
|---|
Globale Lizenz-Auditliste
| Seriennummer | Reseller | Status | Endkunde | Zuweisungszeitpunkt | Aktivierungszeitpunkt |
|---|
Coins-Umlauf & KI-Auswertungsstatistik
Coin-Umlaufsentwicklung
| Zeitraum | Transaktionen | Coins Geladen | Echt-Umsatz (€) | Wert/Coin (€) | Coins im Umlauf (Kum.) |
|---|
KI-Nutzungs-Audit (Letzte 10)
| Zeitpunkt | Dienst | Modell | Tokens (In/Out) | API-Kosten (USD) | Ertrag (Coins) |
|---|
Reseller Monitor
Überwachen Sie den Status einzelner Reseller – Lizenzen, Branding, Werbebanner und Einkäufe.
Lizenz an Kunden ausgeben
Geben Sie den Namen des Kunden ein. Eine freie Seriennummer wird aus dem Reseller-Pool entnommen.
Seriennummern & Kundenliste
| Seriennummer | Status | Kundenname | Ausgabe-Datum |
|---|
Globale Fahrphysik & Oberflächen
Hier können Sie die physikalischen Rollwiderstände der 28 OSM-Oberflächen sowie die Geschwindigkeits-Limits (Speed-Matrix) für die Bergabfahrten konfigurieren.
🏞 OSM Oberflächen (28 Typen)
Passen Sie die Standard-Widerstände und Vibrationsgrade der einzelnen Straßenoberflächen an.
| OSM Surface Key | Basiswiderstand (1.0-10.0) | Vibrationsfaktor (0-10) |
|---|
⚡ Geschwindigkeits-Matrix (Bergab-Caps)
Definieren Sie das Geschwindigkeitsverhältnis bei Gefälle (0%, 10% und 20% bergab) für jeden der 7 Haupt-Fahrradtypen.
| Oberfläche | Flach (0%) km/h | Downhill (10%) km/h | Downhill (20%) km/h |
|---|
Geprägte Bike-Coins Gutscheine
Überwachen Sie alle durch Reseller erworbenen Coin-Pakete und Gutschein-Seriennummern.
Gutschein Übersicht & Status
| Gutschein-Code | Reseller | Nennwert (Coins) | Kaufdatum | Status | Eingelöst am | Eingelöst von Software-Lizenz |
|---|
Produkte, Preise & Vertriebskanäle
Verwalten Sie die globalen Softwarelizenzen und Bike-Coins für Reseller, App-Zahlungen und Direktvertrieb.
Produkte & Preiskatalog
Produkt bearbeiten
Wählen Sie ein Produkt aus der Liste aus oder erstellen Sie ein neues.
Touren & Video Store
Preise für Touren- und Video-Downloads sowie die Coin-Marge dieser Bereiche.
Preise (in Coins)
Ersteller erhalten beim Upload einer Tour 1 Coin + 50 XP (einmalig) sowie beim Download durch andere User einen kleinen Coin-Anteil vom Kaufpreis – nie echtes Geld.
Downloads/Teilnahmen & Coin-Marge
Umsatz = Coins, die Downloader/Teilnehmer bezahlt haben. Kosten = Coin-Anteil an Ersteller (bei Rennen in Phase 1 noch 0, da kein Preisgeld-Pool). Netto = Marge, die als Coins bei der Plattform verbleibt (umgerechnet in € über den durchschnittlichen Coin-Gegenwert aus echten Käufen, siehe Tab "Coin-Pakete Monitor").
| Kategorie | Downloads/Teilnahmen | Umsatz (Coins) | Kosten Ersteller (Coins) | Netto Marge (Coins) | Netto Marge (€) |
|---|---|---|---|---|---|
| Lade Daten… | |||||
Reseller-Cashback-Kontobuch
Aufsummierter Cashback (in Coins gebucht) je Reseller mit aktiviertem Reseller-Lizenzkey. Auszahlung erfolgt manuell außerhalb der Software.
| Reseller | Buchungen | Cashback (Coins) | Cashback (€) |
|---|---|---|---|
| Lade Daten… | |||
Coin-Wert-Verwaltung
Zentrale Verwaltung aller Coin-Preise. Jede Preislogik (z. B. „Satelliten-Ansicht
nach Streckenlänge") ist eine section_key-Gruppe mit einer oder
mehreren Zeilen. Eine Gruppe ist entweder eine Pauschale (genau ein
Coin-Wert, unabhängig vom Volumen) oder eine Staffel (mehrere Zeilen,
sortiert nach Schwellenwert – die erste Zeile, deren Vergleich (<,
<=, =, >=, >) gegen den
tatsächlichen Wert zutrifft, gewinnt). Eine offene Obergrenze ("und darüber") ist
einfach eine eigene Zeile mit demselben Schwellenwert wie die letzte Stufe, aber
Vergleich > statt <=. Neue Stufen lassen sich
jederzeit per Klick ergänzen, ohne dass App oder Server-Code angepasst werden müssen.
Deaktivierte Zeilen (Häkchen "Aktiv" entfernt) werden bei der Berechnung komplett
übersprungen, nicht nur ausgeblendet.
Neue Sektion anlegen
VIP-Verwaltung
VIP-Tiers (z. B. „VIP-100") überschreiben einzelne Coin-Werte aus der Coin-Wert-Verwaltung für bestimmte Accounts - z. B. für Partner-Influencer oder Reseller-Testaccounts. Ein Tier muss nicht alle section_keys abdecken; nicht gelistete Preise bleiben normal. Eine Zuweisung gilt für den ganzen Lizenz-Account (alle Fahrer-Profile darunter), ist zeitlich befristbar (Tage) und kann jederzeit pausiert/reaktiviert werden. VIP wirkt nur auf Preise, die der Account selbst zahlt (Satelliten-Ansicht, Touren-/Video-Kauf, Race-Ausschreibungsgebühr, KI-Analyse) - nicht auf Preise, die ein Account für andere festlegt (Race-Teilnahmegebühr, Touren-Store-Listing-Preis).
Neuen VIP-Tier anlegen
VIP-Status vergeben
Vergebene VIP-Zuweisungen
| Account | Tier | Status | Vergeben am | Dauer (Tage) | Läuft ab | Vergeben von | Notiz | |
|---|---|---|---|---|---|---|---|---|
| Lade Daten… | ||||||||
Gruppen-Verwaltung
Verwaltet die Coin-Preise und Feature-Pakete des Benutzer-Gruppen-Features
(docs/Benutzer_Gruppen.MD). Coin-Preise sind eine gefilterte Sicht
auf dieselbe coin_value_config-Tabelle wie im Tab
„🪙 Coin-Wert-Verwaltung" - hier nur die Zeilen mit tag='GroupFunction'
(alle _GRUPPE_*-section_keys). Bedienung identisch: Pauschale (ein
Coin-Wert) oder Staffel (mehrere nach Schwellenwert sortierte Stufen).
Neue Gruppen-Coin-Sektion anlegen
Feature-Pakete (GroupLevel-Inhalte)
Reine Inhalts-Konfiguration je GroupLevel (gruppen_level_inhalte,
kein Preis - der Preis lebt oben als
_GRUPPE_LEVEL_N_MONATSPAUSCHALE). Ein feature_key je Zeile,
z. B. SCHWARZES_BRETT_ANZEIGEN mit limit_wert 5.
Neuen Feature-Kontingent-Eintrag anlegen
Bestehende Feature-Pakete
| Level | Feature-Key | Limit-Wert | |
|---|---|---|---|
| Lade Daten… | |||
Karten-Bundles für den GPS-Geräte-Shop
Verwalten Sie Regionen (Länder/Kontinent-Bundles) und deren einzeln kaufbare Varianten (Garmin Tour/Road, Garmin MTB, Mapsforge) für den Karten-Shop in der App.
Regionen & Varianten
| Bundle | Kontinent | Variante | Preis | Größe | Status | Aktionen |
|---|
Variante bearbeiten
Wählen Sie eine Variante aus der Liste aus oder erstellen Sie eine neue.
Tech-Stack Konfiguration
Verwalten Sie die technischen Systemkomponenten und Routing-Dienste Ihrer Plattform.
BRouter-Routing-Engine
Wählen Sie aus, ob die Routenberechnung über Ihren eigenen hochperformanten Server erfolgt oder über den öffentlichen Community-Server als Notfall-Backup.
https://api.biketour-manager.com/brouter).
Externe Dienste (Free ↔ Kommerziell)
Wechseln Sie je Dienst zwischen kostenlosem Community-Betrieb und kommerziellem Betrieb mit eigenem Key/Server. Diese Einstellungen ersetzen das frühere Admin-Menü der Desktop-App.
📍 Geocoding (Adresssuche)
⛰ Höhendaten
🗺 Basiskarte & Satellit
Deine eigene Weltkarte (Cloudflare R2, PMTiles) ist in Tour/Race/ Free-Ride/GPX-Manager IMMER die Standard-Basiskarte, unabhängig von der folgenden Einstellung. „Basiskarten-Notfall-Fallback" greift nur, wenn die eigene Karte einmal nicht konfiguriert/erreichbar ist (Karten-Manager-Vorschau).🌤 Wetter
🌍 Standort-Bestimmung (GeoIP)
Eigenes GeoIP-Backend oder dritter Dienst, der bei GET JSON mitlat/latitude & lon/longitude liefert.
KI-API-Konfiguration (Münzen-Dienste)
Geben Sie hier den API-Key und den Modellnamen für die serverseitigen KI-Auswertungen (5 Coins pro Aufruf) an.
🔁 Automatischer Fallback (Together AI)
Nur relevant, wenn oben DeepInfra als KI-Provider gewählt ist: Bei Serverausfällen oder Timeouts von DeepInfra weicht der Server automatisch auf Together AI aus, sodass Nutzer keinen Fehler sehen. Bei anderen Providern (Gemini/OpenAI/Anthropic) bleibt dieser Fallback ungenutzt.
💲 KI-Preise & Kosten (Coin-Abrechnung)
Definieren Sie, wie viele Coins Endnutzer für diese Dienste zahlen müssen, und die tatsächlichen Kosten pro Dienst (für Margen-Kalkulationen).
🚴 Einzeltour-Analyse
📈 Langzeitanalyse
🔔 Stripe Webhook (Coin-Aufladung & Lizenzkäufe)
Ein einziger Webhook-Endpoint reicht für alle Produkte: Stripe sendet jedes
Zahlungsereignis an dieselbe URL, welches Paket gekauft wurde steht im Event
selbst (client_reference_id + Metadata). Details und
Umsetzungsschritte siehe TODOs_bis_GoLive.md, Abschnitt
"Stripe B2C Monetarisierung".
checkout.session.completed).
whsec_...) gehört ausschließlich in
/etc/biketour-manager-backend.env auf dem VPS, niemals ins
Portal – diese Seite läuft nur mit dem öffentlichen Supabase-Publishable-Key
und ist damit kein sicherer Ort für Geheimnisse.
📧 SMTP E-Mail-Dienst (Brevo / Custom SMTP)
Verwalten Sie die SMTP-Einstellungen für den Versand von System-E-Mails (z. B. Registrierung, Passwort-Resets, Gruppen-Einladungen).
Administrative Termine & Fristen
Zentraler Kalender zur Überwachung von API-Schlüssel-Abläufen, VIP-Zugangserneuerungen und manuellen Wartungsterminen.
📅 Neuer Termin / Erinnerung
📋 Alle Termine
| Status | Terminname | Beschreibung | Fälligkeit | Typ | Aktionen |
|---|---|---|---|---|---|
| Lade Termine... | |||||
Karten-Darstellung
Benannte Farbschemata der selbst gehosteten PMTiles-Weltkarte verwalten. Erscheinen in der Desktop-App als Auswahl-Dropdown (GPX-Manager, Tour-/Rennen-Start, Free-Ride).
Farbschemata
| ID | Name | Erstellt | Aktionen |
|---|
Farbschema bearbeiten
🗺️ WYSIWYG-Vorschau
Erzeugt aus dem aktuell sichtbaren Kartenausschnitt unten ein PNG und speichert es als Vorschaubild für dieses Farbschema (Start-Bildschirm der Desktop-App). Farbschema muss vorher gespeichert sein.
Karte ist frei verschieb- und zoombar. Farbänderungen werden hier sofort sichtbar (nicht gespeichert, bis auf "Speichern" geklickt wird).
Abonnement- & Vertragsverwaltung
Konfigurieren Sie hier die monatlichen Coin-Abos (Wenignutzer, mittlere Nutzer, Premium) für Endkunden und überwachen Sie aktive Verträge.
Abonnement-Tarife
| Tarif-ID | Name | Münzen/Monat | Preis/Monat | Status | Aktionen |
|---|
Tarif bearbeiten
Wählen Sie einen Tarif aus der Liste aus oder erstellen Sie einen neuen.
Aktive Benutzer-Verträge
| Abonnement-ID | User-ID (Konto) | Abo-Tarif | Monatspreis | Start-Datum | Nächste Verlängerung | Status | Kündigungsdatum |
|---|
📧 Newsletter-Versand
Verfassen Sie E-Mail-Newsletter und senden Sie diese an alle registrierten Benutzer.
Neuen Newsletter verfassen
Der Newsletter wird als HTML-Format an alle aktiven Benutzerkonten gesendet.
👀 Live-Vorschau (gerendert)
Hier sehen Sie den gerenderten Newsletter, nachdem Sie auf "Newsletter speichern" geklickt haben.
📜 Gesendete Newsletter (Historie)
Übersicht aller bisher versendeten E-Mail-Newsletter.
| Datum | Betreff | Gesendet von | Empfänger | Aktionen |
|---|