datitecnologia / 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
This package is not auto-updated.
Last update: 2024-09-17 19:57:15 UTC
README
本版本已停止更新(请勿使用!!)请选择sped-nfe
NFePHP是一个用于管理NFe发行者与各州SEFAZ服务之间通信的API。完全使用PHP构建,可在任何操作系统上运行。要开始,请参阅我们的Wiki页面。
不要错过在NFePHP讨论组注册!
PULL REQUESTS(nfephp仓库已冻结版本,将不再更新)
在此仓库中,仅接受与BUG和由SEFAZ推动的变更相关的纠正的“PULL REQUESTS”。
将不再接受代码更改、改进或新功能或新服务的添加,所有这些改进都应发送到新的SPED-XXX仓库。
不久(2017年中)此仓库将停止接收任何贡献并停止更新,以支持新的仓库!!!为了保持新版本(4.1.x-dev)API的完整性,正在保持“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税务类的新仓库(处于开发阶段)
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 系统集成的框架(稳定版)
贡献
这是一个完全的 开源 项目,使用和修改它您无需支付任何费用。但是,为了继续维护它,我们需要一些贡献,无论是帮助编码、编写文档还是进行测试和错误识别。
此外,如果您认为这里获得的信息对您有帮助,并且认为这值得一定的金钱,并且愿意捐赠,您可以通过以下方式捐赠任何金额:
重要
从本版本开始,版本号将遵循 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 编程知识,了解语言的当前标准,并具备税收法律的基础知识。强烈建议研究以下网站的内容。
- NFe 系统功能文档 SEFAZ NFe
- CTe 系统功能文档 SEFAZ CTe
- MDFe 系统功能文档 SEFAZ MDfe
- Composer 文档 构建 composer.json
- 重要 PHP do Jeito Certo
- 编码风格指南 PSR-2
- 自动加载 PSR-4
注意:NFSe(电子服务发票)没有统一的格式,API只为构建此类系统提供了一些示例,但没有为这种类型的税务文件提供真正功能的API。
目标
API允许NFe(发票)发行程序与SEFAZ(巴西联邦税务局)通信。鉴于需要大量信息和每个发行者的特性和具体要求,API并非专为发行NFe而创建。
依赖关系
- composer https://composer.php.ac.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 -
未定义
拉取请求
为了您的拉取请求被接受,它必须遵循本文件中描述的规范 http://www.walkeralencar.com/PHPCodeStandards.pdf