Title here
Summary here
Install the package via Composer:
composer require onsefy/validate-user-laravel
Laravel 11+ will auto-discover the service provider and facade. If not, add manually to config/app.php:
'providers' => [
// ...
OnSefy\Laravel\OnSefyProvider::class,
],
'aliases' => [
// ...
'OnSefy' => OnSefy\Laravel\Facades\OnSefy::class,
],
Publish the config file:
php artisan vendor:publish --tag=onsefy-config
This will create a config file at config/onsefy. Add your credentials to .env:
ONSEFY_PLAN_TYPE=free
ONSEFY_API_KEY=your-api-key-here
ONSEFY_SERVICE_ID=your-service-id-here
use OnSefy;
$response = OnSefy::validateUser([
'email' => 'user@example.com',
'phone' => '+13434128788',
'ip' => '103.209.253.36',
'name' => 'John Doe',
'user_agent' => 'mozilla/5.0 (macintosh; intel mac os x 10.15; rv:136.0) gecko/20100101 firefox/136.0',
]);
if ($response['status']) {
// Take action based on risk score or level
$risk = $response['summary']['risk_score'];
$risk_level = $response['summary']['risk_level'];
}
To effectively prevent fake signups and reduce fraud risk, follow this validation strategy:
Pre-validate user data
Call OnSefy::validateUser($userData)
before creating or storing a new user record.
Evaluate the response
Inspect key indicators from the response:
risk_score
β numerical fraud risk (0 to 10)verify_level
β 0,1,2 level classification (e.g.,“0 Legit”,“1 Suspicious”, “2 Fraud” )risk_patterns
β matched signals or warnings (e.g., “x pattern”, “y pattern”)Take action based on risk score
risk_score > 1
risk_score <= 2
, review or throttle above thatThis ensures your platform stays protected while balancing user experience.
if (isset($response['summary']) AND $response['summary']['risk_score'] <= 1.00 ) {
// Take your action
} else {
//reject
}
Risk Level | Label | Action Suggestion |
---|---|---|
0 β 1.00 | Low | Proceed |
1.01 β 2.50 | Suspicious | Review or challenge |
2.51 | Fraud | Block and Reject |