diff --git a/demo/nextjs/lib/auth.ts b/demo/nextjs/lib/auth.ts index 5704f2d0..bb295445 100644 --- a/demo/nextjs/lib/auth.ts +++ b/demo/nextjs/lib/auth.ts @@ -86,10 +86,4 @@ export const auth = betterAuth({ clientSecret: process.env.GOOGLE_CLIENT_SECRET || "", }, }, - account: { - accountLinking: { - trustedProviders: ["google", "github"], - requireEmailVerified: true, - }, - }, }); diff --git a/packages/better-auth/src/api/routes/callback.ts b/packages/better-auth/src/api/routes/callback.ts index 6aa9fa57..66a7fa39 100644 --- a/packages/better-auth/src/api/routes/callback.ts +++ b/packages/better-auth/src/api/routes/callback.ts @@ -99,9 +99,7 @@ export const callbackOAuth = createAuthEndpoint( ? trustedProviders.includes(provider.id as "apple") : true; - const shouldLink = - !hasBeenLinked && user.emailVerified && isTrustedProvider; - if (!shouldLink) { + if (!hasBeenLinked && (!user.emailVerified || !isTrustedProvider)) { let url: URL; try { url = new URL(currentURL || callbackURL); @@ -114,7 +112,7 @@ export const callbackOAuth = createAuthEndpoint( throw c.redirect(url.toString()); } - if (shouldLink) { + if (!hasBeenLinked) { try { await c.context.internalAdapter.linkAccount({ providerId: provider.id,