Email Validation

Validate user emails at sign‑up (and when inviting teammates) to reduce bounces, protect sender reputation, and avoid typos that lock users out of their accounts.

Why it matters

  • High bounce rates hurt deliverability and can get your domain throttled or blocked.
  • Typos like gmai.com lead to frustrated users and failed sign‑ins.
  • Basic validation also deters abuse from disposable or non‑existent inboxes.

Activate Email Validation

src/convex/auth.constants.ts

Configure Reoon (default)

This starter integrates the Reoon Email Verifier out of the box.

  1. Create a Reoon account: https://emailverifier.reoon.com/register
  2. In Reoon → API Settings, generate an API key.
  3. Add the key to your Convex environment:

✅ With validateEmails: true and the token set, sign‑up and invite flows will verify the email before proceeding.

Note: Validation itself does not send email. It only checks if an address looks real and can receive mail. To actually send messages (magic links, OTP, invites), see Sending Emails.

Custom Verification

If you prefer another service you can edit validateEmail.ts and replace the validateEmail function with your own implementation:

src/convex/model/emails/validateEmail.ts

Tip: Keep the return type the same so upstream code doesn’t need changes. Swap out the fetch call and token variable to integrate your preferred verifier.