PHP Class NFePHP\NFe\ToolsNFe

Inheritance: extends NFePHP\Common\Base\BaseTools
Mostrar archivo Open project: nfephp-org/nfephp Class Usage Examples

Public Properties

Property Type Description
$errors string errrors
$soapDebug string soapDebug

Protected Properties

Property Type Description
$urlPortal string urlPortal Instância do WebService

Public Methods

Method Description
addB2B ( string $pathNFefile = '', string $pathB2Bfile = '', string $tagB2B = '' ) : string addB2B Adiciona tags de comunicação B2B, especialmente ANFAVEA
addCancelamento ( string $pathNFefile = '', string $pathCancfile = '', boolean $saveFile = false ) : string addCancelamento Adiciona a tga de cancelamento a uma NFe já autorizada NOTA: não é requisito da SEFAZ, mas auxilia na identificação das NFe que foram canceladas
addProtocolo ( string $pathNFefile = '', string $pathProtfile = '', boolean $saveFile = false ) : string addProtocolo Adiciona o protocolo de autorização de uso da NFe NOTA: exigência da SEFAZ, a nota somente é válida com o seu respectivo protocolo
assina ( string $xml = '', boolean $saveFile = false ) : string assina Assina uma NFe
ativaContingencia ( string $siglaUF = '', string $motivo = '', string $tipo = '' ) : boolean ativaContingencia Ativa a contingencia SVCAN ou SVCRS conforme a sigla do estado ou EPEC
desativaContingencia ( ) : boolean desativaContingencia Desliga opção de contingência
enviaMail ( string $pathXml = '', array $aMails = [], string $templateFile = '', boolean $comPdf = false, string $pathPdf = '' ) : boolean enviaMail Envia a NFe por email aos destinatários Caso $aMails esteja vazio serão obtidos os email do destinatário e os emails que estiverem registrados nos campos obsCont do xml
getImpostosIBPT ( string $ncm = '', string $exTarif = '0', string $siglaUF = '' ) : array getImpostosIBPT Consulta o serviço do IBPT para obter os impostos ao consumidor conforme Lei 12.741/2012
getLastMsg ( )
getModelo ( ) : string getModelo Retorna o modelo de NFe atualmente setado
getSalvarMensagensEvento ( )
getTimestampCert ( ) : integer getTimestampCert Retorna o timestamp para a data de vencimento do Certificado
imprime ( string $pathXml = '', string $pathDestino = '', string $printer = '' ) : string imprime Imprime o documento eletrônico (NFe, CCe, Inut.)
sefazCCe ( string $chNFe = '', string $tpAmb = '2', string $xCorrecao = '', integer $nSeqEvento = 1, array &$aRetorno = [] ) : array sefazCCe Solicita a autorização da Carta de Correção
sefazCadastro ( string $siglaUF = '', string $tpAmb = '2', string $cnpj = '', string $iest = '', string $cpf = '', array &$aRetorno = [] ) : string sefazCadastro Busca os dados cadastrais de um emitente de NFe NOTA: Nem todas as Sefaz disponibilizam esse serviço
sefazCancela ( string $chNFe = '', string $tpAmb = '2', string $xJust = '', string $nProt = '', array &$aRetorno = [] ) : string sefazCancela Solicita o cancelamento da NFe
sefazConsultaChave ( string $chave = '', string $tpAmb = '2', array &$aRetorno = [], $salvaMensagens = true ) : string sefazConsultaChave Consulta o status da NFe pela chave de 44 digitos
sefazConsultaRecibo ( string $recibo = '', string $tpAmb = '2', array &$aRetorno = [], $saveMensagens = true ) : string sefazConsultaRecibo Consulta a situação de um Lote de NFe enviadas pelo recibo desse envio
sefazDistDFe ( string $fonte = 'AN', string $tpAmb = '2', string $cnpj = '', integer $ultNSU, integer $numNSU, array &$aRetorno = [] ) : string sefazDistDFe Serviço destinado à distribuição de informações resumidas e documentos fiscais eletrônicos de interesse de um ator.
sefazDownload ( string $chNFe = '', string $tpAmb = '', string $cnpj = '', array &$aRetorno = [] ) : string sefazDownload Solicita o download de NFe já manifestada
sefazECPP ( string $chNFe = '', string $tpAmb = '2', integer $nSeqEvento = 1, string $nProt = '', array &$aRetorno = [] ) : string sefazECPP Solicita o cancelamento do pedido de prorrogação do prazo de retorno de produtos de uma NF-e de remessa para industrialização por encomenda com suspensão do ICMS em operações interestaduais
sefazEPEC ( string | array $aXml, string $tpAmb = '2', string $siglaUF = 'AN', array &$aRetorno = [] ) : string sefazEPEC Solicita autorização em contingência EPEC TODO: terminar esse método
sefazEPP ( string $chNFe = '', string $tpAmb = '2', integer $nSeqEvento = 1, string $nProt = '', array $itens = [], array &$aRetorno = [] ) : string sefazEPP Solicita pedido de prorrogação do prazo de retorno de produtos de uma NF-e de remessa para industrialização por encomenda com suspensão do ICMS em operações interestaduais
sefazEnviaLote ( array $aXml, string $tpAmb = '2', string $idLote = '', array &$aRetorno = [], integer $indSinc, boolean $compactarZip = false, $salvarMensagens = true ) : string sefazEnviaLote Solicita a autorização de uso de Lote de NFe
sefazInutiliza ( integer $nSerie = 1, integer $nIni, integer $nFin, string $xJust = '', string $tpAmb = '2', array &$aRetorno = [], $salvarMensagens = true ) : string sefazInutiliza Solicita a inutilização de uma ou uma sequencia de NFe de uma determinada série
sefazManifesta ( string $chNFe = '', string $tpAmb = '2', string $xJust = '', string $tpEvento = '', array &$aRetorno = [] ) : string sefazManifesta Solicita o registro da manifestação de destinatário
sefazManutencaoCsc ( integer $indOp = '', string $tpAmb = '2', string $raizCNPJ = '', string $idCsc = '', string $codigoCsc = '', $saveXml = false, array &$aRetorno = [] ) : string sefazManutencaoCsc Manutenção do Código de Segurança do Contribuinte (Antigo Token)
sefazStatus ( string $siglaUF = '', string $tpAmb = '2', array &$aRetorno = [], $salvarMensagens = true ) : mixed sefazStatus Verifica o status do serviço da SEFAZ/SVC NOTA : Este serviço será removido no futuro, segundo da Receita/SEFAZ devido ao excesso de mau uso !!!
setModelo ( string $modelo = '55' ) setModelo
setSalvarMensagensEvento ( boolean $salvarMensagensEvento ) Se verdade gera os arquivos de logs do envio e resposta da requisição
validarXml ( string $xml = '' ) : boolean validarXml Valida qualquer xml do sistema NFe com seu xsd NOTA: caso não exista um arquivo xsd apropriado retorna false
verificaValidade ( string $pathXmlFile = '', array &$aRetorno = [] ) : boolean verificaValidade Verifica a validade de uma NFe recebida

Protected Methods

Method Description
zAddProtMsg ( string $tagproc, string $tagmsg, string $xmlmsg, string $tagretorno, string $xmlretorno ) : string zAddProtMsg
zGetInfo ( string $xml ) : array zGetInfo Busca informações do XML para uso no sefazEPEC
zMakeQRCode ( string $chNFe, string $url, string $tpAmb, string $dhEmi, string $vNF, string $vICMS, string $digVal, string $token = '', string $cDest = '', string $idToken = '000001', string $versao = '100' ) : string zMakeQRCode Cria a chave do QR Code a ser usado na NFCe
zPutQRTag ( NFePHP\Common\Dom\Dom $dom, $saveFile ) : string zPutQRTag Monta a URI para o QRCode e coloca a tag no xml já assinado
zSefazEvento ( string $siglaUF = '', string $chNFe = '', string $tpAmb = '2', string $tpEvento = '', string $nSeqEvento = '1', string $tagAdic = '' ) : string zSefazEvento
zStr2Hex ( string $str ) : string zStr2Hex Converte string para haxadecimal ASCII

Private Methods

Method Description
zTpEv ( string $tpEvento = '' ) : array zTpEv
zValidParamInut ( string $xJust, integer $nSerie, integer $nIni, integer $nFin ) zValidParamInut

Method Details

addB2B() public method

addB2B Adiciona tags de comunicação B2B, especialmente ANFAVEA
public addB2B ( string $pathNFefile = '', string $pathB2Bfile = '', string $tagB2B = '' ) : string
$pathNFefile string
$pathB2Bfile string
$tagB2B string
return string

addCancelamento() public method

addCancelamento Adiciona a tga de cancelamento a uma NFe já autorizada NOTA: não é requisito da SEFAZ, mas auxilia na identificação das NFe que foram canceladas
public addCancelamento ( string $pathNFefile = '', string $pathCancfile = '', boolean $saveFile = false ) : string
$pathNFefile string
$pathCancfile string
$saveFile boolean
return string

addProtocolo() public method

addProtocolo Adiciona o protocolo de autorização de uso da NFe NOTA: exigência da SEFAZ, a nota somente é válida com o seu respectivo protocolo
public addProtocolo ( string $pathNFefile = '', string $pathProtfile = '', boolean $saveFile = false ) : string
$pathNFefile string
$pathProtfile string
$saveFile boolean
return string

assina() public method

assina Assina uma NFe
public assina ( string $xml = '', boolean $saveFile = false ) : string
$xml string
$saveFile boolean
return string

ativaContingencia() public method

ativaContingencia Ativa a contingencia SVCAN ou SVCRS conforme a sigla do estado ou EPEC
public ativaContingencia ( string $siglaUF = '', string $motivo = '', string $tipo = '' ) : boolean
$siglaUF string
$motivo string
$tipo string
return boolean

desativaContingencia() public method

desativaContingencia Desliga opção de contingência
public desativaContingencia ( ) : boolean
return boolean

enviaMail() public method

enviaMail Envia a NFe por email aos destinatários Caso $aMails esteja vazio serão obtidos os email do destinatário e os emails que estiverem registrados nos campos obsCont do xml
public enviaMail ( string $pathXml = '', array $aMails = [], string $templateFile = '', boolean $comPdf = false, string $pathPdf = '' ) : boolean
$pathXml string
$aMails array
$templateFile string path completo ao arquivo template html do corpo do email
$comPdf boolean se true o sistema irá renderizar o DANFE e anexa-lo a mensagem
$pathPdf string
return boolean

getImpostosIBPT() public method

getImpostosIBPT Consulta o serviço do IBPT para obter os impostos ao consumidor conforme Lei 12.741/2012
public getImpostosIBPT ( string $ncm = '', string $exTarif = '0', string $siglaUF = '' ) : array
$ncm string
$exTarif string
$siglaUF string
return array Array ( [Codigo] => 60063100 [UF] => SP [EX] => 0 [Descricao] => Outs.tecidos de malha de fibras sinteticas, crus ou branqueados [Nacional] => 13.45 [Estadual] => 18 [Importado] => 16.14 )

getLastMsg() public method

public getLastMsg ( )

getModelo() public method

getModelo Retorna o modelo de NFe atualmente setado
public getModelo ( ) : string
return string

getSalvarMensagensEvento() public method

getTimestampCert() public method

getTimestampCert Retorna o timestamp para a data de vencimento do Certificado
public getTimestampCert ( ) : integer
return integer

imprime() public method

imprime Imprime o documento eletrônico (NFe, CCe, Inut.)
public imprime ( string $pathXml = '', string $pathDestino = '', string $printer = '' ) : string
$pathXml string
$pathDestino string
$printer string
return string

sefazCCe() public method

sefazCCe Solicita a autorização da Carta de Correção
public sefazCCe ( string $chNFe = '', string $tpAmb = '2', string $xCorrecao = '', integer $nSeqEvento = 1, array &$aRetorno = [] ) : array
$chNFe string
$tpAmb string
$xCorrecao string
$nSeqEvento integer
$aRetorno array
return array

sefazCadastro() public method

sefazCadastro Busca os dados cadastrais de um emitente de NFe NOTA: Nem todas as Sefaz disponibilizam esse serviço
public sefazCadastro ( string $siglaUF = '', string $tpAmb = '2', string $cnpj = '', string $iest = '', string $cpf = '', array &$aRetorno = [] ) : string
$siglaUF string sigla da UF da empresa que queremos consultar
$tpAmb string
$cnpj string numero do CNPJ da empresa a ser consultada
$iest string numero da Insc. Est. da empresa a ser consultada
$cpf string CPF da pessoa física a ser consultada
$aRetorno array aRetorno retorno da resposta da SEFAZ em array
return string XML de retorno do SEFAZ

sefazCancela() public method

sefazCancela Solicita o cancelamento da NFe
public sefazCancela ( string $chNFe = '', string $tpAmb = '2', string $xJust = '', string $nProt = '', array &$aRetorno = [] ) : string
$chNFe string
$tpAmb string
$xJust string
$nProt string
$aRetorno array
return string

sefazConsultaChave() public method

sefazConsultaChave Consulta o status da NFe pela chave de 44 digitos
public sefazConsultaChave ( string $chave = '', string $tpAmb = '2', array &$aRetorno = [], $salvaMensagens = true ) : string
$chave string
$tpAmb string
$aRetorno array
return string

sefazConsultaRecibo() public method

sefazConsultaRecibo Consulta a situação de um Lote de NFe enviadas pelo recibo desse envio
public sefazConsultaRecibo ( string $recibo = '', string $tpAmb = '2', array &$aRetorno = [], $saveMensagens = true ) : string
$recibo string
$tpAmb string
$aRetorno array
return string

sefazDistDFe() public method

sefazDistDFe Serviço destinado à distribuição de informações resumidas e documentos fiscais eletrônicos de interesse de um ator.
public sefazDistDFe ( string $fonte = 'AN', string $tpAmb = '2', string $cnpj = '', integer $ultNSU, integer $numNSU, array &$aRetorno = [] ) : string
$fonte string sigla da fonte dos dados 'AN' e para alguns casos pode ser 'RS' e para alguns casos pode ser 'RS' e para alguns casos pode ser 'RS'
$tpAmb string tiupo de ambiente
$cnpj string
$ultNSU integer ultimo numero NSU que foi consultado
$numNSU integer numero de NSU que se quer consultar
$aRetorno array array com os dados do retorno
return string contento o xml retornado pela SEFAZ

sefazDownload() public method

sefazDownload Solicita o download de NFe já manifestada
public sefazDownload ( string $chNFe = '', string $tpAmb = '', string $cnpj = '', array &$aRetorno = [] ) : string
$chNFe string
$tpAmb string
$cnpj string
$aRetorno array
return string

sefazECPP() public method

sefazECPP Solicita o cancelamento do pedido de prorrogação do prazo de retorno de produtos de uma NF-e de remessa para industrialização por encomenda com suspensão do ICMS em operações interestaduais
public sefazECPP ( string $chNFe = '', string $tpAmb = '2', integer $nSeqEvento = 1, string $nProt = '', array &$aRetorno = [] ) : string
$chNFe string
$tpAmb string
$nSeqEvento integer
$nProt string
$aRetorno array
return string

sefazEPEC() public method

sefazEPEC Solicita autorização em contingência EPEC TODO: terminar esse método
public sefazEPEC ( string | array $aXml, string $tpAmb = '2', string $siglaUF = 'AN', array &$aRetorno = [] ) : string
$aXml string | array
$tpAmb string
$siglaUF string
$aRetorno array
return string

sefazEPP() public method

sefazEPP Solicita pedido de prorrogação do prazo de retorno de produtos de uma NF-e de remessa para industrialização por encomenda com suspensão do ICMS em operações interestaduais
public sefazEPP ( string $chNFe = '', string $tpAmb = '2', integer $nSeqEvento = 1, string $nProt = '', array $itens = [], array &$aRetorno = [] ) : string
$chNFe string
$tpAmb string
$nSeqEvento integer
$nProt string
$itens array
$aRetorno array
return string

sefazEnviaLote() public method

sefazEnviaLote Solicita a autorização de uso de Lote de NFe
public sefazEnviaLote ( array $aXml, string $tpAmb = '2', string $idLote = '', array &$aRetorno = [], integer $indSinc, boolean $compactarZip = false, $salvarMensagens = true ) : string
$aXml array
$tpAmb string
$idLote string
$aRetorno array
$indSinc integer
$compactarZip boolean
return string

sefazInutiliza() public method

sefazInutiliza Solicita a inutilização de uma ou uma sequencia de NFe de uma determinada série
public sefazInutiliza ( integer $nSerie = 1, integer $nIni, integer $nFin, string $xJust = '', string $tpAmb = '2', array &$aRetorno = [], $salvarMensagens = true ) : string
$nSerie integer
$nIni integer
$nFin integer
$xJust string
$tpAmb string
$aRetorno array
return string

sefazManifesta() public method

sefazManifesta Solicita o registro da manifestação de destinatário
public sefazManifesta ( string $chNFe = '', string $tpAmb = '2', string $xJust = '', string $tpEvento = '', array &$aRetorno = [] ) : string
$chNFe string
$tpAmb string
$xJust string
$tpEvento string
$aRetorno array
return string

sefazManutencaoCsc() public method

sefazManutencaoCsc Manutenção do Código de Segurança do Contribuinte (Antigo Token)
public sefazManutencaoCsc ( integer $indOp = '', string $tpAmb = '2', string $raizCNPJ = '', string $idCsc = '', string $codigoCsc = '', $saveXml = false, array &$aRetorno = [] ) : string
$indOp integer
$tpAmb string
$raizCNPJ string
$idCsc string
$codigoCsc string
$aRetorno array
return string

sefazStatus() public method

sefazStatus Verifica o status do serviço da SEFAZ/SVC NOTA : Este serviço será removido no futuro, segundo da Receita/SEFAZ devido ao excesso de mau uso !!!
public sefazStatus ( string $siglaUF = '', string $tpAmb = '2', array &$aRetorno = [], $salvarMensagens = true ) : mixed
$siglaUF string sigla da unidade da Federação
$tpAmb string tipo de ambiente 1-produção e 2-homologação
$aRetorno array parametro passado por referencia contendo a resposta da consulta em um array
return mixed string XML do retorno do webservice, ou false se ocorreu algum erro

setModelo() public method

Ajusta o modelo da NFe 55 ou 65
public setModelo ( string $modelo = '55' )
$modelo string

setSalvarMensagensEvento() public method

Se verdade gera os arquivos de logs do envio e resposta da requisição
public setSalvarMensagensEvento ( boolean $salvarMensagensEvento )
$salvarMensagensEvento boolean

validarXml() public method

validarXml Valida qualquer xml do sistema NFe com seu xsd NOTA: caso não exista um arquivo xsd apropriado retorna false
public validarXml ( string $xml = '' ) : boolean
$xml string path ou conteudo do xml
return boolean

verificaValidade() public method

verificaValidade Verifica a validade de uma NFe recebida
public verificaValidade ( string $pathXmlFile = '', array &$aRetorno = [] ) : boolean
$pathXmlFile string
$aRetorno array
return boolean

zAddProtMsg() protected method

zAddProtMsg
protected zAddProtMsg ( string $tagproc, string $tagmsg, string $xmlmsg, string $tagretorno, string $xmlretorno ) : string
$tagproc string
$tagmsg string
$xmlmsg string
$tagretorno string
$xmlretorno string
return string

zGetInfo() protected method

zGetInfo Busca informações do XML para uso no sefazEPEC
protected zGetInfo ( string $xml ) : array
$xml string
return array

zMakeQRCode() protected method

zMakeQRCode Cria a chave do QR Code a ser usado na NFCe
protected zMakeQRCode ( string $chNFe, string $url, string $tpAmb, string $dhEmi, string $vNF, string $vICMS, string $digVal, string $token = '', string $cDest = '', string $idToken = '000001', string $versao = '100' ) : string
$chNFe string
$url string
$tpAmb string
$dhEmi string
$vNF string
$vICMS string
$digVal string
$token string
$cDest string
$idToken string
$versao string
return string

zPutQRTag() protected method

zPutQRTag Monta a URI para o QRCode e coloca a tag no xml já assinado
protected zPutQRTag ( NFePHP\Common\Dom\Dom $dom, $saveFile ) : string
$dom NFePHP\Common\Dom\Dom
return string NOTA: O Campo QRCode está habilitado para uso a partir de 01/10/2015 homologação 03/11/2015 Produção

zSefazEvento() protected method

zSefazEvento
protected zSefazEvento ( string $siglaUF = '', string $chNFe = '', string $tpAmb = '2', string $tpEvento = '', string $nSeqEvento = '1', string $tagAdic = '' ) : string
$siglaUF string
$chNFe string
$tpAmb string
$tpEvento string
$nSeqEvento string
$tagAdic string
return string

zStr2Hex() protected static method

zStr2Hex Converte string para haxadecimal ASCII
protected static zStr2Hex ( string $str ) : string
$str string
return string

Property Details

$errors public_oe property

errrors
public string $errors
return string

$soapDebug public_oe property

soapDebug
public string $soapDebug
return string

$urlPortal protected_oe property

urlPortal Instância do WebService
protected string $urlPortal
return string