Skip to main content

Zitadel (Beta)

Beta Feature

Zitadel integration is currently in Beta. It is fully functional for OIDC customer/affiliate authentication and user migration, with continuous enhancements being added.

Zitadel is an OIDC identity provider supported by CMP for customer and affiliate login. Configuration is stored in Admin → Settings → Social Login → Zitadel.

Two credential types

CredentialUsed forWhere it comes from
Client ID + Client SecretEnd-user OIDC login (Web application)Zitadel project → Web app → Code (confidential)
Personal Access Token (PAT)Admin API — user creation, migrationZitadel machine user (service account)
Do not mix credentials

The Web application's Client Secret is not the machine-user PAT. Using the Client Secret as --pat= causes invalid_client / authentication failures on migration.

Setup flow (high level)

  1. Create Zitadel instance and Web application — redirect URIs, JWT tokens, refresh token
  2. Save Client ID, Client Secret, and Base URL in CMP Social Login
  3. Create machine user and PAT — required for migrating existing CMP users
  4. User migration — existing accounts are migrated by the StackConsole team
  5. Set Keycloak Status to Inactive in Social Login if Zitadel is the sole active SSO provider

Configuration summary

Replace {APP_URL} with your CMP frontend base URL (no trailing slash unless your deployment uses one).

SettingRequired value
Application typeWeb
Authentication methodCode (confidential / Basic)
Redirect URI 1{APP_URL}/socialite/zitadel/callback
Redirect URI 2{APP_URL}/socialite/zitadel/handle-callback
Redirect URI 3{APP_URL}/affiliate/socialite/zitadel/callback
Redirect URI 4{APP_URL}/affiliate/socialite/zitadel/handle-callback
Development ModeEnable only when {APP_URL} uses http://
Post Logout Redirect URIsLeave empty
Auth token typeJWT
Refresh tokenEnabled
User info in ID tokenRecommended: Enabled
Client ID vs Application UUID

The Web application's Client ID shown in Zitadel is not the Application UUID in the browser URL. Copy the Client ID from the application details screen.

Pages in this section