Skip to main content
Verification protects your server from bot raids and automated join attacks by requiring new members to complete a quick visual challenge before gaining access to your channels.
New members are quarantined to a single verification channel. They must enter a code from a generated image using an interactive keypad — taking about 5 seconds for a real person, but blocking automated bots.

How It Works

  1. A new member joins your server and can only see the verification channel
  2. They click the Verify Me button
  3. An image with a randomized 6-digit code appears, along with a phone-style keypad
  4. The member enters the code by clicking the number buttons, then submits
  5. On success, they receive the Verified role and gain access to all channels
  6. On failure, the configured punishment is applied (kick, ban, or timeout)
The verification code is embedded in a server-generated image with visual noise, making it resistant to automated bots and OCR. Each user gets a unique code that regenerates on every failed attempt.

Setting Up Verification

You can set up verification from the dashboard or from Discord.

From the Dashboard

1

Open the Dashboard

Go to dashboard.hashbot.com and select your server.
2

Navigate to Verification

Click Verification in the sidebar under Hashbot.
3

Select Channel and Role

Choose a verification channel and verified role from the dropdowns, or click the + button next to each to auto-create a #verify channel or Verified role.
4

Choose Punishment

Select what happens when a member fails verification: Kick (can rejoin), Ban (permanent), or Timeout (temporary mute).
5

Enable

Click Enable Verification. The bot will send the verification panel to the selected channel automatically.
Make sure the bot’s role is higher than the Verified role in your server’s role hierarchy (Server Settings > Roles). If it’s lower, the bot won’t be able to assign the role and verification will fail silently.

From Discord (with auto-permissions)

Run /verification setup with no parameters to launch the interactive wizard:
/verification setup
The wizard walks you through 4 steps:
  1. Select or create a verification channel
  2. Select or create a Verified role
  3. Choose the fail punishment (Kick, Ban, or Timeout)
  4. Auto-lock channels — automatically configures all public channels to require the Verified role (skips already-private channels)
For quick setup without the wizard:
/verification setup channel:#verify role:@Verified punishment:KICK

Configuration Options

SettingDefaultDescription
Verification ChannelThe channel where new members verify
Verified RoleThe role assigned on successful verification
Max Attempts3Number of tries before punishment is applied
Timeout10 minutesTime limit to complete verification before auto-kick
Fail PunishmentKickWhat happens when a member fails — Kick, Ban, or Timeout
Log VerificationsEnabledLog verification results to the guild log channel
All settings can be changed at any time from the dashboard or via Discord commands.

Fail Punishment Options

PunishmentBehavior
KickMember is removed but can rejoin and try again. Best for most servers.
BanMember is permanently banned. Use during active raids.
TimeoutMember is temporarily muted for a configurable duration. Gentlest option.

Security

Verification provides multiple layers of bot protection:
  • Image-based codes — the 6-digit code is rendered in an image with visual noise, defeating text scrapers
  • Unique per-user codes — each member gets a different code, preventing replay attacks
  • Code regeneration — a new code is generated after each failed attempt
  • Low brute-force odds — 1,000,000 possible combinations with only 3 attempts = 0.0003% chance of guessing
  • Time limit — members who don’t verify within the timeout are automatically removed
  • Works with existing filters — members flagged by name/PFP filters are banned before reaching verification

Troubleshooting

Verification succeeds but no role assigned? The bot’s role must be above the Verified role in your server’s role hierarchy. Go to Server Settings > Roles and drag Hashbot’s role higher than the Verified role.
  • Empty channel/role dropdowns on dashboard — the bot may not be in the server, or the server data hasn’t loaded yet. Refresh the page.
  • “Already verified” message — the user already has the Verified role. Remove it manually if you want them to re-verify.
  • Bot can’t send messages in verify channel — ensure the bot has View Channel, Send Messages, Embed Links, and Attach Files permissions in the verification channel.

Commands

CommandDescription
/verification setupLaunch the interactive setup wizard
/verification setup channel: role: punishment:Quick setup with parameters
/verification statusView current configuration and stats
/verification panelResend the verification panel to the channel
/verification verify user:Manually verify a member (manager only)
/verification disableDisable verification

Managing from the Dashboard

The dashboard at dashboard.hashbot.com provides:
  • Full setup from the web — select channel, role, and punishment without needing Discord
  • Create channel/role — auto-create a #verify channel or Verified role with the + button
  • Change settings anytime — update the channel, role, max attempts, timeout, and punishment
  • Stats overview — total verifications, success rate, failures, and timeouts
  • Verification logs — filterable table of all verification attempts with outcome, attempts, punishment, and date
  • Resend panel — re-send the verification button to the channel
  • Enable/disable toggle — turn verification on or off instantly