Partner-Checkliste
Was wir von euch brauchen, bevor Lynes eure gehostete Webview einrichtet.
Technische Details für Entwickler: Quick Start
Was Lynes mit Keycloak macht (und was nicht)
Das macht der Partner
- Nutzer in der eigenen App bei Keycloak anmelden (Login baut ihr — z. B. OpenID Connect / Authorization Code)
- Access Token von Keycloak holen
- Webview öffnen mit:
Authorization: Bearer <Access Token>
Das macht Lynes
- Access Token entgegennehmen, das die App an die Webview übergibt
- Aus dem Token die Issuer-URL (
iss) auslesen — z. B.https://auth.partner.de/realms/partner - Die öffentlichen Signatur-Schlüssel von Keycloak laden:
{issuer}/protocol/openid-connect/certs - Prüfen, ob das Token echt und gültig von eurem Keycloak stammt (Signatur RS256)
- Daraus eine eigene Webview-Session erzeugen (neues JWT, ca. 1 Stunde gültig) — damit arbeitet die Webview intern weiter
Die Nutzer-ID in der Webview ist der Wert sub aus dem Keycloak-Token. Der muss mit den User-IDs in Lynes Loyalty übereinstimmen.
Das macht Lynes nicht
- Kein Keycloak-Login-Screen in der Webview
- Kein Keycloak-Client-Secret bei uns
- Keine Redirect-URLs / OAuth-Flows bei Lynes einrichten
- Kein Refresh der Keycloak-Session durch uns — dafür ist die Partner-App zuständig
Checkliste
Keycloak
- Issuer-URL Staging (steht im Token als
iss, z. B.https://auth…/realms/…) - Issuer-URL Produktion
- Öffentliche Schlüssel erreichbar:
{issuer}/protocol/openid-connect/certs - Access Token (nicht nur Refresh Token) wird an die Webview übergeben
- Nutzer-ID im Token:
sub= dieselbe ID wie in Lynes Loyalty - Beispiel-Access-Token zum Testen (Staging)
- Kurz Info: welchen App-Login ihr nutzt (z. B. Authorization Code + PKCE) — nur zur Einordnung
Native App
- URL Webview schließen: z. B.
myapp://loyalty/back - URL externer Link: z. B.
myapp://loyalty/external?url=… - Standard-Startseite (z. B. Overview, Leaderboard)
Die App fängt diese URLs in der WebView ab (Navigation wird zur Custom-URL umgeleitet). Bundle ID oder Eintrag im App-Manifest brauchen wir nicht — das regelt der Partner in der eigenen App.
Branding
- Produktname (statt z. B. „Mein Bonus“)
- Punkte-Bezeichnung (statt z. B. „Bonuspunkte“)
- Farben (Hex, Hell + Dunkel)
- Logo (SVG oder PNG)
- Texte Deutsch (und Englisch, falls nötig)
Das liefert Lynes
- Webview-URL (Staging + Live)
- Callback-URLs wie oben angegeben
- Token-Prüfung + Webview-Session
- Gebrandete Webview