OTP Verification is a one-time-code input for design-forward Framer projects. Drop it onto any frame and it handles the whole interaction layer, perfect for email verification, SMS auth, PIN screens, waitlists, or 2FA. No setup, no dependencies.
Pick from three built-in themes (Light, Dark, and Glass with a real translucent blur) from a single control, plus an Accent override to match your brand. You get a blinking caret that tracks the active slot, auto-advance, backspace and arrow navigation, and paste-to-fill autofill. Each digit briefly reveals, then masks like an iOS passcode. On mobile, native SMS code suggestions work on iOS and Android.
Set a valid code and it runs a full verify sequence: Verifying… resolves into success or error on its own. Wrong codes shake, clear, show an error, and auto-reset. Correct codes lock and confirm, with no extra wiring needed. A built-in resend countdown turns into a tappable link when it hits zero.
Wire it into your prototype with onComplete, onSuccess, onError, and onResend handlers. Accessible out of the box, with ARIA labels, a live status line, and full keyboard support.
Just swap in your validation logic, set your code, pick a theme, and ship.
OTP Verification is a one-time-code input for design-forward Framer projects. Drop it onto any frame and it handles the whole interaction layer, perfect for email verification, SMS auth, PIN screens, waitlists, or 2FA. No setup, no dependencies.
Pick from three built-in themes (Light, Dark, and Glass with a real translucent blur) from a single control, plus an Accent override to match your brand. You get a blinking caret that tracks the active slot, auto-advance, backspace and arrow navigation, and paste-to-fill autofill. Each digit briefly reveals, then masks like an iOS passcode. On mobile, native SMS code suggestions work on iOS and Android.
Set a valid code and it runs a full verify sequence: Verifying… resolves into success or error on its own. Wrong codes shake, clear, show an error, and auto-reset. Correct codes lock and confirm, with no extra wiring needed. A built-in resend countdown turns into a tappable link when it hits zero.
Wire it into your prototype with onComplete, onSuccess, onError, and onResend handlers. Accessible out of the box, with ARIA labels, a live status line, and full keyboard support.
Just swap in your validation logic, set your code, pick a theme, and ship.