Kakao Custom Login is not working

Hi Web3Auth Support Team,

We urgently need your help.

Our app has been using Web3Auth with a custom JWT-based Kakao login integration via Auth0, and everything had been working perfectly until yesterday afternoon (KST). Without any code or configuration changes on our end, Kakao login suddenly started failing.

We are seeing the following error:

Error: JWT verifier ID field cannot be empty

This issue came out of nowhere, and we are extremely confused and concerned because nothing has changed on our side. We’re currently unable to proceed with login for Kakao users, and this is severely impacting our service.

The JWT verifier field was previously set to email, and it had been working fine. We are not sure if something changed on the Web3Auth side or with the verifier behavior.

Please help us resolve this as quickly as possible – this is a critical issue for us and we are under a lot of pressure.

Thank you in advance for your urgent support.

const ethereumPrivateKeyProviderInstance = new EthereumPrivateKeyProvider({
config: { chainConfig },
});

const web3authInstance = new Web3Auth(WebBrowser, EncryptedStorage, {
clientId: web3AuthConfig.clientId,
redirectUrl: ‘chainwithdev://auth’,
network: web3AuthConfig.network,
privateKeyProvider: ethereumPrivateKeyProviderInstance,
loginConfig: {
line: {
verifier: ‘chainwith-app-dev’,
verifierSubIdentifier: ‘chainwith-dev-line’,
typeOfLogin: ‘line’,
clientId: ‘my client id’,
jwtParameters: {
domain: ‘my domain’,
verifierIdField: ‘email’,
isVerifierIdCaseSensitive: false,
},
},
kakaoCustom: {
verifier: ‘chainwith-app-prod-custom-kakao’,
verifierSubIdentifier: ‘chainwith-app-prod-custom-kakao’,
typeOfLogin: ‘jwt’,
clientId: ‘my clientid’,
jwtParameters: {
domain: ‘https://dev-31zum6u30mrudlmz.us.auth0.com’,
verifierIdField: ‘email’,
isVerifierIdCaseSensitive: false,
connection: ‘Kakao’,
},
},
},
});

await web3authInstance.init();

// handleSignBtn

await web3auth.login({
loginProvider:
type === ‘kakao’ ? ‘kakaoCustom’ :
type === ‘line’ ? LOGIN_PROVIDER.LINE :
type === ‘google’ ? LOGIN_PROVIDER.GOOGLE :
LOGIN_PROVIDER.APPLE,
});

if (web3auth.connected) {
const provider = web3auth.provider;
const idToken = web3auth.userInfo()?.idToken;
} else {
console.log(‘:x: Web3Auth not connected’);
}

Thank you for providing detailed information and code snippets—this is very helpful for troubleshooting.

Summary of Your Issue:

  • SDK: PnP React Native SDK
  • Platform: React Native (with Web3Auth)
  • Login Method: Custom JWT-based Kakao login via Auth0
  • Verifier Name: chainwith-app-prod-custom-kakao
  • JWT Verifier ID Field: email
  • Error: Error: JWT verifier ID field cannot be empty
  • No recent code/config changes on your end
  • Impact: Kakao login is completely blocked for users

Immediate Checks & Suggestions

1. Check the JWT Token

  • The error JWT verifier ID field cannot be empty usually means that the JWT (idToken) returned from Auth0 is missing the email field, or it is coming as null or empty.
  • Please decode a sample JWT (idToken) you receive from Auth0 and check if the email field is present and populated. You can use jwt.io for this.

2. Auth0 Connection Changes

  • Sometimes, identity providers (like Kakao or Auth0) update their default scopes or returned claims. Check if Kakao or Auth0 changed their default behavior and is no longer returning email by default.
  • Ensure that your Auth0 Kakao connection is configured to request and return the user’s email.

3. Web3Auth Verifier Configuration

  • Double-check your Web3Auth dashboard for the verifier chainwith-app-prod-custom-kakao. Ensure the verifierIdField is set to email and matches your JWT structure.

4. Recent Incidents

  • Web3Auth has not announced any recent changes that would affect JWT verifier behavior, but you can check their status page or community forum.

Next Steps

Please provide:

  • A sample idToken (JWT) (with any sensitive info redacted) so we can verify the presence of the email field.
  • Confirmation if the email field is present in the Auth0 dashboard for Kakao users.

Reference Docs:


Possible Solution

If the email field is missing from the JWT:

  • Update your Auth0 Kakao connection to always request and return the email claim.
  • If Kakao users do not have an email, consider switching the verifierIdField to another unique identifier (like sub or user_id) and update both your JWT payload and Web3Auth verifier settings accordingly.

Let us know if you can share a sample JWT or any recent changes to your Auth0/Kakao setup. We’ll help you resolve this urgently!

Note: This response was generated by an AI bot and may require further verification. The Web3Auth support team has tracked this issue and will be responding as soon as possible.

Additionally, we would recommend you to join our biweekly Office Hours to get this resolved even faster. Web3Auth Developer Office Hours

I’ve reviewed the explanation provided by the bot, and everything seems to be set up correctly. When tested through Auth0, it worked as expected.

Please have your technical team look into it directly as soon as possible.

My guess is that this issue might be a side effect of the recent major update and UI overhaul of the Web3Auth dashboard. As you can see in the screenshot, the “Social Connections” section appears empty—this could be due to a failure to properly migrate existing data.

Of course, I can’t say for sure if that’s the direct cause.

However, many users are currently unable to access our service because of this issue, so I urge you to resolve it as soon as possible.

Upon checking, it seems the issue is related to the previously used grouped connections.
Right now, I can’t view or delete the “Select 1st social connection” entry — it’s completely unmanageable from the dashboard.

I tested creating a new group with the same settings, and it worked fine. However, that results in a new wallet being generated, which is unacceptable for our existing users. The original group must work properly so that users can continue to access their existing wallets.

This is clearly something only your team can fix, and it’s urgent.
When are you going to look into this? Please resolve it immediately.

Hey @develop
As per our last discussion, we have resolved this on you. You are on Enterprise plan and hence have a dedicated support group, please make use of only that going forward.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.