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
.envfile
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.
