This package makes it easy to use Serpro Datavalid API with Laravel framework.
This package can be installed via composer:
composer require lucasgiovanny/laravel-serpro-datavalid
- Add your credentials to
.env
file
SERPRO_DATAVALID_CONSUMER_KEY=
SERPRO_DATAVALID_CONSUMER_SECRET=
SERPRO_DATAVALID_SANDBOX=false
- To use this package, you just need to import the Person Facades.
use LucasGiovanny\SerproDataValid\Person;
rawValidation
: Make a raw validation with any data you need to validate according to Datavalid API Docs.validateName
: Returns whether the name belongs to the CPF and its rate of assertiveness.validateGender
: Returns whether the CPF has this gender.isBrazilian
: Returns whether the person to whom this CPF belongs is Brazilian or not.validateParentsName
: Returns whether the parents name belongs to the CPF and its rate of assertiveness.isCPFRegular
: Returns if CPF is regular with Brazilian government.validatePhoto
: Returns if the person in the photo is the person that owns this CPF number.
Param | Type |
---|---|
cpf | string (required) |
answers | array (required) |
Example:
use LucasGiovanny\SerproDataValid\Person;
$data = [
'nome' => "João da Silva",
'sexo' => 'M'
'situacao_cpf' => 'regular',
];
$validation = Person::rawValidation("00000000000", $data);
Please, see the Data Valid API docs for a list of all the propriety that can be checked.
Param | Type |
---|---|
cpf | string (required) |
name | string (required) |
getSimilarity | bool (default: false) |
Example:
use LucasGiovanny\SerproDataValid\Person;
$validation = Person::validateName("00000000000", "João da Silva");
//return true or false;
$validation = Person::validateName("00000000000", "João da Silva", true);
//return an object, like:
// $validation->nome = true;
// $validation->nome_similaridade = 0.99
Param | Type |
---|---|
cpf | string (required) |
gender | string (required) |
Example:
use LucasGiovanny\SerproDataValid\Person;
$validation = Person::validateGender("00000000000", "F"); // gender needs to be "F" or "M"
//return true or false;
Param | Type |
---|---|
cpf | string (required) |
Example:
use LucasGiovanny\SerproDataValid\Person;
$validation = Person::isBrazilian("00000000000");
//return true or false;
Param | Type |
---|---|
cpf | string (required) |
parents | array (required) |
getSimilarity | bool (default: false) |
Example:
use LucasGiovanny\SerproDataValid\Person;
$parents = [
'mother_name' => 'Eurica Magalhães Souza';
'father_name' => 'Frederico Fagundes Souza';
]; // you can check just one of the names
$validation = Person::validateParentsName("00000000000", $parents);
//return an object with "mother_name" and "father_name" true or false values;
$validation = Person::validateParentsName("00000000000", $parents, true);
//return an object with "mother_name" and "father_name" true or false values,
//and "mother_name_similarity" and "father_name_similarity" numbers,
//just like in validateName method.
Param | Type |
---|---|
cpf | string (required) |
Example:
use LucasGiovanny\SerproDataValid\Person;
$validation = Person::isCPFRegular("00000000000");
//return true or false;
Param | Type |
---|---|
cpf | string (required) |
photo | string (required) |
Example:
use LucasGiovanny\SerproDataValid\Person;
$validation = Person::validatePhoto("00000000000", base64_encode($photo));
//return true or false;
Please see CHANGELOG for more information what has changed recently.
Test needs to be written. Feel free to collaborate.
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
Please see CONTRIBUTING for details.
The MIT License (MIT). Please see License File for more information.