Essential for the Korean market. Most Korean users will not sign up without a Kakao login option. Heads up: DontCode requires an email for every user, and Kakao does not let your app collect email until you upgrade to a "Biz App". This guide walks through both — the OAuth credentials, and the Biz App upgrade (free, available even if you are an individual developer with no business registration).
Go to developers.kakao.com and sign in with your Kakao account. Accept the developer terms.
내 애플리케이션 (My Applications) → 애플리케이션 추가하기 (Add Application). Enter your app name, company name (optional), and upload an icon. Click Save.
Click into your new application. On the summary page, you will see four keys: 네이티브 앱 키 (Native), REST API 키, JavaScript 키, and Admin 키. The REST API key is the one DontCode uses as your Client ID.
In the left sidebar, click 카카오 로그인 (Kakao Login) → toggle 활성화 설정 (Activation) ON.
Still under 카카오 로그인, open 보안 (Security). Toggle Client Secret 사용함 (Active) ON, then click 코드 생성 (Generate Code). Copy the generated value. DontCode uses it on the server to complete sign-in. Treat it like a password.
Still under Kakao Login, find "Redirect URI" and click 등록 (Register). Paste your DontCode redirect URL (https://<your-deployed-domain>/api/auth/oauth/callback) and save.
DontCode uses email as the canonical user identifier — every account in your app needs one. Kakao does NOT let regular apps request 카카오계정(이메일) (account_email): the consent item is locked unless your app is a "Biz App". This is a Kakao platform restriction, not a DontCode one. Until you upgrade, every Kakao sign-in attempt that asks for email will fail with error code KOE205. The next two steps walk you through the upgrade. It is free and there are two paths — pick the one that matches you.
If you have a Korean business registration number, this is the fastest path. Go to App Settings (앱 설정) → 앱 (App) → 일반 (General). Scroll to 비즈니스 정보 (Business Information) and click 비즈 앱 전환 (Convert to Biz App). Enter your business registration number and the matching company info. Kakao verifies it automatically (usually within a few minutes). Skip Path B and go to "Configure consent items".
If you do not have a business registration number, Kakao still lets you upgrade as an individual. You will need: (1) the developer Kakao account on the app must complete 본인인증 (identity verification — Korean phone + 휴대폰 본인인증, or the overseas alternative below), and (2) you must agree to the KakaoBusiness 통합 서비스 약관 (Integrated Service Terms). Then post on devtalk.kakao.com requesting "개인개발자 비즈앱 전환" with: app name, app ID, developer account email, confirmation that 본인인증 is complete (Y/N), and the reason ("이메일 필수 동의 설정"). Kakao admins typically respond within 1–3 business days. If you cannot complete 휴대폰 본인인증 because you are overseas, the same DevTalk thread is the right place — explain that and they will guide you through the alternative verification.
Once your app is a Biz App, go to 카카오 로그인 → 동의항목 (Consent Items). Find 닉네임 (nickname) and set it to 필수 동의 (Required). Find 카카오계정(이메일) (account_email) — it should now be unlocked — and set it to 필수 동의 (Required). For each consent item, enter a brief 동의 목적 (Consent Purpose) explaining why your app needs it (e.g. "사용자 식별 및 알림 발송") and click 저장 (Save). DontCode does not work without email, so do not leave it as 사용 안 함 (Disabled). Optional (선택 동의) is also fine if you want to let users skip — DontCode will fall back to a synthetic email for those users, but they will not receive password reset, notification, or transactional emails.
Back in your DontCode project, go to Auth → Social Login → Kakao. Paste the REST API key as the Client ID and the value you generated in 보안 as the Client Secret. Click Save. Your app redeploys automatically and Kakao login goes live in a few seconds.
Also check the troubleshooting section on the main guide for issues that apply to all providers.
This is the Biz App / consent-item error described above. Your app requested 카카오계정(이메일) but it is not enabled in 동의항목. Either upgrade to a Biz App and enable the email consent item (Path A or B), or remove email from your scope request. Note: DontCode requires email, so the only correct fix here is to complete the Biz App upgrade.
The redirect URL registered in Kakao Developers does not exactly match what your deployed app sent. Re-check trailing slashes, protocol (http vs https), and host. Kakao requires the URI to match character-for-character. Each verified domain on your DontCode project gets its own redirect URL — register every one of them.
Open 카카오 로그인 → 동의항목 and explicitly set 카카오계정(이메일) to 필수 동의 or 선택 동의. Becoming a Biz App only unlocks the option; it does not enable it for you. Kakao will also ask you to enter a 동의 목적 (consent purpose) the first time you enable it.
That is the synthetic email DontCode falls back to when Kakao does not return a real email. It happens when account_email is set to 선택 동의 (Optional) and the user declined, OR when your app is not a Biz App yet. To fix: switch the consent item to 필수 동의 (Required) so users must share email to sign in.