PHP client library for the Brazilian Post Office Web Service. Integração com Web Service do Correios. Consulta preços e prazos, imprime etiquetas e PLP, etc.
Implementação do Web Service dos correios SIGEP Web.
Integração com Web Service do Correios. Consulta preços e prazos, imprime etiquetas e PLP, etc.
Esta API pode:
Adicione as seguintes linha ao seu arquivo composer.json
:
“stavarengo/php-sigep”: “dev-master”
“stavarengo/php-sigep-fpdf”: “dev-master”
E então execute composer update
via linha de comando.
Nós não controlamos versão através das tags, porem, a branch master só é atualizada quando o código está estável.
Portanto, a versão estável mais atual sempre será a branch master.
Faça o download da última versão.
Para usar as classe do php-sigep, você só precisa carregar o arquivo “php-sigep/src/PhpSigep/Bootstrap.php”. Isso fara com que o loader seja registrado.
Antes de utilizar este projeto em modo produção, é necessário solicitar ao representante comercial dos correios habilitação e senha para o webservice dos correios.
Se você está recebendo a mensagem abaixo ao tentar utilizar o ambiente de homologação, significa que o webservice do correio está temporariamente indisponível. Não adianta criar issue, o melhor a fazer é aguardar ou tentar entrar em contato com o suporte técnico do correio.
Mensagem de erro: Parsing WSDL: Couldn’t load from ‘https://apphom.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl’ : failed to load external entity "https://apphom.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsd
Este problema foi reportado aqui: https://github.com/stavarengo/php-sigep/issues/35
Alguns usuarios tiveram problemas de conexão e autentificação com WebService do Correios em ambiente de produção devido a versão do PHP.
Para resolver o problema, você pode ou utilizar uma versão masi rescente do PHP (>=5.4) ou fazer o download do WSDL do Correios e utilizar ele no seu servidor para fazer conexão.
Caso escolha fazer o download o WSDL, siga os passos abaixo:
$config = new \PhpSigep\Config();
$config->setEnv(\PhpSigep\Config::ENV_PRODUCTION);
$config->setWsdlAtendeCliente('CAMINHO-DO-SEU-ARQUIVO-LOCAL');
\PhpSigep\Bootstrap::start($config);
OBS: Não irá funcionar em um servidor local, como Wamp, Xammp entre outros.
O componente de cache do PhpSigep foi inspirado no componente de cache do Zend Framework.
Por padrão o cache do PhpSigep está desabilitado.
Este cache armazena algumas respostadas do WebService dos correios que podem ser reutilizadas posteriomente.
Alem de aumentar a velocidade de respostas das requisições, também evitamos que os usuários fiquem impedidos de continuar
mesmo quando o servidor do Correios esteja instavel (acredite: ele fica instável com muita frequencia).
Para habilitar o cache, use a chave “cacheOptions” ao criar a configuração do PhpSigep.
Ex:
php new \PhpSigep\Config( array( 'cacheOptions' => array( 'storageOptions' => array( 'enabled' => true, 'ttl' => 60*60*24*7,// Uma semana ), ), ... ), );
Dentro do array
storageOptions
você pode usar o nome de qualquer atributo da classe PhpSigep\Cache\Storage\Adapter\AdapterOptions
.
Para executar a testsuite, execute ./vendor/bin/phpunit
via linha de comando.
git checkout -b nova-funcionalidade
)git commit -am 'Adiciona nova funcionalidade'
)git push origin nova-funcionalidade
)