EntwicklerMitarbeiter-Handbuch

Pilotkunden-Onboarding

Pilot

Schritt-fuer-Schritt-SOP fuer die Anlage eines neuen Pilotkunden in sellx_central. Ziel: Kunde kann sich im Self-Service-Portal einloggen, Plugin herunterladen, Lizenz aktivieren — ohne dass Ops nachjustieren muss.

Phase 2 · Pilot-Rollout

Vorbereitung

Vor dem Onboarding-Termin muessen folgende Daten vom Vertrieb vorliegen:

  • Offizielle Firma + Ansprechpartner (Vor- und Nachname, Email, Telefon optional)
  • Rechnungsadresse (USt-ID bei EU-Geschaeftskunden, Reverse-Charge-Vermerk)
  • Plugin-Pakete + Lizenzmodell (perpetual, subscription, trial, all_inclusive)
  • Stripe-Customer-ID falls bereits vorhanden, sonst wird sie automatisch beim ersten Checkout angelegt

Durchfuehrung

1

Self-Service-Customer anlegen

In sellx_central ueber den Admin-Backend-Endpoint oder per SQL-Insert. Empfohlen: ueber das Self-Service-Portal-Registrierungsformular (kunde.sellx.dev/register) — der Kunde erhaelt automatisch eine Willkommens-Email.

HTTPonboarding.sh
POST /api/v1/admin/customers
2

Stripe-Customer zuordnen

Stripe-Customer-ID im Self-Service-Customer-Record hinterlegen. Falls noch nicht vorhanden: zuerst in Stripe-Dashboard anlegen, dann ID zurueck in sellx_central.

HTTP
PATCH /api/v1/admin/customers/{id}/stripe-customer
3

Plugin-Lizenzen erstellen

Pro Plugin, das der Kunde erwirbt, eine LicenseEntity mit license_model und token_version=1 anlegen. Bei All-Inclusive: Atomic-Activation ueber IAllInclusiveService (Race-safe via Retry-on-Conflict, ae1d552).

HTTP
POST /api/v1/admin/licenses
4

Willkommens-Email senden

Manuell oder ueber den Welcome-Endpoint. Email enthaelt Magic-Link zum Login im Self-Service-Portal.

HTTP
POST /api/v1/admin/customers/{id}/send-welcome
5

Onboarding-Call (optional)

Bei Pilotkunden empfohlen: 30-Min-Call, in dem Ops den Kunden durch Login, Plugin-Download und erste Aktivierung fuehrt. Vor allem bei JTL-Shop5-Kunden wichtig wegen Domain-Binding.

Verifikation

Nach dem Onboarding-Termin sind folgende Checks Pflicht:

  • Kunde hat sich erfolgreich via Magic-Link eingeloggt (im AuditLog nachvollziehbar)
  • Alle Plugin-Lizenzen werden im Dashboard des Kunden angezeigt
  • Bei subscription/trial: Stripe-Webhook wurde erfolgreich verarbeitet (kein roter Eintrag in Audit-Log)
  • Hardware-Fingerprint wurde vom Hub an Central uebertragen (license_activations-Table nicht leer)