Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Laravel Otp Manager

Laravel Otp Manager Laravel Package

salehhashemi/laravel-otp-manager

Laravel OTP Manager provides a simple, secure way to generate, send, and verify one-time passwords in Laravel applications. It supports multiple delivery channels, configurable expiry, rate limiting, and middleware to protect routes and actions with minimal setup.

View on GitHub
Deep Wiki
Context7

Generate, send, verify, and manage one-time passwords for Laravel

Frequently asked questions about Laravel Otp Manager
How do I install and configure Laravel OTP Manager?
Install it with Composer using composer require salehhashemi/laravel-otp-manager, then publish the package config and migrations. Add the provided OTP trait to your User model as described by the package, and configure OTP length, expiry, and resend cooldown values. The assessment describes this as a low-friction path that a Laravel engineer can validate in a one- to two-day proof of concept.
Which Laravel and PHP versions does Laravel OTP Manager support?
The evaluation lists Laravel 10, 11, and 12 with PHP 8.1 through 8.3 as the expected support matrix, but you should confirm the declared constraints in composer.json. Do not rely on CI alone, because CI may not run on every version you deploy. Check the package metadata before adding it to a production application.
How does Laravel OTP Manager send OTPs via SMS or email?
The package overview says it supports multiple delivery channels, but the provided material does not document whether it delegates to Laravel Notifications or ships its own drivers. If it uses Laravel Notifications or a channel contract, it can inherit your existing mail, SMS, and queue plumbing. If it has bespoke drivers, plan to write an adapter for your contracted SMS aggregator such as Twilio, Vonage, or a regional provider. Confirm whether queueing is the default or opt-in before relying on it for delivery latency.
Are OTPs stored hashed and verified with constant-time comparison in Laravel OTP Manager?
The overview does not state whether OTPs are stored hashed or verified with hash_equals or another constant-time comparison. That is a security-critical detail for credential issuance, so inspect the source and tests rather than assuming the README covers it. Treat the package as unaudited until you have verified storage and comparison behavior yourself.
Does Laravel OTP Manager enforce single-use OTPs atomically?
The evaluation flags single-use enforcement as a key spike question: the package must delete or mark an OTP consumed inside a transaction or lockForUpdate to avoid a check-then-act race. The provided overview does not confirm whether that atomic behavior is implemented. Test concurrent verification attempts in your proof of concept and read the verification code before trusting it on an authentication path.
What rate limiting and resend cooldown features does Laravel OTP Manager provide?
The package advertises configurable expiry, rate limiting, and resend cooldown, but the overview does not detail whether limits are per identifier, per IP, or per device. Verify whether rate limiting is enforced by the package or left to your application, and how lockout and attempt caps behave after a cache flush. These controls matter for preventing SMS-toll fraud and brute-force OTP guessing.
How do I protect Laravel routes with OTP middleware?
The package overview includes middleware intended to protect routes and actions with minimal setup. The usual pattern is to apply the middleware to routes that require a verified OTP challenge, then let your application-owned service coordinate issuance and verification. Confirm the middleware alias, expected session or token state, and failure responses in the package source before wiring it into production routes.
Does Laravel OTP Manager emit events like OtpGenerated, OtpVerified, and OtpFailed?
The provided material does not confirm whether the package emits domain events for OTP generation, verification, or failure. Events are important because they let you wire metrics, audit logs, and anomaly alerting without patching vendor code. If events are missing, plan to wrap the package behind an application-owned OtpService and emit your own events there.
Is Laravel OTP Manager safe and actively maintained for production use?
The package is MIT licensed with a single maintainer, a low dependent count, and little public production validation, so it carries a bus-factor and early-adopter risk on a security-critical path. The last release timestamp in the assessment is dated 2026-06-17, which should be verified against Packagist rather than assumed to indicate maintenance health. Forking is the real mitigation under MIT, but your team must own that contingency and audit the security behavior. Also confirm whether expired rows are pruned or whether you need a scheduled cleanup job.
How does Laravel OTP Manager compare to Laravel Fortify or built-in password reset tokens?
Laravel OTP Manager is intended for phone or email verification and step-up challenges, not as a replacement for Laravel's authentication primitives. Fortify and Jetstream provide broader authentication and two-factor features, while built-in password-reset tokens cover a different flow. Use this package behind an application-owned OtpService interface so it remains an implementation detail and is cheap to replace.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console