MARKETPLACE
PLUGINS
SECURE CODE KIT
Secure Code Kit logo

Secure Code Kit

Published May 2026
   •    Updated today

Plugin details

Secure Code Kit helps Bubble builders generate and verify secure codes for logins, PINs, OTPs, magic links, email verification, password resets, invite flows, access codes, and other code-based workflows, securing stored data, the possibilities are endless.
Instead of storing the plain code or magic link token in your database, the plugin returns a secure hash that can be saved and verified later. Codes and tokens can be customized with numbers, uppercase letters, lowercase letters, special characters, expiration times, attempt limits, and one-time-use protection.

You can also bind a code or token to a specific purpose, such as login, magic login, password reset, invite, or email verification, and to a user identifier, such as an email, username, phone number, or user ID to add some salt. This helps prevent a code generated for one user or purpose from being reused somewhere else.

For magic links, generate a longer secure code, add it to a URL as a token, and verify the token when the user opens the link. This allows you to build passwordless login links, invite links, password reset links, temporary access links, and email verification links without storing the plain token.

Use Secure Code Kit when you need simple, flexible, and safer code or token verification without building the hashing, expiration, lockout, and verification logic from scratch.

View instructions below for more details.

Demo: https://addressflow-demo-page.bubbleapps.io/version-test/secure_code_kit?debug_mode=true

Editor: https://bubble.io/page?id=addressflow-demo-page&test_plugin=1777788133659x929861495602806800_current&tab=Design&name=secure_code_kit&ai_generated=true&type=page&elements=bTGaR

$19

One time

stars   •   0 ratings
0 installs  
This plugin does not collect or track your personal data.

Platform

Web & Native mobile

Contributor details

RentMate Corp. logo
RentMate Corp.
Joined 2024   •   5 Plugins
View contributor profile

Instructions

Use Generate Secure Code to create a code, PIN, OTP, invite code, or access code.
Set the code length, choose which character types to include, and provide an Expires At date. For example, set Expires At to Current date/time +(10):minutes for a 10-minute code.

For extra security, you can include Purpose and User Identifier in the hash. Purpose can be login, password reset, invite, email verification, admin access, or any label you choose. User Identifier can be an email, username, phone number, or user ID.

You do not need to save the plain code in your database. Save the Code Hash, Expires At, Attempt Count, Already Used value, Purpose, User Identifier, and hash settings. Send only the plain Code to the user by email, SMS, or another messaging service.

Use Verify Secure Code when the user submits their code.

Pass in the Submitted Code from the user's input, the Saved Code Hash from your database, Expires At, Attempt Count, Max Attempts, Already Used value, and the same Purpose, User Identifier, and hash settings used when generating the code. The plugin hashes the submitted code with the same security settings and compares it to the saved hash.

If Is Valid is yes, continue the login, verification, invite, reset, or access workflow. After a successful verification, mark the code as used in your database.

If Should Increment Attempts is yes, increase the saved Attempt Count by 1.

Use Hash Input when you want to hash any custom value, not just generated codes. This is useful for securely storing identifiers, access tokens, invite keys, lookup values, or other sensitive text without saving the original input.

Use Verify Hash Input when you want to compare a submitted value against a saved hash. Pass in the submitted input, saved hash, and the same Purpose, User Identifier, and hash settings used when the hash was created.

Common status values:
valid = code is correct and can be accepted
incorrect = code is wrong
expired = code is past the Expires At date
locked = too many failed attempts
already used = code was already used successfully
missing code = no submitted code was provided
missing saved hash = no saved hash was provided
missing expiration = no valid Expires At date was provided

Types

This plugin can be found under the following types:

Categories

This plugin can be found under the following categories:
Analytics   •   Data (things)   •   Compliance   •   Technical   •   Internationalization

Resources

Support contact
Documentation
Tutorial

Rating and reviews

No reviews yet

This plugin has not received any reviews.
Bubble