compufour / 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: 4.*
- scrutinizer/ocular: ~1.1
- squizlabs/php_codesniffer: ~2.3
- dev-develop / 4.1.x-dev
- dev-master / 4.0.x-dev
- 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-fix_ms
- dev-server_ms
- dev-revert-929-master
This package is not auto-updated.
Last update: 2024-01-07 00:03:38 UTC
README
本版本已废弃(请勿使用!!)请使用 sped-nfe
NFePHP 是一个用于管理 NFe 发票开具方与各省 SEFAZ 服务之间通信的 API。完全使用 PHP 构建,可在任何操作系统上运行。要开始,请查看 我们的 Wiki 页面。
不要错过在 NFePHP 讨论组 注册!
PULL REQUESTS(nfephp 存储库已冻结版本,将不再更新)
在此存储库中,仅接受与 BUG 和由 SEFAZ 推动的更改相关的纠正的 "PULL REQUESTS"。
将不接受对代码的更改、改进或添加新功能或新服务的请求,所有这些改进应通过新的存储库 SPED-XXX 提交。
不久(2017 年中旬前),此存储库将停止接受任何贡献并将被废弃,以支持新的存储库!!!为了保持 API 在新版本(4.1.x-dev)中的完整性,正在保持 "namespaces"、方法调用及其参数,除非因 "force majeure" 状况(如 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 fiscal 类库存储库(开发中)
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 集成框架(稳定版)
贡献
这是一个完全的 开源 项目,使用和修改它完全免费。但是,为了继续维护它,我们需要某种形式的贡献,无论是协助编码、文档还是进行测试和识别错误和BUG。
此外,如果您认为这里获得的信息对您有所帮助,并且认为这值得一些金钱,并且愿意捐赠,您可以随时通过以下方式发送任何金额:
重要
从本版本开始,版本号将遵循 API 的自身序列,而不再引用 NFe、CTe 等布局版本。
在本版本(4.0.x)中,只有 NFe 可用,对于 CTe 和 MDFe,应使用 3.10-Obsoleta 标签,至少直到其他贡献者愿意协助重构。
开发版本
版本 4.0.x-dev(注意 SEFAZ 的布局版本 3.10)
稳定版本
由于国会、州 SEFAZ 和 Web 服务提供商不断推动 schemas、web services 和法规的更改,因此 master 版本和最新标签是最稳定和最实用的。
使用 Composer 安装
通过终端进入您项目的根目录,然后执行
composer require nfephp-org/nfephp
这将在您的 composer.json 文件中添加 API 依赖项。API 将被下载并放置在 "vendor" 文件夹中,并且 autoload.php 文件将被更新。
条件
使用此API需要具备PHP编程知识,以及了解当前PHP语言的标准和税务法规基础。强烈建议学习以下网站的资料。
- NFe系统工作原理文档 SEFAZ NFe
- CTe系统工作原理文档 SEFAZ CTe
- MDFe系统工作原理文档 SEFAZ MDfe
- Composer 文档 构建 composer.json
- 重要 PHP的最佳实践
- 编码风格指南 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>
。 - 错误修复和其他更改,将增加
<patch>
。
有关更多信息,请访问 http://semver.org/。
开发
对于所有开发、错误修复、添加和测试,应使用 develop
分支。在 master
分支上将是被认为是稳定的代码。根据需要,可能会出现新的分支,无论是为了维护先前版本还是为了建立错误修复。但只有这两个建立的分支将永久维护。
错误跟踪器
发现了错误?在这里的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