nfephp - 用于巴西电子发票处理的PHP库
nfephp是一个强大的PHP库,专门用于处理巴西的NF-e(eletrônica de nota fiscal)和CT-e(conhecimento de transportes eletrônico)。这些文件是商家在销售商品或提供服务时需要生成和管理的重要文档。借助nfephp,你可以轻松地开发出能够创建、验证和管理这些发票的应用程序。
使用场景
nfephp适用于以下几种情况:
- 开发电子商务平台,以处理巴西客户的发票。
- 创建一个发票管理系统,以便于跟踪、管理和验证NF-e和CT-e。
- 构建B2B解决方案,以便企业之间交换电子发票。
功能特点
以下是nfephp的一些主要功能和特性:
- 支持NF-e和CT-e:nfephp可以处理这两种类型的电子发票。
- 完全基于PHP:这是一个纯PHP库,易于集成到你的现有项目中。
- 遵循PECL规范:nfephp遵循PECL规范,使其与其他PHP扩展兼容。
- 内置XML解析器:nfephp内置了一个高效的XML解析器,用于处理发票文件。
- 提供多种操作方法:nfephp提供了创建、修改、删除和验证发票的方法。
如何开始使用?
要开始使用nfephp,首先你需要通过Composer安装它:
composer require nfephp-org/nfephp
然后,你可以按照项目的官方文档进一步了解如何使用它的各种功能。
示例代码
下面是一个简单的示例,展示了如何使用nfephp创建一个NF-e发票:
<?php
require_once 'vendor/autoload.php';
use NFePHP\NFe\Create;
use NFePHP\Common\DOMDocument;
use NFePHP\Common\Exception;
try {
$nfe = new Create();
// 设置发票信息
$nfe->addNFe(
[
'ide' => [
'UF' => 'SP',
'cUF' => '48',
'TPAmb' => '1', // 环境:1为生产环境,2为测试环境
'cNPJ' => '90.184.578/0001-61',
'mod' => '55',
'serie' => '1',
'nNF' => '1',
'dhEmi' => date('Y-m-d\TH:i:s'),
'tpEmis' => '1', // 发票类型:1为正常发票,2为应急发票
'cDV' => '0',
'tpIni' => '',
'tpFin' => '',
'CODIGO' => ''
],
'infAdFisco' => '',
'dest' => [
'CNPJ' => '90.184.578/0001-61'
],
'det' => [
[
'prod' => [
'cProd' => '123456789',
'xProd' => '产品描述',
'NCM' => '12345678901234',
'CEST' => '',
'CFOP' => '1111',
'uCom' => 'UN',
'qCom' => '1',
'vUnCom' => '100.00',
'vProd' => '100.00',
'cEAN' => '12345678912345',
'vFrete' => '0.00',
'vSeg' => '0.00',
'vDesc' => '0.00',
'vOutro' => '0.00',
'vII' => '0.00',
'vIPI' => '0.00',
'vICMS' => '0.00',
'vPIS' => '0.00',
'vCOFINS' => '0.00',
'ClEnq' => '',
'indTot' => '1'
]
]
],
'imposto' => [],
'transp' => []
]
);
// 生成XML文件
$doc = new DOMDocument();
$doc = $nfe->createNFe($doc);
$xml = $doc->saveXML();
// 输出XML文件
echo $xml;
} catch (Exception $e) {
echo "错误: {$e->getMessage()}";
}
结论
如果你正在寻找一个可靠的PHP库来处理巴西的电子发票,那么nfephp无疑是最佳选择之一。它提供了一系列强大的工具,可以帮助你轻松地创建、验证和管理NF-e和CT-e发票。只需安装一下,并参考官方文档即可快速上手。
希望这篇文章对你有所帮助!如果你对nfephp有任何