Flutter Gems is a curated list of 6700+ useful Dart & Flutter packages that are categorized based on functionality.
Top Flutter PIN, OTP and Password Field packages
Last updated: January 26, 2025
Often user verification or transaction verification is required for payments or in banking, finance and fintech apps. For verification, the user is required to enter a:
- PIN: A four-digit numerical code used to verify the identity of the user. This code is only known to the user and can be entered via number pad.
- One-time password (OTP): It is a type of password that is only valid for single use. OTPs are often used as an extra layer of security for online accounts, as they are much more difficult to guess than a traditional password. OTPs are typically generated by an authentication app or a hardware token, and are entered into a OTP field.
- Password: A custom password set by the user.
The complete list of Flutter packages that provide customized fields and autofill utilities to enter PIN, SMS code, Password or OTP in your Flutter app is provided below.
![pinput Card Image](/media-cards/pinput.gif)
pinput
👍 3.05K ⬇️ 221.3K
Dart 3 compatibleMaintenance Status: Good
Pin code input (OTP) text field, iOS SMS autofill, Android SMS autofill One Time Code, Password, Passcode, Captcha, Security, Coupon, Wowcher, 2FA, Two step verification
![pin_code_fields Card Image](/media-cards/pin_code_fields.png)
pin_code_fields
👍 2.25K ⬇️ 350.8K
Dart 3 compatibleMaintenance Status: Average
A flutter package which will help you to generate pin code fields. Can be useful for OTP for example.
![sms_autofill Card Image](/media-cards/sms_autofill.png)
sms_autofill
👍 832 ⬇️ 111.3K
Dart 3 compatibleMaintenance Status: Good
Flutter plugin to provide SMS code autofill support
password_strength
👍 124 ⬇️ 202.5K
Dart 3 compatibleMaintenance Status: Poor
A password strength estimator. Can be used to show the user whether the password they chose is strong against bruteforce or dictionary attacks.
otp
👍 177 ⬇️ 129.9K
Dart 3 compatibleMaintenance Status: Average
RFC6238 Time-Based One-Time Password / Google Authenticator Library
otp_text_field
👍 273 ⬇️ 23.3K
Dart 3 compatibleMaintenance Status: Poor
A flutter package to create a OTP Text Field widget in your application.
![pin_input_text_field Card Image](/media-cards/pin_input_text_field.png)
pin_input_text_field
👍 146 ⬇️ 128.4K
Dart 3 compatibleMaintenance Status: Good
A textField widget to help display different style pin written in pure dart, no extra dependency.
otp_autofill
👍 249 ⬇️ 17.7K
Dart 3 compatibleMaintenance Status: Good
Android implementation of OTP autofill with using User Consent API and Retriever API. Add possibility to receive OTP code from another input.
![smart_auth Card Image](/media-cards/smart_auth.png)
smart_auth
👍 135 ⬇️ 108.2K
Dart 3 compatibleMaintenance Status: Good
Wrapper of Android SMS User Consent API, SMS Retriever API to read one time sms code, get user phone number, OTP, OTC, sms autofill, android autofill
![flutter_otp_text_field Card Image](/media-cards/flutter_otp_text_field.png)
flutter_otp_text_field
👍 202 ⬇️ 9.8K
Dart 3 compatibleMaintenance Status: Good
Fully customizable OTP Entry TextField for flutter, Widget accepts pin of any length. Its written in pure dart, no extra dependency.
![flutter_pw_validator Card Image](/media-cards/flutter_pw_validator.png)
flutter_pw_validator
👍 166 ⬇️ 6.5K
Dart 3 compatibleMaintenance Status: Average
Flutter Pw Validator package helps you to validate sign in user-entered password with your rules.
pin_code_text_field
👍 161 ⬇️ 8.4K
Dart 3 compatibleMaintenance Status: Poor
A beautiful and highly customisable Flutter widget for entering pin code. Suitable for use cases such as login and OTP.
![flutter_verification_code Card Image](/media-cards/flutter_verification_code.png)
flutter_verification_code
👍 158 ⬇️ 2.5K
Dart 3 compatibleMaintenance Status: Average
A Flutter package that help you create a verification input.
passcode_screen
👍 116 ⬇️ 1.7K
Dart 3 compatibleMaintenance Status: Poor
A platform agnostic Flutter package for showing passcode input screen, similar to Native iOS. Screen customizable with a colors, sizes, fonts etc.
![fancy_password_field Card Image](/media-cards/fancy_password_field.png)
fancy_password_field
👍 95 ⬇️ 2.2K
Dart 3 compatibleMaintenance Status: Good
A highly customizable password control input widget. It has features such as password strenght and rules validation
![sms_otp_auto_verify Card Image](/media-cards/sms_otp_auto_verify.jpg)
sms_otp_auto_verify
👍 91 ⬇️ 1.8K
Dart 3 compatibleMaintenance Status: Good
A new Flutter plugin to enter a digit code usually in cases of Sms Otp Code. and provide SMS Auto Fill using library SMS Retriever API.
sms_user_consent
👍 84 ⬇️ 77
Dart 3 compatibleMaintenance Status: Poor
Request user's phone number (supports dual sim) and/or consent to read SMS without adding any permissions
flutter_password_strength
👍 44 ⬇️ 27K
Dart 3 compatibleMaintenance Status: Poor
A password strength checker for flutter, works for Android and iOS.
password_validated_field
👍 52 ⬇️ 81
Dart 3 compatibleMaintenance Status: Poor
With this package you can have a nice, cool and validated password text fields in your application.
random_password_generator
👍 48 ⬇️ 931
Dart 3 compatibleMaintenance Status: Poor
A new Flutter package which help generate strong password for online accounts and password strength estimator for Dart.
![custom_pin_screen Card Image](/media-cards/custom_pin_screen.png)
custom_pin_screen
👍 47 ⬇️ 978
Dart 3 compatibleMaintenance Status: Good
A flutter package to add screens with custom keyboards and pins to your mobile application.
![password_strength_checker Card Image](/media-cards/password_strength_checker.png)
password_strength_checker
👍 38 ⬇️ 1.8K
Dart 3 compatibleMaintenance Status: Good
Generate secure passwords, check for exposed passwords, get visual feedback for strength or get form validation with a minimum password strength required.
![otp_pin_field Card Image](/media-cards/otp_pin_field.png)
otp_pin_field
👍 35 ⬇️ 2.9K
Dart 3 compatibleMaintenance Status: Good
A flutter package which will help you to generate pin code fields with beautiful design and animations. Can be useful for OTP or pin code inputs.
![otp_timer_button Card Image](/media-cards/otp_timer_button.png)
otp_timer_button
👍 34 ⬇️ 1.5K
Dart 3 compatibleMaintenance Status: Good
This package for easy implementation otp timer button which will be enabled after specified time.
flutter_dynamic_otp
👍 33 ⬇️ 24
Dart 3 compatibleMaintenance Status: Average
Flutter package that provides a customizable OTP (One-Time Password)
![flutter_pin_code_fields Card Image](/media-cards/flutter_pin_code_fields.gif)
flutter_pin_code_fields
👍 27 ⬇️ 3.7K
Dart 3 compatibleMaintenance Status: Average
A flutter package which will help you generate customizable pin code fields. Can be used for login pins or OTP.
![flutter_pin_code_widget Card Image](/media-cards/flutter_pin_code_widget.png)
flutter_pin_code_widget
👍 27 ⬇️ 246
Dart 3 compatibleMaintenance Status: Good
PIN Code wiget for creating and checking local pin code with flexible settings.
![flutter_verification_code_field Card Image](/media-cards/flutter_verification_code_field.png)
flutter_verification_code_field
👍 26 ⬇️ 168
Dart 3 compatibleMaintenance Status: Good
Flutter verification code input. Primarily used for entering or pasting OTP codes from authorization emails or messages.
code_input
👍 9 ⬇️ 140
Dart 3 compatibleMaintenance Status: Poor
Flutter Code Input Widget
![verification_code_field Card Image](/media-cards/verification_code_field.png)
verification_code_field
👍 7 ⬇️ 65
Dart 3 compatibleMaintenance Status: Good
This package provides an input field that allows you to enter a 4, 5 or 6 digit verification code in your applications.
flutter_otp
👍 85 ⬇️ 59
Maintenance Status: Poor
A Flutter package for sending and validating OTP. Four digit OTP (customizable) is sent as a SMS to the given phone number (and country code).
pin_entry_text_field
👍 35 ⬇️ 66
Maintenance Status: Poor
Fully customizable Pin Entry TextField for flutter, This widget accepts pin of any length and it detects the entry of the last pin.
otp_screen
👍 29 ⬇️ 39
Maintenance Status: Poor
A new Flutter package which helps developer in creating Otp screen with few lines of code.