定制 inteligenceeerp/sped-gnre2 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

inteligenceeerp/sped-gnre2

Composer 安装命令:

composer require inteligenceeerp/sped-gnre2

包简介

API para a emissão de guias GNRE para a SEFAZ

README 文档

README

Build status (PHP Composer) Coverage Status Total Downloads Latest Stable Version Latest Unstable Version License

Atenção!!

Caso encontre algum estado que possua uma regra especial para gerar uma GNRE por favor informar abrindo uma issue. Dessa forma podemos manter a API atualizada e ajudar a todos que utlizam a GNRE PHP

Atenção 2!!

Se você possui um certificado da certisign e está com o erro "Bad request" veja a solução encontrada pelo renandelmonico utilizando as classes da sped-common nesse link

Os certificados da certisign possuem algum problema em que não é possível extrair a cadeia de certificação, portanto é necessário fazer o download da cadeia manualmente nesse link (Hierarquia V5).

Após o download é necessário extrair usando o openssl, copiar o conteúdo gerado pelos 3 certificados e colar em um novo arquivo .pem.

openssl x509 -inform der -in ARQUIVO.cer -pubkey -noout > ARQUIVO.pem

Depois de realizar o processo acima, é necessário utilizar o método addCurlOption da classe Sped\Gnre\Webservice\Connection para alterar algumas configurações e informar manualmente a cadeia de certificação.

$webService->addCurlOption([
    CURLOPT_SSL_VERIFYHOST => 2,
    CURLOPT_SSL_VERIFYPEER => 1,
    CURLOPT_SSLVERSION => CURL_SSLVERSION_TLSv1,
    CURLOPT_CAINFO => 'ARQUIVO.pem'
]);

Versões suportadas

PHP GNRE
PHP 5.6 0.1.4
HHVM 0.1.4
PHP 7.0 0.1.5
PHP 7.3 0.1.6

Antes de usar a API

  • Verifique se seu certificado digital não foi expedido através da certisign, pois existe um problema na cadeia do certificado que impossibilita a emissão de guias GNRE. Certificados expedidos através do SERASA funcionam normalmente para a emissão (até agora nenhum erro foi relatado).

  • É permitido utilizar o mesmo certificado utilizado para emitir NF-e.

  • É necessário entrar em contato com a SEFAZ de cada estado pedindo liberação do serviço de emissão de GNRE.

  • Leita todos os tópicos no FAQ oficial em http://www.gnre.pe.gov.br/gnre/portal/faq.jsp. Os tópicos abordados são muito úteis para quem está começando nesse serviço.

GNRE PHP

Objetivo

API possibilita a comunicação com a SEFAZ para a emissão da nota GNRE (Guia Nacional de Recolhimento de Tributos Estaduais). A API GNRE tem como maior inspiração a API NFEPHP que você pode encontrar através do link https://github.com/nfephp

Dependências

Road-map

Atualmente estamos utilizando o trello para gerenciar o que será implementado nas próximas versões e melhorias na API, esse road map poe ser acessado em https://trello.com/b/kNP1tvsi/gnre-api-github

Informações úteis

Descrição Endereço
Grupo de discussão https://groups.google.com/forum/#!forum/gnrephp
Site oficial do governo http://www.gnre.pe.gov.br/gnre/index.html
Site do Projeto http://nfephp-org.github.io/sped-gnre/
Wiki, onde é possível encontrar maiores informações de como utilizar a API https://github.com/nfephp-org/sped-gnre/wiki
Site oficial da SEFAZ de todo os estados http://www.gnre.pe.gov.br/gnre/portal/linksUteis.jsp
  1. Antes de gerar qualquer guia GNRE com o seu certificado, tenha CERTEZA que você possui autorização para isso. A geração de GNRE depende de cada estado, ou seja, se você deseja gerar a guia para o Acre (com destino ao Acre) tenha certeza que já pediu a liberação do certificado no SEFAZ Acre e repita esse processo para cada estado.

Documentação

  • Documentação da GNRE PHP gerada com o PHPDOC pode ser visualizada aqui

  • Nosso wiki de como utilizar a API e gerar as GNRES está disponível aqui no github

  • Exemplos com código fonte são encontrados na pasta exemplos/

Instalação via composer

Adicionando a GNRE PHP em um projeto existente com o composer

Caso você não possua o composer veja esse link antes de prosseguir

Adicione a dependência da GNRE PHP no arquivo composer.json :

Para PHP <= 5.5

{
    "nfephp-org/sped-gnre": "0.1.1"
}

Para PHP = 5.6

{
    "nfephp-org/sped-gnre": "0.1.4"
}

Para PHP >= 7.0

{
    "nfephp-org/sped-gnre": "0.1.5"
}

Atualize suas depedências existentes no composer :

composer update

Possíveis erros

Erro : unable to use client certificate (no key found or wrong pass phrase?)

Se você está obtendo essa mensagem após enviar a requisição para o web service da SEFAZ verifique a senha que você está utilizando, pois esse erro ocorre quando a senha informada não bate com a senha do certificado utilizado

Erro: [InvalidArgumentException] Could not find package marabesi/gnre at any version for your minimum-stability (stable). Check the package spelling or your minimum-stability

Esse problema ocorre pois não estamos informando ao composer qual a versão mínima que queremos utilizar, para resolver esse problema basta adicionar a seguinte linha no seu arquivo composer.json

{
    "minimum-stability": "dev"
}

Quick start

Clone o repositório do projeto

git clone https://github.com/nfephp-org/sped-gnre.git

Vá para a pasta de exemplos

cd exemplos/

Rode o servidor built-in do PHP

php -S localhost:8181

Abra o seu navegador e digite a seguinte URL

http://localhost:8181/gerar-xml.php

Caso queira ver outros exemplos utilizados pela API acesse esse link https://github.com/nfephp-org/sped-gnre/tree/master/exemplos

inteligenceeerp/sped-gnre2 适用场景与选型建议

inteligenceeerp/sped-gnre2 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.01k 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 09 月 22 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 inteligenceeerp/sped-gnre2 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 inteligenceeerp/sped-gnre2 我们能提供哪些服务?
定制开发 / 二次开发

基于 inteligenceeerp/sped-gnre2 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 1.01k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 24
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-3.0-or-later
  • 更新时间: 2025-09-22