jeidison / serpro-php
SDK para web service do serpro
Installs: 2 209
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/jeidison/serpro-php
Requires
- php: ^7.2|^8.0
- ext-curl: *
- ext-json: *
Requires (Dev)
- pestphp/pest: 0.4.x-dev
README
Instalação
$ composer require jeidison/serpro-php
Como usar
- Consulta de CPF
... use Jeidison\SerproPHP\CpfConsultation\ConsultCpfParameter; use Jeidison\SerproPHP\SerproPHP; $parameter = ConsultCpfParameter::new(); $parameter->setConsumerKey('SUA CONSUMER KEY'); $parameter->setConsumeSecret('SUA CONSUMER SECRET'); $parameter->setCpf('40442820135'); $response = SerproPHP::new()->consultCpf($parameter); // métodos disponíveis $response->getResult(); $response->isSuccess(); $response->toJson(); $response->toArray(); $response->toObject();
// Exemplo de resposta
{
  "ni":"40442820135",
  "nome":"Nome do CPF 404.428.201-35",
  "situacao":
  {
    "codigo":"0",
    "descricao":"Regular"
  }
}  
- DataValid
... use Jeidison\SerproPHP\SerproPHP; use Jeidison\SerproPHP\DataValid\Address; use Jeidison\SerproPHP\DataValid\Affiliation; use Jeidison\SerproPHP\DataValid\CNH; use Jeidison\SerproPHP\DataValid\DataValidParameter; use Jeidison\SerproPHP\DataValid\Document; $cnh = CNH::new() ->setFirstCnhDate('9999-99-05') ->setCategory('AB') ->setExpirationDate('9999-99-99') ->setLastEmissionDate('9999-99-99') ->setNumber('9999') ->setNumberForeign('1') ->setSituationCode('1'); $affiliation = Affiliation::new() ->setFatherName('XXXX XXXX XXXX') ->setMotherName('XXXX XXXX XXXX'); $address = Address::new() ->setNumber('999') ->setAddress('XXX XXX XXX') ->setCity('XXXX') ->setNeighborhood('XXXXX') ->setUf('SP') ->setZipCode('999999'); $document = Document::new() ->setNumber('9999999') ->setDispatchingBody('SSP') ->setDispatchingUf('SP') ->setType('1'); $parameter = DataValidParameter::new() ->setConsumerKey('SUA CONSUMER KEY') ->setConsumeSecret('SUA CONSUMER SECRET') ->setCnh($cnh) ->setAffiliation($affiliation) ->setAddress($address) ->setDocument($document) ->setName('xxxx xxxx xxxx') ->setCpf('111') ->setBirthDate('9999-99-99') ->setSex('M') ->setCpfSituation('regular') ->setNationality('1'); $response = SerproPHP::new()->dateValidate($parameter); echo $response->toJson();
// Exemplo de resposta
{
   "nome":true,
   "sexo":true,
   "nacionalidade":true,
   "filiacao":{
      "nome_mae":true,
      "nome_mae_similaridade":1.0,
      "nome_pai":true,
      "nome_pai_similaridade":1.0
   },
   "cnh":{
      "nome":true,
      "categoria":true,
      "nome_similaridade":1.0,
      "numero_registro":true,
      "data_primeira_habilitacao":true,
      "data_validade":true,
      "data_ultima_emissao":true,
      "codigo_situacao":false
   },
   "documento":{
      "tipo":true,
      "numero":true,
      "numero_similaridade":1.0,
      "orgao_expedidor":true,
      "uf_expedidor":true
   },
   "endereco":{
      "logradouro":false,
      "numero":false,
      "bairro":false,
      "cep":true,
      "municipio":true,
      "uf":true,
      "logradouro_similaridade":0.6666666666666667,
      "numero_similaridade":0.6,
      "bairro_similaridade":0.6666666666666667,
      "municipio_similaridade":1.0
   },
   "cpf_disponivel":true,
   "nome_similaridade":1.0,
   "data_nascimento":true,
   "situacao_cpf":true
}
Consulta de CNPJ
Não implementada
Consulta de NFe
Não implementada
Vio
Não implementada