Páginas

terça-feira, 7 de julho de 2015

ACBrPrinter - Utilitário para impressão de NFCe e SAT em impressoras de bobinas.

Para facilitar a impressão da Nota Fiscal do Consumidor(NFC-e) e do extrato do SAT(Cupom Fiscal  Eletrônico), disponibilizei um novo utilitário do ACBr com o nome ACBrPrinter.

Ele é executado via linha de comando e permite imprimir os recibos usados na NFCe, SAT e também textos e o DANFe da NFe comum(modelo 55). No caso da NFe a impressão é feita em papel A4.

Para usar, use a seguinte sintaxe:

ACBrPrinter.exe TipoRel ArquivoImpressao ArquivoConfiguracao

Onde:

  • TipoRel - NFe, NFCe, SAT ou Texto.
  • ArquivoImpressao - Arquivo a ser impresso.
  • ArquivoConfiguracao - Nome do arquivo de configuração criado com o comando ACBrPrinter.exe /c.

Para configurar, use ACBrPrinter.exe /c

Para testar, efetue o download a partir do fórum do Projeto ACBr - http://www.projetoacbr.com.br/forum/files/file/367-acbrprinter/

terça-feira, 5 de maio de 2015

Campos do INI usado no ACBrMonitorPLUS para criação de CFe/SAT.

Abaixo exemplo de INI que será aceito nos comandos SAT.CriarCFe e SAT.CriarEnviarCFe

[infCFe]
versao=
[Identificacao]
*cUF=
*cNF=
*mod=
*nserieSAT=
*nCFe=
*dEmi=
*hEmi=
*cDV=
*tpAmb=
CNPJ= //CNPJ Software House
signAC= //Assinatura do Aplicativo Comercial
*assinaturaQRCODE=
numeroCaixa=

[Emitente]
CNPJ=
*xNome=
*xFant=
IE=
IM=
*cRegTrib=
cRegTribISSQN=
indRatISSQN=
*xLgr=
*nro=
*xCpl=
*xBairro=
*xMun=
*CEP=

[Destinatario]
CNPJCPF=
xNome=

[Entrega]
xLgr=
nro=
xCpl=
xBairro=
xMun=
UF=

[ProdutoXXX]
cProd=
infAdProd=
cEAN=
xProd=
NCM=
CFOP=
uCom=
Combustivel= //Preencher com 1 quando o item vendido for combustível
qCom=
vUnCom=
*vProd=
indRegra=
vDesc=
vOutro=
*vItem=
*vRatDesc=
*vRatAcr=
vItem12741=

[ObsFiscoDetXXXYYY]
xCampoDet=
xTextoDet=

[ICMSXXX]
Orig=
CST=
CSOSN=
pICMS=

[PISXXX]
CST=
vBC=
pPIS=
qBCProd=
vAliqProd=
*vPIS=

[PISSTXXX]
vBC=
pPis=
qBCProd=
vAliqProd=
*vPIS=

[COFINSXXX]
CST=
vBC=
pCOFINS=
qBCProd=
vAliqProd=
*vCOFINS=

[COFINSSTXXX]
vBC=
pCOFINS=
qBCProd=
vAliqProd=
*vCOFINS=

[ISSQNXXX]
vDeducISSQN=
*vBC=
vAliq=
*vISSQN=
cMunFG=
cListServ=
cServTribMun=
cNatOp=
indIncFisc=

[Total]
*vICMS=
*vProd=
*vDesc=
*vPIS=
*vCOFINS=
*vPISST=
*vCOFINSST=
*vOutro=
*vCFe=
vCFeLei12741=
*vTroco=

[ISSQNtot]
*vBC=
*vISS=
*vPIS=
*vCOFINS=
*vPISST=
*vCOFINSST=

[DescAcrEntr]
vAcresSubtot=
vDescSubtot=

[PagtoXXX]
cMP=
vMP=
cAdmC=

[DadosAdicionais]
infCpl=

[ObsFiscoXXX]
xCampo=
xTexto=

Todos os campos com * são criados pelo SAT, ou seja, caso vc envie os mesmos serão reescritos pelo SAT. No comando SAT.CriarCFe esses campos serão gerados no XML conforme o que seu aplicativo enviar, no comando SAT.CriarEnviarCFe serão ignorados e preenchidos com as informações retornadas pelo SAT.

Para saber como preencher corretamente os campos, veja https://www.confaz.fazenda.gov.br/legislacao/arquivo-manuais/gt44-especificacao_sat_v_er_2_14_10.pdf

ACBrMonitor PLUS com SAT

Estamos lançando uma nova versão do ACBrMonitorPLUS com os comandos para o SAT. Para quem ainda não conhece o SAT é um projeto do SEFAZ de SP que visa substituir o ECF(Impressoras Fiscais). Para mais informações sobre o projeto acesse http://www.fazenda.sp.gov.br/sat/

Para testar o ACBrMonitorPLUS com SAT é necessário possuir um SAT ou utilizar o emulador fornecido pelo fisco. Para obter o emulador acesse http://www.fazenda.sp.gov.br/sat/downloads/vigentes.asp  efetue o download da última versão disponibilizada pelo fisco e siga as instruções do manual também disponível no mesmo endereço.

Abaixo a lista de comandos que estão disponíveis no momento no ACBrMonitorPLUS:

SAT.Ativar(CNPJ,cUF)
SAT.Inicializar
SAT.Desinicializar
SAT.AssociarAssinatura(CNPJ,Assinatura)
SAT.Bloquear
SAT.Desbloquear
SAT.TrocarCodigoAtivacao(codigoDeAtivacaoOuEmergencia,opcao,novoCodigo)
SAT.ConsultarSAT
SAT.ConsultarStatusOperacional
SAT.ConsultarNumeroSessao(NumeroDeSessao)
SAT.AtualizarSoftware
SAT.ComunicarCertificadoICPBRASIL
SAT.ExtrairLogs(CaminhoArquivo)
SAT.CriarCFe(ArqINI)
SAT.CriarEnviarCFe(ArqINI)
SAT.EnviarCFe(ArqXML)
SAT.CancelarCFe(ChaveCFe,ArqXML)
SAT.ImprimirExtratoVenda(ArqXML)
SAT.ImprimirExtratoResumido(ArqXML)
SAT.ImprimirExtratoCancelamento(ArqXML)
SAT.TesteFimAFim(ArqXML)

Para fazer um teste básico, use os seguintes comandos(Cada comando deve ser enviado separadamente):

SAT.Inicializar

SAT.Ativar("11111111111111",35)

SAT.AssociarAssinatura

("1111111111111111111111111111","12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678904444")

SAT.CriarEnviarCfe("[infCFe]
versao=0.05
[Identificacao]
CNPJ=11111111111111
signAC=12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678904444
numeroCaixa=1
[Emitente]
CNPJ=11111111111111
IE=111111111111
IM=
indRatISSQN=S
[Destinatario]
CNPJCPF=31065278896
xNome=Andre Ferreira de Moraes
[Entrega]
xLgr=Rua Cel. Aureliano de Camargo
nro=973
xCpl=
xBairro=Centro
xMun=Tatui
UF=SP
[Produto001]
cProd=1189
infAdProd=Teste de Produto
cEAN=
xProd=OVO VERMELHO
NCM=04072100
CFOP=5102
uCom=DZ
Combustivel=0
qCom=510
vUnCom=2,70
indRegra=A
vDesc=0
vOutro=0
vItem12741=137,00
[ObsFiscoDet001001]
xCampoDet=Teste
xTextoDet=Texto Teste
[ICMS001]
Orig=0
CST=40
[PIS001]
CST=01
[COFINS001]
CST=01
[Total]
vCFeLei12741=137,00
[DescAcrEntr]
vDescSubtot=7,00
[Pagto001]
cMP=01
vMP=1400
[DadosAdicionais]
infCpl=Teste emissao CFe/SAT
[ObsFisco001]
xCampo=ObsFisco 1
xTexto=Teste ObsFisco 1")

Para obter a versão com todos os comandos acima, acesse a área de downloads do fórum.

Para relatar BUGs e solicitar suporte utilize o fórum do Projeto ACBr - http://www.projetoacbr.com.br/forum/

quinta-feira, 9 de abril de 2015

Campos do ACBrMonitorPLUS

Abaixo todos os campos usado nos comandos NFe.CriarNFe, NFe.CriarEnviarNFe e NFe.AdicionarNFe. A maioria dos campos utiliza a nomenclatura do manual disponibilizado pelo SEFAZ apenas os grupos(o que está entre []) segue a nomenclatura interna do ACBrNFeMonitor. A literal XXX indica grupos que podem ocorrer mais de uma vez(produtos por exemplo) e quando existir YYY ou KKK indica grupos que são filhos de grupos com mais de uma ocorrência. Por exemplo, no caso da Declaração de Importação podemos ter 0-100 ocorrências e cada Declaração de Importação pode conter de 1-100  Adições, então temos o grupo [DI001] e após ele podemos ter [LADI001YYY] onde YYY pode ser de 001 a 100.

Para saber quais os conteúdos válidos para cada campo e a obrigatoriedade de cada um, veja o manual de integração disponibilizado pelo fisco, atualmente a última versão disponibilizada para a versão 3.10 da NF-e/NFC-e é a NT 2013.005 v1.22 - http://www.nfe.fazenda.gov.br/portal/exibirArquivo.aspx?conteudo=%20tq7zNwy6jo=

[infNFe]
versao=3.10
[Identificacao]
cNF=
natOp=
indPag=
mod=
serie=
nNF=
dhEmi=
dhSaiEnt=
tpNF=
idDest=
tpImp=
tpEmis=
finNFe=
indFinal=
indPres=
procEmi=
verProc=
dhCont=
xJust=

[NFRefXXX]
Tipo=
refNFe=
cUF=
AAMM=
CNPJ=
mod=
Serie=
nNF=
CNPJCPF=
IE=
refCTe=
ModECF=
nECF=
nCOO=

[Emitente]
CNPJCPF=
xNome=
xFant=
IE=
IEST=
IM=
CNAE=
CRT=
xLgr=
nro=
xCpl=
xBairro=
cMun=
xMun=
UF=
CEP=
cPais=
xPais=
Fone=
cUF=
cMunFG=

[Avulsa]
CNPJ=
xOrgao=
matr=
xAgente=
fone=
UF=
nDAR=
dEmi=
vDAR=
repEmi=
dPag=

[Destinatario]
idEstrangeiro=
CNPJCPF=
xNome=
indIEDest=
IE=
ISUF=
Email=
xLgr=
nro=
xCpl=
xBairro=
cMun=
xMun=
UF=
CEP=
cPais=
xPais=
Fone=

[Retirada]
CNPJCPF=
xLgr=
nro=
xCpl=
xBairro=
cMun=
xMun=
UF=

[Entrega]
CNPJCPF=
xLgr=
nro=
xCpl=
xBairro=
cMun=
xMun=
UF=

[autXMLXXX]
CNPJCPF=

[ProdutoXXX]
cProd=
cEAN=
xProd=
NCM=
EXTIPI=
CFOP=
uCom=
qCom=
vUnCom=
vProd=
cEANTrib=
uTrib=
qTrib=
vUnTrib=
vFrete=
vSeg=
vDesc=
vOutro=
indTot=
xPed=
nItemPed=
nFCI=
nRECOPI=
pDevol=
vIPIDevol=
vTotTrib=
infAdProd=

[NVEXXXYYY]
NVE=

[DIXXXYYY]
nDi=
dDi=
xLocDesemb=
UFDesemb=
dDesemb=
tpViaTransp=
vAFRMM=
tpIntermedio=
CNPJ=
UFTerceiro=
cExportador=

[LADIXXXYYYKKK]
nAdicao=
nSeqAdi=
cFabricante=
vDescDI=
nDraw=

[detExportXXXYYY]
nDraw=
nRE=
chNFe=
qExport=

[impostoDevolXXX]
pDevol=
vIPIDevol=

[VeiculoXXX]
chassi=
tpOP=
cCor=
xCor=
pot=
Cilin=
pesoL=
pesoB=
nSerie=
tpComb=
nMotor=
CMT=
dist=
anoMod=
anoFab=
tpPint=
tpVeic=
espVeic=
VIN=
condVeic=
cMod=
cCorDENATRAN=
lota=
tpRest=

[MedicamentoXXXYYY]
nLote=
qLote=
dFab=
dVal=
vPMC=

[ArmaXXXYYY]
nSerie=
tpArma=
nCano=
descr=

[CombustivelXXX]
cProdANP=
pMixGN=
CODIF=
qTemp=
UFCons=

[CIDEXXX]
qBCprod=
vAliqProd=
vCIDE=

[ICMSCombXXX]
vBCICMS=
vICMS=
vBCICMSST=
vICMSST=

[ICMSInterXXX]
vBCICMSSTDest=
vICMSSTDest=

[ICMSConsXXX]
vBCICMSSTCons=
vICMSSTCons=
UFCons=

[ICMSXXX]
orig=
CST=
CSOSN=
modBC=
pRedBC=
vBC=
pICMS=
vICMS=
modBCST=
pMVAST=
pRedBCST=
vBCST=
pICMSST=
vICMSST=
UFST=
pBCOp=
vBCSTRet=
vICMSSTRet=
motDesICMS=
pCredSN=
vCredICMSSN=
vBCSTDest=
vICMSSTDest=
vICMSDeson=
vICMSOp=
pDif=
vICMSDif=

[IPIXXX]
CST=
clEnq=
CNPJProd=
cSelo=
qSelo=
cEnq=
vBC=
qUnid=
vUnid=
pIPI=
vIPI=

[IIXXX]
vBC=
vDespAdu=
vII=
vIOF=

[PISXXX]
CST=
vBC=
pPIS=
qBCProd=
vAliqProd=
vPIS=

[PISSTXXX]
vBC=
pPis=
qBCProd=
vAliqProd=
vPIS=

[COFINSXXX]
CST=
vBC=
pCOFINS=
qBCProd=
vAliqProd=
vCOFINS=

[COFINSSTXXX]
vBC=
pCOFINS=
qBCProd=
vAliqProd=
vCOFINS=

[ISSQNXXX]
vBC=
vAliq=
vISSQN=
cMunFG=
cListServ=
cSitTrib=
vDeducao=
vDeducao=
vOutro=
vDescIncond=
vDescCond=
vISSRet=
indISS=
cServico=
cMun=
cPais=
nProcesso=
indIncentivo=

[Total]
vBC=
vICMS=
vICMSDeson=
vBCST=
vST=
vProd=
vFrete=
vSeg=
vDesc=
vII=
vIPI=
vPIS=
vCOFINS=
vOutro=
vNF=
vTotTrib=

[ISSQNtot]
vServ=
vBC=
vISS=
vPIS=
vCOFINS=
dCompet=
vDeducao=
vOutro=
vDescIncond=
vDescCond=
vISSRet=
cRegTrib=

[retTrib]
vRetPIS=
vRetCOFINS=
vRetCSLL=
vBCIRRF=
vIRRF=
vBCRetPrev=
vRetPrev=

[Transportador]
modFrete=
CNPJCPF=
xNome=
IE=
xEnder=
xMun=
UF=
vServ=
vBCRet=
pICMSRet=
vICMSRet=
CFOP=
cMunFG=
Placa=
UFPlaca=
RNTC=
vagao=
balsa=

[ReboqueXXX]
placa=
UF=
RNTC=

[VolumeXXX]
qVol=
esp=
Marca=
nVol=
pesoL=
pesoB=

[LacreXXXYYY]
nLacre=

[Fatura]
nFat=
vOrig=
vDesc=
vLiq=

[DuplicataXXX]
nDup=
dVenc=
vDup=

[PAGXXX]
tpag=
vPag=
CNPJ=
tBand=
cAut=

[DadosAdicionais]
infAdFisco=
infCpl=

[InfAdicXXX]
xCampo=
xTexto=

[ObsFiscoXXX]
xCampo=
xTexto=

[procRefXXX]
nProc=
indProc=

[Exporta]
UFSaidaPais=
xLocExporta=
xLocDespacho=

[Compra]
xNEmp=
xPed=
xCont=

[cana]
safra=
ref=
qTotMes=
qTotAnt=
qTotGer=
vFor=
vTotDed=
vLiqFor=

[forDiaXXX]
dia=
qtde=

[deducXXX]
xDed=
vDed=

Formato do arquivo usado no comando NFe.EnviarEvento(cIniEvento)

[EVENTO]
idLote=
[EVENTOXXX]
chNFe=
cOrgao=
CNPJ=
dhEvento=
tpEvento=
nSeqEvento=
versaoEvento=
cOrgaoAutor=
tpAutor=
verAplic=
dhEmi=
tpNF=
IE=
xCorrecao=
xCondUso=
nProt=
xJust=
DestUF=
DestCNPJCPF=
DestIE=
vNF=
vICMS=
vST=

Em caso de dúvidas, acesse o fórum oficial do Projeto ACBr - http://www.projetoacbr.com.br/forum




ACBrMonitorPLUS - ACBrMonitor e ACBrNFeMonitor CAPICOM e OpenSSL no mesmo executável

Atualmente estamos trabalhando em um grande refactoring no ACBr para melhorar a qualidade do código, facilitar a implementação de novos recursos e também o entendimento do código fonte.

Graças a esse refactoring o ACBrNFe nas versões CAPICOM e OpenSSL estão funcionando corretamente no Lazarus e por este motivo estamos migrando o ACBrNFeMonitor para Lazarus.

Devido esse trabalho de migração, resolvemos unir em apenas um utilitário o ACBrMonitor com o ACBrNFeMonitor e adotamos o nome de ACBrMonitor PLUS. Pensamos nessa união, pois com o advento da NFC-e/SAT e a continuidade do ECF por algum tempo, a necessidade de emissão de Cupom Fiscal e NFe no mesmo computador vem aumentando e com isto era necessário ter dois executáveis rodando no mesmo local, com esta versão é possível com apenas um executável atender todos os requisitos. Tínhamos também casos em que o usuário conhecia o Projeto ACBr devido a NFe, começava a utilizar o ACBrNFeMonitor e com o tempo se interessava por outros recursos oferecidos pelos demais componentes(Boleto, Email, NCM, etc) e com isso surgia a necessidade de instalar o ACBrMonitor.



Abaixo segue a versão ALPHA do instalador ACBrMonitor PLUS, fiz testes apenas na parte de emissão de NFe, as demais funcionalidades já existiam no ACBrMonitor e acredito estarem funcionando corretamente.

http://www.projetoacbr.com.br/forum/index.php?/files/file/363-acbrmonitorplus/

Os DANFes em Rave e RaveCB foram substituídos pela versão em Fortes.

Abaixo uma lista atualizada de todos os comandos utilizados para emissão de NFe/NFC-e aceitos por esta versão:


  • NFe.StatusServico
  • NFe.ValidarNFe(cArqXML)
  • NFe.AssinarNFe(cArqXML)
  • NFe.ConsultarNFe(cArqXML)
  • NFe.CancelarNFe(cChaveNFe,cJustificativa,cCNPJ,nEvento)
  • NFe.ImprimirDanfe(cArqXML,[cImpressora],[nNumCopias],[cProtocolo],[bMostrarPreview],[cMarcaDagua],[bViaConsumidor],[bSimplificado])
  • NFe.ImprimirDANFEPDF(cArqXML,[cProtocolo],[cMarcaDaqgua],[bViaConsumidor],[bSimplificado])
  • NFe.ImprimirEvento(cArqXMLEvento,[cArqXMLNFe],[cImpressora],[nNumCopias],[bMostrarPreview])
  • NFe.ImprimirEventoPDF(cArqXMLEvento,[cArqXMLNFe],)
  • NFe.InutilizarNFe(cCNPJ,cJustificativa,nAno,nModelo,nSérie,nNumInicial,nNumFinal)
  • NFe.ReciboNFe(nRecibo)
  • NFe.ConsultaCadastro(cUF,nDocumento,[nIE])
  • NFe.CriarNFe(cIniNFe,[bRetornaXML])
  • NFe.CriarEnviarNFe(cIniNFe,nLote,[bImprimeDANFE],[bSincrono],[cImpressora],[bMostrarPreview],[nNumCopias])
  • NFe.AdicionarNFe(cIniNFe,nLote)
  • NFe.CriarNFeSEFAZ(cTXTSefaz,[bRetornaXML])
  • NFe.CriarEnviarNFeSEFAZ(cTXTSefaz,nLote,[bImprimeDANFE],[bSincrono],[cImpressora],[bMostrarPreview],[nNumCopias])
  • NFe.AdicionarNFeSEFAZ(cTXTSefaz,nLote)
  • NFe.EnviarLoteNFe(nLote,[bImprimir],[cImpressora],[bSincrono],[bMostrarPreview],[nNumCopias])
  • NFe.EnviarNFe(cArqXML,nLote,[bAssina],[bImprime],[cImpressora],[bSincrono])
  • NFe.EnviarEvento(cIniEvento)
  • NFe.ConsultaNFeDest(cCNPJ,nIndicadorNFe,nIndicadorEmissor,nUltNSU)
  • NFe.DownloadNFe(cCNPJ,cChaves)
  • NFe.EnviarEmail(cEmailDestino,cArqXML,cEnviaPDF,[cAssunto],[cEmailsCopias],[cAnexos])
  • NFe.EnviarEmailEvento(cEmailDestino,cArqXMLEvento,[cArqXMLNFe],cEnviaPDF,[cAssunto],[cEmailsCopias],[cAnexos])
  • NFe.SetCertificado(cCertificado,cSenha)
  • NFe.SetAmbiente(nNumAmbiente)
  • NFe.SetFormaEmissao(nFormaEmissao)
  • NFe.SetVersaoDF(nVersao)
  • NFe.SetModeloDF(nModeloDF)
  • NFe.SetCSC(cCSC,[cIdCSC])
  • NFe.SetIdCSC(cIdCSC,[cCSC])
  • NFe.LerNFe(cArqXML)
  • NFe.NFetoTXT(cArqXML,cNomeArqTXT)
  • NFe.SavetoFile(cNomeArq,cConteudoArq)
  • NFe.LoadfromFile(cNomeArq,nSegundos)
  • NFe.FileExists(cNomeArq)
  • NFe.CertificadoDataVencimento
  • NFe.CNPJCertificado
  • NFe.LerIni
  • NFe.GerarChave(codigoUF,codigoNumerico,modelo,serie,numero,tpemi,emissao,CNPJ)
  • NFe.GetPathNFe
  • NFe.GetPathCCE
  • NFe.GetPathCan
  • NFe.GetPathEvento
  • NFe.ImprimirRelatorio(cTexto)
  • NFe.Restaurar
  • NFe.Ocultar
  • NFe.EncerrarMonitor
  • NFe.Versao
  • NFe.VersaoNome
  • NFe.Exit
O formato do INI continua o mesmo usado na versão atual do ACBrNFeMonitor.

Em breve acrescentaremos nessa versão os componente de CTe, MDFe e quem sabe um dia de NFSe.

Para relatar BUGs e solicitar suporte utilize o fórum do Projeto ACBr - http://www.projetoacbr.com.br/forum/


terça-feira, 16 de setembro de 2014

Como usar o novo ambiente de contingência SVC - SEFAZ VIRTUAL DE CONTINGÊNCIA no ACBrNFeMonitor

A partir do dia 30/09/2014 o SCAN será desativado e substituido pelo "SVC - SEFAZ VIRTUAL DE CONTINGÊNCIA".

Esta alternativa de emissão da NF-e em contingência, com transmissão da NF-e para a SEFAZ Virtual de Contingência (SVC), permite a impressão do DANFE em papel comum e não existe a necessidade de transmissão da NF-e para SEFAZ de origem quando cessarem os problemas técnicos que impediam o uso do ambiente de autorização normal da circunscrição do contribuinte.

Diferentemente do SCAN - Sistema de Contingência do Ambiente Nacional, esta modalidade de contingência não obriga o uso de série específica na NF-e (série 900-999), o que facilitará o uso dessa modalidade de contingência por parte das empresas.

Existirão dois locais alternativos de autorização em contingência, operados pelas estruturas das SEFAZ VIRTUAIS atuais:
  • SVAN – SEFAZ Virtual do Ambiente Nacional;
  • SVRS – SEFAZ Virtual do Rio Grande do Sul.
As SEFAZ autorizadoras adotarão uma das duas SVC, conforme definido no Ato COTEPE 39, de 04/09/2012.

I - pela Sefaz Virtual do Ambiente Nacional(SVC-AN), disponibilizada pela Secretaria da Receita Federal do Brasil, para os Estados do Acre, Alagoas, Amapá, Minas Gerais, Paraíba, Rio de Janeiro, Rio Grande do Sul, Rio Grande do Norte, Rondônia, Roraima, Santa Catarina, Sergipe, São Paulo e Tocantins e para o Distrito Federal; e

II - pela Sefaz Virtual do Rio Grande do Sul(SVC-RS), disponibilizada pelo Estado do Rio Grande do Sul, para os estados do Amazonas, Bahia, Ceará, Espírito Santo, Goiás, Maranhão, Mato Grosso, Mato Grosso do Sul, Pará, Pernambuco, Piauí e Paraná.

Estado SVC-AN SVC-RS
Acre X
Alagoas X
Amapá X
Amazonas X
Bahia X
Ceará X
Distrito Federal X
Espírito Santo X
Goiás X
Maranhão X
Mato Grosso X
Mato Grosso do Sul X
Minas Gerais X
Pará X
Paraíba X
Paraná X
Pernambuco X
Piauí X
Rio de Janeiro X
Rio Grande do Sul X
Rio Grande do Norte X
Rondônia X
Roraima X
Santa Catarina X
Sergipe X
São Paulo X
Tocantins X

De forma semelhante ao SCAN o ambiente de autorização da SVC é ativado pela UF interessada e uma vez acionado passa a recepcionar as NF-e enviadas pelas empresas credenciadas para emitir NF e na UF.

Serão disponibilizados pela SVC os mesmos serviços do ambiente normal de autorização:
  • Serviço de Recepção
    • somente estará disponível conforme decisão sobre a ativação ou não da SVC por uma determinada SEFAZ de origem.
  • Serviço de Retorno da Recepção
    • sempre estará disponível para consultar o resultado do processamento dos Lotes enviados para a SVC.
  • Serviço de Registro de Eventos: Cancelamento
    • sempre estará disponível somente para as NF-e autorizadas pela própria SVC.
  • Serviço de Registro de Eventos: CC-e e Outros
    • O registro dos demais tipos de evento do Emitente ou do Destinatário, tais como a Carta de Correção Eletrônica, Manifestação do Destinatário e outros, não será disponibilizado para atendimento pela SVC.
  • Serviço de Inutilização
    • O Serviço de Inutilização (Web Service: NFeInutilizacao) não será oferecido pela SVC.
  • Serviço de Consulta Situação da NF-e
    • sempre estará disponível somente para as NF-e autorizadas pela própria SVC.
  • Serviço de Consulta Status do Serviço
    • sempre deverá estar disponível na SVC.
      • O Serviço de Consulta ao Status da SVC poderá retornar os seguintes códigos de situação:
        • 107 - Serviço SVC em Operação;
        • 113 - SVC em processo de desativação. SVC será desabilitada para a SEFAZ-XX em dd/mm/aa às hh:mm horas;
        • 114 – SVC desabilitada pela SEFAZ de Origem.
Para usar os novos ambiente basta usar o comando abaixo no ACBrNFeMonitor antes dos comandos normais(Enviar, Cancelar, Consultar, etc) ou na Interface do ACBrNFeMonitor, selecionar na aba WebService a Forma de Emissão desejada.

NFe.SetFormaEmissao(nForma)

Onde nForma pode ter os seguintes valores:
  • 1=Emissão normal (não em contingência);
  • 2=Contingência FS-IA, com impressão do DANFE em formulário de segurança;
  • 3=Contingência SCAN (Sistema de Contingência do Ambiente Nacional) (*em desativação*);
  • 4=Contingência DPEC (Declaração Prévia da Emissão em Contingência);
  • 5=Contingência FS-DA, com impressão do DANFE em formulário de segurança;
  • 6=Contingência SVC-AN (SEFAZ Virtual de Contingência do AN);
  • 7=Contingência SVC-RS (SEFAZ Virtual de Contingência do RS);
  • 9=Contingência off-line da NFC-e;
    Nota: Para a NFC-e somente estão disponíveis e são válidas as opções de contingência 5 e 9.
No INI enviado para Criar/Enviar a nota, o seguinte campo deve ser informado com o mesmo valor usado no parâmetro nForma:

[Identificacao]
tpemis=nForma

Lembrando que para este novo modo de contingência não é mais obrigatório a mudança de séria como era feito no SCAN em que era obrigatório usar uma série entre 900-999 e consequentemente ter uma numeração diferente para cada série.

Para evitar o problema de duas notas autorizadas com o mesmo número e em ambientes diferentes a NT 2013.007 traz a seguinte recomendação:

No momento que a empresa detecta a indisponibilidade do ambiente de autorização normal, pode ser que tenha enviado uma NF-e e não tenha obtido o resultado deste pedido de autorização de uso. Neste caso, deve gerar um outro número de NF-e, evitando que seja autorizado o mesmo número e série de NF-e no ambiente da SEFAZ autorizadora e da SVC.

Nota: O ambiente SVC-SP(tpEmis=8) será usado apenas para emissão de CTe.

Qualquer dúvida, acesse o fórum do Projeto ACBr - http://www.projetoacbr.com.br/forum

Fontes: 

segunda-feira, 8 de setembro de 2014

Usando o ACBrNFeMonitor para emitir NFCe

A primeira versão do ACBrNFeMonitor compatível com NFC-e foi lançada em outubro de 2013 mas como algumas dúvidas ainda são recorrentes estou fazendo este poste para mostrar as principais alterações que existem entre a versão 2.00(que permite apenas emitir NFe modelo 55) e a versão 3.10(que permite emitir NFe e NFCe modelo 65).

  • Comando NFe.EnviarNFe - Foi adicionado mais um parâmetro para indicar se o envio será síncrono ou assíncrono(Consulte com seu estado se o modo síncrono será implementado)
    • NFe.EnviarNFe(cArqXML,nLote,[nAssina],[nImprime],[NomeImpressora],[bSincrono]) - Deverá informar 1 para indicar modo síncrono e 0 para modo assíncrono. Vale lembrar que além de consultar se seu estado irá implementar o modo síncrono, este modo funciona apenas para os Lotes que contenham somente uma NF-e/NFC-e.
  • A alteração acima também vale para o comando NFe.CriarEnviarNFe, sendo que a posição do parâmetro é diferente NFe.CriarEnviarNFe(cArqINI,nLote,nImprimeDANFE,[bSincrono])
  • Vale a mesma alteração para o comando NFe.EnviarloteNFe - NFe.EnviarloteNFe(numLote,0,[nImprime],[bSincrono]);
  • Novos Comandos:
    • NFe.SetIDToken - Configura o Código de Identificação do CSC (cIdToken) que será usado na geração do QR-Code;
    • NFe.SetToken - Configura o Código de Segurança do Contribuinte(antigo Token).
    • NFe.SetVersaoDF - Muda a versão do documento que será usado no ACBrNFeMonitor, aceitas os seguintes valores: 2.00 - 3.00 - 3.10. A versão 3.00 funciona apenas para NFC-e para empresas que participam dos projetos pilotos em alguns estados;
    • NFe.SetModeloDF - Muda o tipo de documento que será criado. Aceita os valores 55 e 65, sendo 55 - NFe e 65 NFC-e;
    • ATENÇÃO: É recomendado chamar os comandos SetModeloDF e SetVersaoDF antes de executar qualquer comando de cancelamento, inutilização, eventos, etc, pois alguns estados possuem endereços diferentes para cada tipo de documento, então chamando esses comandos você garante que o componente será configurado para o endereço correto.
  • No INI usado para criar e enviar XMLs da NF-e/NFC-e foram adicionas alguns campos e grupos novos:
    • Novo grupo infNFe:
      • [infNFe]
        versao=3.10
    • Grupo Identificação alterado:
      • [Identificacao]
        dEmi=             - Alterado para permitir informar data e hora
        dSaiEnt=         - Alterado para permitir informar data e hora
        idDest= 1=Operação interna; 2=Operação interestadual; 3=Operação com exterior.
        indFinal= 0=Normal; 1=Consumidor final;
        indPres= 0=Não se aplica (por exemplo, para a Nota Fiscal complementar ou de ajuste); 1=Operação presencial; 2=Operação não presencial, pela Internet; 3=Operação não presencial, Teleatendimento; 4=NFC-e em operação com entrega em domicílio; 9=Operação não presencial, outros. Nota: Para a NFC-e, somente são aceitas as opções 1 e 4.
    • Grupo Destinatário alterado:
      • [Destinatario]
        indIEDest= 1=Contribuinte ICMS (informar a IE do destinatário); 2=Contribuinte isento de Inscrição no cadastro de Contribuintes do ICMS; 9=Não Contribuinte, que pode ou não possuir Inscrição Estadual no Cadastro de Contribuintes do ICMS; Nota 1: No caso de NFC-e informar indIEDest=9 e não informar a tag IE do destinatário; Nota 2: No caso de operação com o Exterior informar indIEDest=9 e não informar a tag IE do destinatário; Nota 3: No caso de Contribuinte Isento de Inscrição (indIEDest=2), não informar a tag IE do destinatário.
    • Novo grupo autXML
      • [autXMLXXX] - onde XXX deve conter um número sequencial para cada pessoa autorizada a acessar o XML
        CNPJCPF=
    • Grupo Produto alterado:
      • [ProdutoXXX]
        nRECOPI=
        pDevol=
        vIPIDevol=
    • Novo Grupo NVE:
      • [NVEXXXYYY] - onde XXX deve conter o número do Produto e YYY o número sequencial do NVE - Cada produto pode conter até 8 ocorrências
        NVE=
    • Grupo DI alterado:
      • [DIXXXYYY]
        tpViaTransp=
        vAFRMM=
        tpIntermedio=
        CNPJ=
        UFTerceiro=
    • Grupo LADI alterado:
      • [LADIXXXYYYKKK]
        nDraw=
    • Novo grupo Detalhe da Exportação para o item
      • [detExportXXXYYY]
        nDraw=
        nRE=
        chNFe=
        qExport=
    • Alteado grupo Combustível
      • [CombustivelXXX]
        pMixGN=
    • Alterado grupo ICMS
      • [ICMSXXX]
        vICMSDeson=
        vICMSOp=
        pDif=
        vICMSDif=
    • Alterado grupo ISSQN
      • [ISSQNXXX]
        vDeducao=
        vOutro=
        vDescIncond=
        vDescCond=
        vISSRet=
        indISS=
        cServico=
        cMun=
        cPais=
        nProcesso=
        indIncentivo=
    • Grupo Total alterado:
      • [Total]
        vICMSDeson=
    • Grupo ISSQN Total alterado:
      • [ISSQNtot]
        dCompet=
        vDeducao=
        vOutro=
        vDescIncond=
        vDescCond=
        vISSRet=
        cRegTrib=
    • Novo grupo de Formas de Pagamento:
      • [PAGXXX]
        tpag=
        vPag=
        CNPJ=
        tBand=
        cAut=
    • Alterado grupo Exportação:
      • [Exporta]
        UFSaidaPais=
        xLocExporta=
        xLocDespacho=

Para obter a versão com todos os comandos acima, acesse a área de downloads do fórum.

Caso você queria testar a NFC-e e seu estado ainda não disponibilizou ambiente de testes, configure a emissão para o estado do Amazonas, veja este link para mais informações - http://portalnfce.sefaz.am.gov.br/desenvolvedor/ambiente-de-homologacao-para-desenvolvedores/

Caso tenha alguma dúvida sobre NFC-e, use a nova área exclusiva do fórum criada para assuntos relacionados a Nota Fiscal Eletrônica do Consumidor.