nfephp-org / nfephp
NFePHP 是一个用于管理 NFe 发行人与省级 SEFAZ 服务之间通信的 API。完全使用 PHP 构建,可在任何操作系统上运行。
Requires
- php: >=5.5.0
- ext-curl: *
- ext-dom: *
- ext-fileinfo: *
- ext-iconv: *
- ext-libxml: *
- ext-mbstring: *
- ext-openssl: *
- ext-soap: *
- ext-xml: *
- ext-xmlreader: *
- ext-zip: *
- ext-zlib: *
- endroid/qrcode: 1.*@dev
- mpdf/mpdf: 6.0.0
- soundasleep/html2text: ~0.2
- zendframework/zend-mail: ^2.5
Requires (Dev)
- phpunit/phpunit: ^5.7
- scrutinizer/ocular: ~1.1
- squizlabs/php_codesniffer: ~2.3
- dev-develop / 4.1.x-dev
- dev-master / 4.0.x-dev
- v4.0.70
- v4.0.69
- v4.0.68
- v4.0.67
- v4.0.66
- v4.0.65
- v4.0.64
- v4.0.63
- v4.0.62
- v4.0.61
- v4.0.60
- v4.0.59
- v4.0.58
- v4.0.57
- v4.0.56
- v4.0.55
- v4.0.54
- v4.0.53
- v4.0.52
- v4.0.51
- v4.0.50
- v4.0.49
- v4.0.48
- v4.0.47
- v4.0.46
- v4.0.45
- v4.0.44
- v4.0.43
- v4.0.42
- v4.0.41
- v4.0.40
- dev-layout_nfe_v4.00
- dev-revert-929-master
This package is auto-updated.
Last update: 2022-10-27 17:50:35 UTC
README
本版本已弃用(请勿使用)!建议使用 sped-nfe
NFePHP 是一个用于管理 NFe 发行人与省级 SEFAZ 服务之间通信的 API。完全使用 PHP 构建,可在任何操作系统上运行。要开始,请查看 我们的 Wiki 页面。
不要错过在 NFePHP 讨论组 注册!
拉取请求(nfephp 仓库的版本已冻结,将不再更新)
在此仓库中,仅接受与 BUG 和由 SEFAZ 推动的更改相关的修正的“拉取请求”。
不再接受对代码的修改、改进或添加新功能或新服务的请求,所有这些改进都应发送到新的 SPED-XXX 仓库。
不久(2017 年中旬前),此仓库将停止接收任何贡献并将被弃用,以支持新的仓库!!!为了保持 API 的新版本(4.1.x-dev)的完整性,正在维护“命名空间”、方法调用及其参数,除非是“非常规”原因,如 SEFAZ 强制进行此类更改。在使用新版本时,请注意类名已被简化,以及一些资源(如打印)已被转移到其他仓库。
仓库重构
CTe、MDFe 等结构已被从本仓库移除,并转移到其新的仓库,请参见
SPED NFe 新的 NFe 类仓库(正在测试中)
SPED CTe 新的 CTe 类仓库(正在开发中)
SPED MDFe 新的 MDFe 类仓库(正在开发中)
SPED NFSe 新的 NFSe 类仓库(正在开发中)
其他组件也将有新的仓库,但暂时仍保留在此。
SPED COMMON 新的用于所有或多个项目的通用类仓库
SPED DA 新的用于生成文档打印的类仓库
POSPRINT 用于 POS 打印机的打印框架(正在开发中)
SPED GNRE GNRE类库(稳定版)存储库
除此之外,还有一些其他存储库正在建设中或已经拥有库
SPED EFD Sped EFD财政类库存储库(开发中)
SPED RESTFUL Sped文档生成RestFul应用程序(开发中)
SPED CONSOLE 命令行资源集合(开发中)
SPED DOCS NFePHP包文档集合(过时、不完整且部分)
SPED EMISSOR 文档发射器“前端”应用程序(未开始)
SPED eSOCIAL eSocial类库存储库(仅文档)
SPED SERIALIZER XML序列化类库存储库(概念)
其他相关项目,但具有特定目的
SPED eFINANCEIRA eFinanceira类库存储库(稳定版)
SPED eSFINGE 与TCE/SC的eSfinge系统集成的框架(稳定版)
贡献
这是一个完全的开源项目,使用和修改它您不需要支付任何费用。然而,为了继续维护它,需要某种形式的贡献,无论是协助编码、文档还是进行测试和错误识别和BUGs。
此外,如果您认为在这里获得的信息对您有所帮助,并认为这值得一些金钱,并且愿意捐赠,您可以通过以下方式免费捐赠
重要
从本版本开始,版本号将遵循API的自身序列,而不再参照NFe、CTe等布局版本号。
在本版本(4.0.x)中,仅NFe功能正常,对于CTe和MDFe,至少在其他合作者提供辅助重构之前,应使用3.10-已废弃的标签。
开发版本
版本 4.0.x-dev(注意SEFAZ的布局版本3.10)
稳定版本
由于国会、州SEFAZ和web服务提供商不断进行的模式、web服务和立法的变更,MASTER版本和最后一个标签是最稳定和功能齐全的。
使用Composer安装
使用Pelo终端导航到您项目的根目录,然后执行
composer require nfephp-org/nfephp
这将使您的composer.json文件添加API依赖项。API将被下载并放置在“vendor”文件夹中,同时autoload.php文件将被更新。
条件
要使用此API,需要具备PHP编程知识,了解当前的语言规范以及税收法规基础。强烈建议研究以下网站的内容。
- 系统NFe运作文档 SEFAZ NFe
- 系统CTe运作文档 SEFAZ CTe
- 系统MDFe运作文档 SEFAZ MDfe
- Composer文档 Documentação 构建文档 composer.json
- 重要 PHP do Jeito Certo
- 编码风格指南 PSR-2
- 自动加载 PSR-4
注意:NFSe(电子服务发票)没有统一标准,API仅包含一些用于此目的的系统构建示例,但没有为这类税务文件提供真正可用的API。
目标
API允许NFe发射程序与SEFAZ通信。考虑到需要的大量信息和每个发射者的特性和具体要求,API并非为自身发射NFe而创建。
依赖
- composer https://getcomposer.org.cn/
- Apache: https://httpd.apache.ac.cn/
- PHP 5.5+: https://php.ac.cn
- 第三方库
- FPDF:暂时用于生成PDF文档。查看 http://www.fpdf.org/。应被ZendPdf类(由于PSR标准趋势、更积极的维护和通过composer分发)取代。
- zendframework/zend-mail (v.2.x):用于向税务电子文件收件人发送电子邮件。
- zendframework/zend-barcode (v.2.x):用于在PDF税务文件中生成128码。
- soundasleep/html2text (v.0.2):用于将电子邮件的HTML消息转换为纯文本。用于电子邮件发送类。
- endroid/qrcode (v.1.x):用于在NFCe上生成打印的QRCode。
- PHP扩展
- cURL:通常与PHP 5.3+一起启用。查看 http://br2.php.net/manual/book.curl.php 和 http://curl.haxx.se/。
- OpenSSL:通常与PHP 5.3+一起启用。查看 http://br2.php.net/manual/book.openssl.php 和 http://www.openssl.org/。
- mcrypt:通常与PHP 5.3+一起启用。查看 https://php.ac.cn/manual/book.mcrypt.php。
- imap:通常与PHP 5.3+一起启用。查看 https://php.ac.cn/manual/book.imap.php。
- GD: 通常在PHP 5.3+中已启用。请参阅 https://php.ac.cn/manual/book.image.php
- ZIP: 用于下载SEFAZ的NFe。请参阅 https://php.ac.cn/manual/en/book.zip.php
- Zlib: 用于下载后解压缩NFe。请参阅 https://php.ac.cn/manual/en/book.zlib.php
安装
有关安装的更多详细信息,请参阅 https://github.com/nfephp-org/nfephp/wiki/Instalação。
快速入门
使用 git clone --branch=develop https://github.com/nfephp-org/nfephp.git
克隆存储库或 下载最新稳定版本。
$ composer install $ ./vendor/bin/phpunit
版本控制
为了透明度和对发布周期的辨别,并力求保持与先前版本的兼容性,NFePHP的版本号将尽可能保持以下标准。
发布将按照以下格式编号
<major>.<minor>.<patch>
构建将遵循以下指南
- 与先前版本不兼容的更改,将增加
<major>
。 - 在不破坏与先前版本兼容性的情况下添加新功能,将增加
<minor>
。 - 修复bug和其他更改,将增加
<patch>
。
有关更多信息,请访问 http://semver.org/。
开发
所有开发,包括bug修复、添加和测试,都应该使用 develop
分支。在 master
分支上将是被认为稳定的代码。根据需求,可能会出现新的分支,无论是为了维护旧版本还是为了建立bug修复。但只有这两个已建立的分支将被永久维护。
bug跟踪器
发现了bug?请在这里的GitHub上告诉我们!
https://github.com/nfephp-org/nfephp/issues
维护者(待审查)
- NFe -
Roberto L. Machado
- NFCe -
Roberto L. Machado
- NFSe -
未定义
- CTe -
未定义
- MDFe -
未定义
- CLe -
未定义
Pull Request
为了使您的Pull Request被接受,它必须遵循此文档中描述的标准 http://www.walkeralencar.com/PHPCodeStandards.pdf