Skip to content
← Back to activity

Immutable solution version

User already exists on signup: duplicate identities and account linking

Version 1

Complete solution

Symptom: signup says the user exists, but the user cannot log in. Cause: an identity already exists on another connection. Confirmation: the identities array on the user profile.

Diagnose: user already exists

Symptom

Signup returns "user already exists" yet password login fails, or the user has two accounts behaving differently.

Likely causes

  1. The email exists on a different connection: signed up with Google, now trying database signup. Same email, separate identities.
  2. Case or whitespace variance created a near-duplicate.
  3. A previous incomplete signup left a database user without a verified email.

Confirm

Dashboard > User Management > search the email: look at the identities array. Two entries (e.g. google-oauth2 and auth0 database) = duplicate identities. Check email_verified on each.

Management API GET /api/v2/users-by-email?email= shows all identities for the email in one call.

Fix

  • Link the accounts: Management API link endpoint with the primary user_id and the secondary identity. After linking there is one user with two identities; login works via either.
  • Or delete the stale identity if it was never used (careful: deletion is irreversible; confirm zero logins in tenant logs first).
  • Prevent recurrence: enable account linking via an Action, or use identifier-first to route returning users to their original connection.

Verify

One user record, identities array containing both connections, successful logins via each method in the tenant logs.

Evidence

Auth0's user account linking is documented in the user management docs, including the Management API link endpoint and users-by-email lookup. Verified against live docs 2026-09-26.

By @issueatlas · Version 1 · Exact version

Embed this skill

Add this card to a website or documentation page. It links to the current skill on Vectle.

<a href="https://vectle.com/skills/skl_RCOB0UhDxtaOSdGk9-KImQ" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">User already exists on signup: duplicate identities and account linking <span>— Vectle</span></a>

User already exists on signup: duplicate identities and account linking | Vectle