Vous êtes sur la page 1sur 29

Manual de Integrao

NFS-e

Verso 1.0 10/07/2008

Pgina 2 de 29 Reviso 1.00

SUMRIO
1 INTRODUO...................................................................................................3 2 CONSIDERAES INICIAIS............................................................................4 2.1 NOTA FISCAL DE SERVIOS ELETRNICA - NFS-E................................................. 4 2.2 RECIBO PROVISRIO DE SERVIO - RPS............................................................. 5 3 ARQUITETURA DE COMUNICAO COM O CONTRIBUINTE.................... 6 3.1 MODELO CONCEITUAL....................................................................................... 6 3.1.1 Recepo e Processamento de Lote de RPS..................................... 6 3.1.2 Consulta de Situao de Lote de RPS................................................ 7 3.1.3 Consulta de NFS-e por RPS................................................................7 3.1.4 Consulta de Lote de RPS.....................................................................8 3.1.5 Consulta de NFS-e...............................................................................8 3.1.6 Cancelamento de NFS-e......................................................................9 3.2 PADRES TCNICOS....................................................................................... 10 3.2.1 Padro de Comunicao....................................................................10 3.2.2 Padro de Certificado Digital............................................................. 10 3.2.3 Padro de Assinatura Digital............................................................. 11 3.2.4 Validao de Assinatura Digital pelo Sistema NFS-e........................12 3.3 PADRO DAS MENSAGENS XML....................................................................... 12 3.3.1 Validao da estrutura das Mensagens XML.................................... 12 3.3.2 Schemas XML (arquivos XSD).......................................................... 13 3.3.3 Verso dos Schemas XML.................................................................13 4 ESTRUTURA DE DADOS DO WEB SERVICE..............................................15 4.1 MODELO OPERACIONAL................................................................................... 15 4.1.1 Servios Sncronos............................................................................ 15 4.1.2 Servios Assncronos.........................................................................16 4.2 FORMATOS E PADRES UTILIZADOS................................................................... 17 4.3 TIPOS SIMPLES............................................................................................. 18 4.4 TIPOS COMPLEXOS........................................................................................ 20 4.5 SERVIOS.................................................................................................... 24 4.5.1 Recepo de Lote de RPS.................................................................25 4.5.2 Consulta de Situao de Lote de RPS.............................................. 25 4.5.3 Consulta de NFS-e por RPS..............................................................26 4.5.4 Consulta de NFS-e.............................................................................26 4.5.5 Consulta de Lote de RPS...................................................................27 4.5.6 Cancelamento NFS-e.........................................................................27 5 ANEXO............................................................................................................29 5.1 TABELA DE ERROS E ALERTAS......................................................................... 29

Pgina 3 de 29 Reviso 1.00

1 INTRODUO
Este manual tem como objetivo apresentar as especificaes e critrios tcnicos necessrios para utilizao do Web Service disponibilizado pelas Secretarias Municipais de Fazenda para as empresas prestadoras e/ou tomadoras de servios. Atravs do Web Service as empresas podero integrar seus prprios sistemas de informaes com o Sistema de Notas Fiscais de Servio Eletrnicas das Secretarias Municipais de Fazenda. Desta forma, consegue-se automatizar o processo de gerao, consulta e cancelamento de NFS-e.

Pgina 4 de 29 Reviso 1.00

2 CONSIDERAES INICIAIS
O projeto Nota Fiscal de Servios Eletrnica de Servios est sendo concebido atravs de reunies das reas de Negcio e Tecnologia da Informao com os representantes dos municpios integrantes da Cmara Tcnica da Associao Brasileira de Secretrios e Dirigentes das Finanas dos Municpios das Capitais (ABRASF), onde tiveram como principal objetivo a gerao de um modelo de processo que considerasse as necessidades e as legislaes de cada municpio. O projeto tem como objetivo atender ao Protocolo de Cooperao ENAT n 01/2006 - III ENAT, que instituiu a Nota Fiscal de Servios Eletrnica NFS-e com vistas ao compartilhamento de informaes entre os fiscos municipais, estaduais e federal, atravs do desenvolvimento de uma soluo para a gerao desse documento fiscal eletrnico como instrumento de controle da arrecadao e fiscalizao do ISS. Visa o benefcio das administraes tributrias padronizando e melhorando a qualidade das informaes, racionalizando os custos e gerando maior eficcia, bem como o aumento da competitividade das empresas brasileiras pela racionalizao das obrigaes acessrias (reduo do custo-Brasil), em especial a dispensa da emisso e guarda de documentos em papel. 2.1 NOTA FISCAL DE SERVIOS ELETRNICA - NFS-E A Nota Fiscal de Servios Eletrnica (NFS-e) um documento de existncia exclusivamente digital, gerado e armazenado eletronicamente pela prefeitura ou por outra entidade conveniada, para documentar as operaes de prestao de servios.

A gerao da NFS-e ser feita, automaticamente, por meio de servios informatizados, disponibilizados aos contribuintes. Para que sua gerao seja efetuada, dados que a compem sero informados, analisados, processados, validados e, se corretos, geraro o documento. A responsabilidade pelo cumprimento da obrigao acessria de emisso da NFS-e e pelo correto fornecimento dos dados secretaria, para a gerao da mesma, do contribuinte.

Pgina 5 de 29 Reviso 1.00

2.2 RECIBO PROVISRIO DE SERVIO - RPS A NFS-e somente ser gerada atravs dos servios informatizados disponibilizados pelas Secretarias Municipais de Fazenda. Esse tipo de servio seguido de alguns riscos inerentes ininterrupta disponibilidade, podendo, portanto, em alguns momentos tornar-se indisponvel. Visando manter as atividades dos contribuintes ininterruptas, independente de os servios informatizados disponibilizados pelas Secretarias Municipais de Fazenda estarem disponveis, foi criado o Recibo Provisrio de Servios (RPS), que um documento de posse e responsabilidade do contribuinte, que dever ser gerado manualmente ou por alguma aplicao local, possuindo uma numerao seqencial crescente e devendo ser convertido em NFS-e no prazo estipulado pela legislao tributria municipal.

Pgina 6 de 29 Reviso 1.00

3 ARQUITETURA DE COMUNICAO COM O CONTRIBUINTE


3.1 MODELO CONCEITUAL Atravs do Web Service, o Sistema de Notas Fiscais de Servio Eletrnicas das Secretarias Municipais de Fazenda disponibilizar servios que podero ser acessados pelos sistemas dos contribuintes. A seguir, esto resumidos os servios disponveis e suas respectivas funcionalidades bsicas. 3.1.1 Recepo e Processamento de Lote de RPS Esse servio compreende a recepo do Lote de RPS, a resposta com o nmero do protocolo gerado para esta transao e o processamento do lote. Quando efetuada a recepo, o Lote entrar na fila para processamento posterior onde sero feitas as validaes necessrias e gerao das NFS-e.
Prestador Aplicao Cliente
b <XML> Lote de RPS

Secretaria da Fazenda

NFS-e e NFS-e

a d RPS <XML> Mensagem Web Services Fila de Processos

XML de Envio validado pelo arquivo: servico_enviar_lote_rps_envio.xsd XML de Resposta validado pelo arquivo: servico_enviar_lote_rps_resposta.xsd

Passos para execuo 1. A aplicao acessa o servio de Recepo e Processamento de Lote de RPS enviando o lote (fluxo b). 2. A requisio recebida pelo servidor do Web Service que grava as informaes recebidas e gera o nmero de protocolo de recebimento (fluxo c). 3. O Web Service retorna uma mensagem com o resultado do processamento do servio (fluxo d).

Pgina 7 de 29 Reviso 1.00

3.1.2 Consulta de Situao de Lote de RPS Esse servio efetua a consulta da situao de um Lote de RPS j enviado.
Prestador Aplicao Cliente
2.b 2.a <XML> Identif. do Lote

Secretaria da Fazenda
2.c

?
Consulta

2.e <XML> Situao do Lote

Web Services

2.d NFS-e Processamento Resultado

XML de Envio validado pelo arquivo: servico_consultar_situacao_lote_rps_envio.xsd XML de Resposta validado pelo arquivo: servico_consultar_situacao_lote_rps_resposta.xsd

Passos para execuo 1. A aplicao acessa o servio de Consulta de Situao de Lote de RPS e submete os dados para processamento (fluxo 2.b). 2. A requisio recebida pelo servidor do Web Service, que verifica os dados preenchidos e identifica o status do lote (fluxox 2.c e 2.d). 3. O Web Service retorna uma mensagem com o resultado do processamento do servio (fluxo 2.e). 3.1.3 Consulta de NFS-e por RPS Esse servio efetua a consulta de uma NFS-e a partir do nmero de RPS que a gerou.
Prestador ou Tomador Aplicao Cliente
2.b 2.a <XML> Identif. do RPS 2.c

Secretaria da Fazenda

?
Consulta NFS-e

2.e <XML> NFS-e / Mensag.

Web Services

2.d Processamento NFS-e / Msg

XML de Envio validado pelo arquivo: servico_consultar_nfse_rps_envio.xsd XML de Resposta validado pelo arquivo: servico_consultar_nfse_rps_resposta.xsd

Passos para execuo 1. A aplicao acessa o servio de Consulta de NFS-e por RPS e submete os dados para processamento (fluxo 2.b).

Pgina 8 de 29 Reviso 1.00

2. A requisio recebida pelo servidor do Web Service, que verifica os dados preenchidos e identifica a NFS-e correspondente (fluxos 2.c e 2.d). 3. O Web Service retorna uma mensagem com o resultado do processamento do servio (fluxo 2.e). 3.1.4 Consulta de Lote de RPS Esse servio permite ao contribuinte obter as NFS-e que foram geradas a partir do Lote de RPS enviado, quando o processamento ocorrer sem problemas; ou obter a lista de erros e/ou inconsistncias encontradas nos RPS. Na validao do lote, devem ser retornados todos os erros verificados. Excepcionalmente, havendo uma excessiva quantidade de erros, poder ser definido um limitador para a quantidade de erros retornados.
Prestador Aplicao Cliente
b a <XML> Identif. do RPS

Secretaria da Fazenda
Web Services c

?
Consulta d NFS-e

e <XML> Grupo de NFS-e / Msg.

Processamento

NFS-e / Msg

XML de Envio validado pelo arquivo: servico_consultar_lote_rps_envio.xsd XML de Resposta validado pelo arquivo: servico_consultar_lote_rps_resposta.xsd

Passos para execuo 1. A aplicao acessa o servio de Consulta de Lote de RPS e submete os dados para processamento (fluxo b). 2. A requisio recebida pelo servidor do Web Service, que verifica os dados preenchidos e identifica as NFS-e correspondentes (fluxos c e d). 3. O Web Service retorna uma mensagem (a estrutura com a lista da NFSe geradas ou as mensagens de erro) com o resultado do processamento do servio (fluxo e). 3.1.5 Consulta de NFS-e Esse servio permite a obteno de determinada NFS-e j gerada.
Prestador ou Tomador Aplicao Cliente
2.b 2.a <XML> Identif. do RPS

Secretaria da Fazenda

2.c

?
Consulta

2.e <XML> NFS-e / Mensag.

Web Services

2.d Processamento NFS-e NFS-e / Msg

Pgina 9 de 29 Reviso 1.00

XML de Envio validado pelo arquivo: servico_consultar_nfse_envio.xsd XML de Resposta validado pelo arquivo: servico_consultar_nfse_resposta.xsd

Passos para execuo 1. A aplicao acessa o servio de Consulta de NFS-e e submete os dados para processamento (). 2. A requisio recebida pelo servidor do Web Service, que verifica os dados preenchidos e identifica as NFS-e correspondentes. 3. O Web Service retorna uma mensagem com o resultado do processamento do servio. 3.1.6 Cancelamento de NFS-e Esse servio permite o cancelamento direto de uma NFS-e sem substituio da mesma por outra.
Prestador Aplicao Cliente
2.b 2.a <XML> Identif. da NFS-e Cancelamento 2.d <XML> Mensagem 2.c Web Services Processamento NFS-e

Secretaria da Fazenda

XML de Envio validado pelo arquivo: servico_cancelar_nfse_envio.xsd XML de Resposta validado pelo arquivo: servico_cancelar_nfse_resposta.xsd

Passos para execuo 1. A aplicao acessa o servio de Cancelamento de NFS-e e submete os dados para processamento (fluxo 2.b). 2. A requisio recebida pelo servidor do Web Service, que verifica os dados preenchidos, identifica a NFS-e correspondente e efetua o seu cancelamento (fluxo 2.c). 3. O Web Service retorna uma mensagem com o resultado do processamento do servio (fluxo 2.d).

Pgina 10 de 29 Reviso 1.00

3.2

PADRES TCNICOS

HTTPS
Requisio

Contribuinte

Secretaria Municipal da Fazenda

3.2.1 Padro de Comunicao O meio fsico de comunicao utilizado entre os sistemas de informao dos contribuintes e o Sistema de Notas Fiscais de Servio Eletrnicas das Secretarias Municipais de Fazenda ser a Internet, com o uso do protocolo SSL, que alm de garantir um duto de comunicao seguro na Internet, permite a identificao do servidor e do cliente atravs de certificados digitais, eliminando a necessidade de identificao do usurio atravs de nome ou cdigo de usurio e senha. O modelo de comunicao segue o padro de Web Services definido pelo WS-I Basic Profile. A troca de mensagens entre o Web Service do Sistema de Notas Fiscais de Servio Eletrnicas das Secretaria Municipais de Fazenda e o sistema do contribuinte ser realizada no padro SOAP, com troca de mensagens XML no padro Style/Enconding: Document/Literal, wrapped. A opo wrapped representa a chamada aos mtodos disponveis com a passagem de mais de um parmetro.

SOAP

Requerente do Servio

Provedor do Servio

3.2.2 Padro de Certificado Digital Os certificados digitais utilizados no sistema de Notas Fiscais de Servio Eletrnicas, das Secretarias Municipais de Fazenda, sero emitidos por Autoridade Certificadora credenciada pela Infra-estrutura de Chaves Pblicas

10

Pgina 11 de 29 Reviso 1.00

Brasileira ICP-Brasil, dos tipos A1 ou A3, devendo conter o CNPJ da entidade proprietria no certificado. Os certificados digitais sero exigidos em 2 (dois) momentos distintos para a integrao entre o sistema do contribuinte e o Web Service das Secretarias Municipais de Fazenda: Assinatura de Mensagens: O certificado digital utilizado para essa funo dever conter o CNPJ do estabelecimento emissor da NFS-e ou o CNPJ do estabelecimento matriz. O certificado digital dever ter o uso da chave previsto para a funo de assinatura digital, respeitando a Poltica do Certificado. Transmisso (durante a transmisso das mensagens entre os servidores do contribuinte e os servios disponibilizados pelas Secretarias Municipais de Fazenda): O certificado digital utilizado para identificao do aplicativo do contribuinte dever conter o CNPJ do responsvel pela transmisso das mensagens, mas no necessita ser o mesmo CNPJ do estabelecimento emissor da NFS-e, devendo ter a extenso extended Key Usage com permisso de "Autenticao Cliente".

3.2.3 Padro de Assinatura Digital As mensagens enviadas aos servios disponibilizados pelas Secretarias Municipais de Fazenda so documentos eletrnicos elaborados no padro XML e devem ser assinados digitalmente com um certificado digital que contenha o CNPJ do estabelecimento matriz ou o CNPJ do estabelecimento emissor da NFS-e objeto do pedido. Para garantir minimamente a integridade das informaes prestadas e a correta formao dos arquivos XML, o contribuinte dever submeter as mensagens XML para validao pela linguagem de Schema do XML (XSD XML Schema Definition), disponibilizada pelas Secretarias Municipais de Fazenda antes de seu envio. Os elementos abaixo esto presentes dentro do Certificado do contribuinte tornando desnecessria a sua representao individualizada no arquivo XML. Portanto, o arquivo XML no deve conter os elementos: <X509SubjectName> <X509IssuerSerial> <X509IssuerName> <X509SerialNumber> <X509SKI>

11

Pgina 12 de 29 Reviso 1.00

Deve-se evitar o uso das TAGs abaixo, pois as informaes sero obtidas a partir do Certificado do emitente: <KeyValue> <RSAKeyValue> <Modulus> <Exponent> 3.2.4 Validao de Assinatura Digital pelo Sistema NFS-e Para a validao da assinatura digital, seguem as regras que sero adotadas pelas Secretarias Municipais de Fazenda: 1. Extrair a chave pblica do certificado; 2. Verificar o prazo de validade do certificado utilizado; 3. Montar e validar a cadeia de confiana dos certificados validando tambm a LCR (Lista de Certificados Revogados) de cada certificado da cadeia; 4. Validar o uso da chave utilizada (Assinatura Digital) de tal forma a aceitar certificados somente do tipo A (no sero aceitos certificados do tipo S); 5. Garantir que o certificado utilizado de um usurio final e no de uma Autoridade Certificadora; 6. Adotar as regras definidas pelo RFC 3280 para LCRs e cadeia de confiana; 7. Validar a integridade de todas as LCR utilizadas pelo sistema; 8. Prazo de validade de cada LCR utilizada (verificar data inicial e final). A forma de conferncia da LCR fica a critrio de cada Secretaria Municipal de Fazenda, podendo ser feita de 2 (duas) maneiras: On-line ou Download peridico. As assinaturas digitais das mensagens sero verificadas considerando o horrio fornecido pelo Observatrio Nacional. 3.3 PADRO DAS MENSAGENS XML A especificao adotada para as mensagens XML a recomendao W3C para XML 1.0, disponvel em www.w3.org/TR/REC-xml e a codificao dos caracteres ser em UTF-8. 3.3.1 Validao da estrutura das Mensagens XML Para garantir minimamente a integridade das informaes prestadas e a correta formao das mensagens XML, o contribuinte dever submeter cada uma das mensagens XML de pedido de servio para validao pelo seu respectivo 12

Pgina 13 de 29 Reviso 1.00

arquivo XSD (XML Schema Definition, definio de esquemas XML) antes de seu envio. Neste manual utilizaremos a nomenclatura Schema XML para nos referir a arquivo XSD. Um Schema XML define o contedo de uma mensagem XML, descrevendo os seus atributos, elementos e a sua organizao, alm de estabelecer regras de preenchimento de contedo e de obrigatoriedade de cada elemento ou grupo de informao. A validao da estrutura da mensagem XML realizada por um analisador sinttico (parser) que verifica se a mensagem XML atende as definies e regras de seu respectivo Schema XML. Qualquer divergncia da estrutura da mensagem XML em relao ao seu respectivo Schema XML, provoca um erro de validao do Schema XML. Neste caso o contedo da mensagem XML de pedido do servio no poder ser processado. A primeira condio para que a mensagem XML seja validada com sucesso que ela seja submetida ao Schema XML correto. Assim, os sistemas de informao dos contribuintes devem estar preparados para gerar mensagens XML em seus respectivos Schemas XML em vigor. 3.3.2 Schemas XML (arquivos XSD) O Schema XML (arquivo XSD) correspondente a cada uma das mensagens XML de pedido e de retorno utilizadas pelo Web Service pode ser obtido na internet acessando o Portal do Sistema de Notas Fiscais de Servio Eletrnicas das Secretarias Municipais de Fazenda. 3.3.3 Verso dos Schemas XML Toda mudana de layout das mensagens XML do Web Service implica na atualizao do seu respectivo Schema XML. A identificao da verso dos Schemas XML ser realizada com o acrscimo do nmero da verso com dois dgitos no nome do arquivo XSD precedida da literal _v, como segue: <Nome do Arquivo>_v<Nmero da Verso>.xsd Exemplo: EnvioLoteRps_v01.xsd 13

Pgina 14 de 29 Reviso 1.00

A maioria dos Schemas XML definidos para a utilizao do Web Service do Sistema de Notas Fiscais de Servio Eletrnicas das Secretarias Municipais de Fazenda utilizam as definies de tipos simples ou tipos complexos que esto definidos em outros Schemas XML, nestes casos, a modificao de verso do Schema bsico ser repercutida no Schema principal. As modificaes de layout das mensagens XML do Web Service podem ser causadas por necessidades tcnicas ou em razo da modificao de alguma legislao. As modificaes decorrentes de alterao da legislao devero ser implementadas nos prazos previstos no ato normativo que introduziu a alterao. As modificaes de ordem tcnica sero divulgadas pelas Secretarias Municipais de Fazenda e podero ocorrer sempre que se fizerem necessrias.

14

Pgina 15 de 29 Reviso 1.00

4 ESTRUTURA DE DADOS DO WEB SERVICE


Existir um nico Web Service com todos os servios apresentados no item 3.1. O fluxo de comunicao sempre iniciado pelo sistema do contribuinte atravs do envio de uma mensagem XML ao Web Service com o pedido do servio desejado. 4.1 MODELO OPERACIONAL A forma de processamento das solicitaes de servios no projeto Nota Fiscal de Servios Eletrnica pode ser sncrona, caso o atendimento da solicitao de servio seja realizada na mesma conexo ou assncrona, quando o processamento do servio solicitado no atendido na mesma conexo, devido uma demanda de processamento de grande quantidade de informao. Nesta situao torna-se necessria a realizao de mais uma conexo para a obteno do resultado do processamento. As solicitaes de servios que exigem processamento intenso sero executadas de forma assncrona e as demais solicitaes de servios de forma sncrona. Assim, os servios da NFS-e sero implementados da seguinte forma: Servio Recepo e Processamento de Lote de RPS Consulta de Situao de Lote de RPS Consulta de NFS-e por RPS Consulta de Lote de RPS Consulta de NFS-e Cancelamento de NFS-e Implementao Assncrona Sncrona Sncrona Sncrona Sncrona Sncrona

4.1.1 Servios Sncronos As solicitaes de servios de implementao sncrona so processadas imediatamente e o resultado do processamento obtido em uma nica conexo. Abaixo, o fluxo simplificado de funcionamento:
Secretaria da Fazenda Prestador
<XML> Solicitao Web Services

Processamento <XML> Resultado

15

Pgina 16 de 29 Reviso 1.00

Etapas do processo ideal: 1. O aplicativo do contribuinte inicia a conexo enviando uma mensagem de solicitao de servio para o Web Service; 2. O Web Service recebe a mensagem de solicitao de servio e encaminha ao aplicativo da NFS-e que ir processar o servio solicitado; 3. O aplicativo da NFS-e recebe a mensagem de solicitao de servios e realiza o processamento, devolvendo uma mensagem de resultado do processamento ao Web Service; 4. O Web Service recebe a mensagem de resultado do processamento e o encaminha ao aplicativo do contribuinte; 5. O aplicativo do contribuinte recebe a mensagem de resultado do processamento e caso no exista outra mensagem, encerra a conexo. 4.1.2 Servios Assncronos As solicitaes de servios de implementao assncrona so processadas de forma distribuda por vrios processos e o resultado do processamento somente obtido na segunda conexo. Abaixo, o fluxo simplificado de funcionamento:
Prestador
<XML> Solicitao

Secretaria da Fazenda

Web Service <XML> Resultado Fila de Processos

Etapas do processo ideal: Solicitao e processamento: 1. O aplicativo do contribuinte inicia a conexo enviando uma mensagem de solicitao de servio para o Web Service de recepo de solicitao de servios; 2. O Web Service de recepo de solicitao de servios recebe a mensagem de solicitao de servio e a coloca na fila de servios solicitados, acrescentando o CNPJ do transmissor obtido do certificado digital do transmissor;

16

Pgina 17 de 29 Reviso 1.00

3. O Web Service de recepo de solicitao de servios retorna o protocolo da solicitao de servio e a data e hora de gravao na fila de servios solicitados ao aplicativo do contribuinte; 4. O aplicativo do contribuinte recebe o protocolo; 5. Na estrutura interna do aplicativo de NFS-e a solicitao de servios retirada da fila de servios solicitados pelo aplicativo da NFS-e em momento especfico, definido pela equipe tcnica da NFS-e; 6. O servio solicitado processado pelo aplicativo da NFS-e e o resultado do processamento colocado na fila de servios processados; Obteno do resultado do servio: 7. O aplicativo do contribuinte, atravs do protocolo recebido, envia uma consulta ao servio que retornar o resultado do processamento daquele protocolo, iniciando uma conexo com o Web Service; 8. O Web Service recebe a mensagem de consulta e localiza o resultado de processamento da solicitao de servio; 9. O Web Service devolve o resultado do processamento ao aplicativo contribuinte; 10. O aplicativo do contribuinte recebe a mensagem de resultado do processamento e, caso no exista outra mensagem, encerra a conexo. 4.2 FORMATOS E PADRES UTILIZADOS Abaixo segue algumas formataes de dados que devem ser seguidas para gerao correta na estrutura dos arquivos.
Formato
Data (date)

Observao
Formato: AAAA-MM-DD onde: AAAA = ano com 4 caracteres MM = ms com 2 caracteres DD = dia com 2 caracteres Formato AAAA-MM-DDTHH:mm:ss onde: AAAA = ano com 4 caracteres MM = ms com 2 caracteres DD = dia com 2 caracteres T = caractere de formatao que deve existir separando a data da hora HH = hora com 2 caracteres mm: minuto com 2 caracteres ss: segundo com 2 caracteres Formato: 0.00 No deve ser utilizado separador de milhar. O ponto (.) deve ser utilizado para separar a parte inteira da fracionria. Exemplo: 48.562,25 = 48562.25 1,00 = 1.00 ou 1 0,50 = 0.50 ou 0.5 Formato 0.0000 O formato em percentual presume o valor percentual em sua forma fracionria, contendo 5 dgitos. O ponto (.) separa a parte inteira da

Data/Hora (datetime)

Valores Decimais (decimal)

Valores Percentuais (decimal)

17

Pgina 18 de 29 Reviso 1.00

fracionria. Exemplo: 62% = 0.62 150% = 1.5 25,32 = 0.2532

No deve ser inserido caractere no significativo para preencher o tamanho completo do campo, ou seja, zeros antes de nmero ou espao em branco aps cadeia de caracteres. A posio do campo definida na estrutura do documento XML atravs de TAGs (<tag>contedo</tag>). A regra constante do pargrafo anterior dever estender-se para os campos onde no h indicao de obrigatoriedade e que, no entanto, seu preenchimento torna-se obrigatrio por estar condicionado legislao especfica ou ao negcio do contribuinte. Neste caso, dever constar a TAG com o valor correspondente e, para os demais campos, devero ser eliminadas as TAGs. Para reduzir o tamanho final do arquivo XML da NFS-e alguns cuidados de programao devero ser assumidos: no incluir "zeros no significativos" para campos numricos; no incluir "espaos" no incio ou no final de campos numricos e alfanumricos; no incluir comentrios no arquivo XML; no incluir anotao e documentao no arquivo XML (TAG annotation e TAG documentation); no incluir caracteres de formatao no arquivo XML ("line-feed", "carriage return", "tab", caractere de "espao" entre as TAGs).

As TAGs que permitirem valores nulos devem ser omitidas da estrutura XML a ser enviada. 4.3 TIPOS SIMPLES A seguir encontra-se a tabela com a lista dos tipos simples que sero utilizados como tipos de dados. A tabela est dividida em 4 colunas, a saber: Campo: nome do tipo simples; Tipo: tipo primitivo de dados utilizados pelo campo: o C: Caractere; o N: Nmero; o D: Data ou Data/Hora; Descrio: descreve informaes sobre o campo; Tam.: tamanho do campo:

18

Pgina 19 de 29 Reviso 1.00

o Quando for caracteres o tamanho define a quantidade mxima de caracteres que o texto poder ter; o Quando for numrico o tamanho pode ser representado das seguintes formas Nmero inteiro, que define o total de dgitos existente no nmero. Exemplo: 15 significa que o nmero poder ter, no mximo, 15 dgitos; Nmero fracionrio, que define o total de dgitos e quantos deles sero designados para a parte fracionria. Exemplo: 15,2 significa que o nmero poder ter, no mximo, 15 dgitos sendo 2 deles a identificao da parte fracionria. A parte fracionria no obrigatria quando assim definido; o Quando for data, no haver definio de tamanho.
Campo
TsNumeroNfse tsCodigoVerificacao TsCompetencia TsStatusRps

Tipo
N C N N

Descrio
Nmero da Nota Fiscal de Servio Eletrnica Cdigo de verificao do nmero da nota Perodo de competncia. Formato: AAAAMM Cdigo de status do RPS 1 Normal 2 Cancelado Cdigo de status da NFS-e 1 Normal 2 Cancelado Cdigo de natureza da operao 1 Tributao no municpio 2 - Tributao fora do municpio 3 - Iseno 4 - Imune 5 Exigibilidade suspensa por deciso judicial 6 Exigibilidade suspensa por procedimento administrativo Cdigo de identificao do regime especial de tributao 1 Microempresa municipal 2 - Estimativa 3 Sociedade de profissionais 4 Cooperativa Identificao de Sim/No 1 - Sim 2 No Quantidade de RPS do Lote Nmero do RPS Nmero de srie do RPS Cdigo de tipo de RPS 1 - RPS 2 Nota Fiscal Conjugada (Mista) 3 Cupom Informaes adicionais ao documento. Valor monetrio. Formato: 0.00 (ponto separando casa decimal) Ex: 1.234,56 = 1234.56 1.000,00 = 1000.00 1.000,00 = 1000

Tam.
15 9 6 1

TsStatusNfse tsNaturezaOperacao

N N

1 2

tsRegimeEspecialTributacao

TsSimNao

TsQuantidadeRps TsNumeroRps TsSerieRps TsTipoRps

N N C N

4 15 5 1

tsOutrasInformacoes TsValor

C N

255 15,2

19

Pgina 20 de 29 Reviso 1.00

tsItemListaServico TsCodigoCnae tsCodigoTributacao TsAliquota

C N C N

tsDiscriminacao tsCodigoMunicipioIbge tsIncricaoMunicipal tsRazaoSocial tsNomeFantasia TsCnpj tsEndereco tsNumeroEndereco tsComplementoEndereco tsBairro tsUf tsCep tsEmail tsTelefone TsCpf tsIndicacaoCpfCnpj

C N C C C C C C C C C N C C C N

tsCodigoObra tsArt tsNumeroLote tsNumeroProtocolo tsSituacaoLoteRps

C C N N N

tsCodigoMensagemAlerta TsDescricaoMensagemAlerta TsMotivoCancelamentoNfse

C C C

Cdigo de item da lista de servio Cdigo CNAE Cdigo de Tributao Alquota. Valor percentual. Formato: 0.0000 Ex: 1% = 0.01 25,5% = 0.255 100% = 1.0000 ou 1 Discriminao do contedo da NFS-e Cdigo de identificao do municpio conforme tabela do IBGE Nmero de inscrio municipal Razo Social do contribuinte Nome fantasia Nmero CNPJ Endereo Nmero do endereo Complemento de endereo Bairro Sigla da unidade federativa Nmero do CEP E-mail Telefone Nmero de CPF Indicador de uso de CPF ou CNPJ 1 CPF 2 CNPJ 3 No Informado Cdigo de Obra Cdigo ART Nmero do Lote de RPS Nmero do protocolo de recebimento do RPS Cdigo de situao de lote de RPS 1 No Recebido 2 No Processado 3 Processado com Erro 4 Processado com Sucesso Cdigo de mensagem de retorno de servio. Descrio da mensagem de retorno de servio. Motivo do cancelamento da NFS-e

4 7 20 5,4

2000 7 15 115 60 14 125 10 60 60 2 8 80 11 11 1

15 15 15 15 1

4 200 200

4.4 TIPOS COMPLEXOS A seguir sero detalhadas as tabelas de cada tipo composto e seus campos. A tabela est dividida da seguinte forma:
(1)
(2) Nome (3) (4) (4) Tipo (5) (5) Ocorrncia Descrio (6) (6) (7) (7)

1. 2. 3. 4. 5.

Nome do tipo complexo; Descrio do tipo complexo; Identifica se a seqncia de campos far parte de uma escolha (Choice); Nome do campo que faz parte do tipo complexo; Tipo do campo, que pode ser de um tipo simples ou complexo; 20

Pgina 21 de 29 Reviso 1.00

6. Quantas vezes o campo se repete na estrutura de dados: a. Formato: z-y onde x a quantidade mnima e y a quantidade mxima. Se a quantidade mxima for indefinida, ser utilizado N no lugar do y; 7. Descrio do campo.
TcCpfCnpj
Nmero de CPF ou CNPJ Nome Cpf Choice Cnpj Tipo tsCpf tsCnpj Ocorrncia Descrio 1-1 Nmero do Cpf 1-1 Nmero do Cnpj

TcEndereco
Representao completa do endereo Nome Tipo Ocorrncia Descrio Endereco tsEndereco 0-1 Endereo Numero tsNumeroEndereco 0-1 Nmero do endereo Complemento tsComplementoEndereco 0-1 Complemento do Endereo Bairro tsBairro 0-1 Nome do bairro Cidade tsCodigoMunicipioIbge 0-1 Cdigo da cidade Estado tsUf 0-1 Sigla do estado Cep tsCep 0-1 CEP da localidade

TcContato
Representa forma de contato com a pessoa (fsica/jurdica) Nome Tipo Ocorrncia Descrio Telefone tsTelefone 0-1 Email tsEmail 0-1

tcIdentificacaoOrgaoGerador
Representa dados para identificao de rgo gerador Nome Tipo Ocorrncia Descrio CodigoMunicipio tsCodigoMunicipioIbge 1-1 Uf tsUf 1-1

tcIdentificacaoRps
Dados de identificao do RPS Nome Numero Serie Tipo Tipo tsNumeroRps tsSerieRps tsTipoRps Ocorrncia Descrio 1-1 1-1 1-1

tcIdentificacaoPrestador
Representa dados para identificao do prestador de servio Nome Tipo Ocorrncia Descrio Cnpj tsCnpj 1-1 InscricaoMunicipal tsInscricaoMunicipal 0-1

tcIdentificacaoTomador
Representa dados para identificao do tomador de servio Nome Tipo Ocorrncia Descrio CpfCnpj tcCpfCnpj 0-1 InscricaoMunicipal tsInscricaoMunicipal 0-1

21

Pgina 22 de 29 Reviso 1.00

tcDadosTomador
Representa dados do tomador de servio Nome Tipo Ocorrncia Descrio IdentificacaoTomador TcIdentificacaoTomador 0-1 RazaoSocial TsRazaoSocial 0-1 Endereco TcEndereco 0-1 Contato TcContato 0-1

TcIdentificacaoIntermediarioServico
Representa dados para identificao de intermedirio do servio Nome Tipo Ocorrncia Descrio RazaoSocial tsRazaoSocial 1-1 Cnpj tsCnpj 1-1 InscricaoMunicipal tsInscricaoMunicipal 0-1

TcValores
Representa um conjunto de valores que compe o documento fiscal Nome Tipo Ocorrncia Descrio ValorServicos tsValor 1-1 ValorDeducoes tsValor 0-1 ValorPis tsValor 0-1 ValorCofins tsValor 0-1 ValorInss tsValor 0-1 ValorIr tsValor 0-1 ValorCsll tsValor 0-1 IssRetido tsSimNao 1-1 ValorIss tsValor 0-1 OutrasRetencoes tsValor 0-1 BaseCalculo tsValor 1-1 (Valor dos servios - Valor das dedues - descontos incondicionados) Aliquota tsAliquota 0-1 ValorLiquidoNfse tsValor 0-1 (ValorServicos - ValorPIS ValorCOFINS - ValorINSS ValorIR - ValorCSLL OutrasRetenoes ValorISSRetido DescontoIncondicionado DescontoCondicionado) ValorIssRetido tsValor 0-1 DescontoCondicionado tsValor 0-1 DescontoIncondicionado tsValor 0-1

TcDadosServico
Representa dados que compe o servio prestado Nome Tipo Ocorrncia Descrio Valores tcValores 1-1 ItemListaServico tsItemListaServico 1-1 CodigoCnae tsCodigoCnae 0-1 CodigoTributacaoMunicipio tsCodigoTributacao 0-1 Discriminacao tsDiscriminacao 1-1 MunicipioPrestacaoServico tsCodigoMunicipioIbge 1-1

tcDadosConstrucaoCivil
Representa dados para identificao de construo civil Nome Tipo CodigoObra tsCodigoObra Ocorrncia Descrio 1-1

22

Pgina 23 de 29 Reviso 1.00

Art

tsArt

1-1

tcDadosPrestador
Representa dados do prestador do servio Nome Tipo Ocorrncia Descrio IdentificacaoPrestador tcIdentificacaoPrestador 1-1 RazaoSocial tsRazaoSocial 1-1 NomeFantasia tsNomeFantasia 0-1 Endereco tcEndereco 1-1 Contato tcContato 0-1

TcRps
Representa a estrutura de Recibo Provisrio de Servio (RPS) Nome Tipo Ocorrncia Descrio IdentificacaoRps TcIdentificacaoRps 1-1 DataEmissao Datetime 1-1 NaturezaOperacao TsNaturezaOperacao 1-1 RegimeEspecialTributacao TsRegimeEspecialTributacao 0-1 OptanteSimplesNacional TsSimNao 1-1 IncentivadorCultural TsSimNao 1-1 Status TsStatusRps 1-1 RpsSubstituido TcIdentificacaoRps 0-1 Servico TcDadosServico 1-1 Prestador TcIdentificacaoPrestador 1-1 Tomador TcDadosTomador 1-1 IntermediarioServico tcIdentificacaoIntermediarioServico 0-1 ConstrucaoCivil TcDadosContrucaoCivil 0-1

tcIdentificacaoNfse
Representa dados que identificam uma Nota Fiscal de Servios Eletrnica Nome Tipo Ocorrncia Descrio Numero tsNumeroNfse 1-1 CodigoVerificacao tsCodigoVerificacao 1-1

TcNfseSemCancelamento
Representa a estrutura da Nota Fiscal de Servios Eletrnica Nome Tipo Ocorrncia Descrio IdentificacaoNfse tcIdentificacaoNfse 1-1 DataEmissao Datetime 1-1 IdentificacaoRps tcIdentificacaoRps 0-1 DataEmissaoRps Date 0-1 NaturezaOperacao tsNaturezaOperacao 1-1 RegimeEspecialTributacao tsRegimeEspecialTributacao 0-1 OptanteSimplesNacional TsSimNao 1-1 IncetivadorCultural TsSimNao 1-1 Competencia tsCompetencia 1-1 NfseSubstituida tcIdentificacaoNfse 0-1 OutrasInformacoes tsOutrasInformacoes 0-1 Servico tcDadosServico 1-1 ValorCredito TsValor 0-1 PrestadorServico tcDadosPrestador 1-1 TomadorServico tcDadosTomador 1-1 IntermediarioServico tcIdentificacaoIntermediarioServico 0-1 OrgaoGerador tcIdentificacaoOrgaoGerador 1-1 ConstrucaoCivil tcDadosContrucaoCivil 0-1

TcCancelamentoNfse

23

Pgina 24 de 29 Reviso 1.00

Representa a estrutura de cancelamento de NFS-e. Nome Tipo Data DateTime Motivo TsMotivoCancelamentoNfse

Ocorrncia Descrio 1-1 1-1

TcNfse
Representa a estrutura de NFS-e incluindo a estrutura de cancelamento da mesma, quando existente. Nome Tipo Ocorrncia Descrio Nfse TcNfseSemCancelamento 1-1 Cancelamento TcCancelamentoNfse 0-1

tcMensagemRetorno
Representa a estrutura de mensagem de retorno de servio. Nome Tipo Codigo TsCodigoMensagemAlerta Mensagem tsDescricaoMensagemAlert a Correcao tsDescricaoMensagemAlert a Ocorrncia Descrio 1-1 1-1 0-1

tcMensagemRetornoLote
Representa a estrutura de mensagem de retorno de servio. Nome Tipo IdentificacaoRps TcIdentificacaoRps Codigo TsCodigoMensagemAlerta Mensagem tsDescricaoMensagemAlert a Ocorrncia Descrio 1-1 1-1 1-1

4.5 SERVIOS A seguir esto os servios disponveis, conforme descritos no item 3.1, no WebService e seus XML Schema. O XML Schema define a estrutura e formatao do arquivo XML que conter os dados a serem trafegados. As tabelas que detalham cada XML Schema esto divididas da seguinte forma:
(1)
# (2) Nome (3) Tipo (4) Pai (5) Ocorrncia (6) (8) Observao (7) (9)

1. 2. 3. 4.

Nome do arquivo XSD; Nmero identificador do campo, quando este contiver subitens; Nome do campo; Nome do tipo do campo que pode ser tipo primitivo, simples ou complexo; 5. Indica quem o campo pai, para definio da hierarquia; 6. Quantas vezes o campo se repete na estrutura de dados:

24

Pgina 25 de 29 Reviso 1.00

a. Formato: z-y onde x a quantidade mnima e y a quantidade mxima. Se a quantidade mxima for indefinida, ser utilizado N no lugar do y; 7. Descreve alguma observao pertinente; 8. Formato de grupo, utilizado para definio de uma escolha (ver prximo item); 9. Identifica os campos ou grupos que faro parte de uma escolha (Choice). 4.5.1 Recepo de Lote de RPS Esse servio ser executado, inicialmente, atravs da chamada ao mtodo RecepcionarLoteRps, passando a mensagem XML como parmetro com a estrutura definida na tabela que segue.
servico_enviar_lote_rps_envio.xsd
# 1 Nome EnviarLoteRpsEnvio NumeroLote Cnpj InscricaoMunicipal QuantidadeRps ListaRps Rps Tipo TsNumeroLote TsCnpj TsInscricaoMunicipal TsQuantidadeRps TcRps Pai 1 1 1 1 1 2 Ocorrncia 1-1 1-1 1-1 1-1 1-1 1-1 1-N Observao

Em resposta a chamada do servio ser devolvida a estrutura definida na tabela a seguir.


servico_enviar_lote_rps_resposta.xsd
# 1 Nome EnviarLoteRpsResposta NumeroLote DataRecebimento Protocolo MensagemRetorno Tipo tsNumeroLote datetime tsNumeroProtocolo tcMensagemRetorno Pai 1 1 1 1 Ocorrncia 1-1 1-1 1-1 Observao

Choice

O lote ser processado posteriormente, sendo o seu resultado disponibilizado para consulta. 4.5.2 Consulta de Situao de Lote de RPS Esse servio ser executado atravs da chamada ao mtodo ConsultarSituacaoLoteRps, passando a mensagem XML como parmetro com a estrutura definida na tabela que segue.
servico_consultar_situacao_lote_rps_envio.xsd
# 1 Nome ConsultarSituacaoLoteRpsEn vio Prestador Tipo Pai Ocorrncia 1-1 1-1 Observao

TcIdentificacaoPrestador

25

Pgina 26 de 29 Reviso 1.00

Protocolo

TsNumeroProtocolo

1-1

Em resposta a chamada do servio ser devolvida a estrutura definida na tabela a seguir.


servico_consultar_situacao_lote_rps_resposta.xsd
# 1 Nome ConsultarSituacaoLoteRpsRe sposta NumeroLote Situao MensagemRetorno Tipo Pai Ocorrncia 1-1 1-1 1-1 Observao

tsNumeroLote tsSituacaoLoteRps tcMensagemRetorno

1 1 1

Choice

4.5.3 Consulta de NFS-e por RPS Esse servio ser executado atravs da chamada ao mtodo ConsultarNfsePorRps, passando a mensagem XML como parmetro com a estrutura definida na tabela que segue.
servico_consultar_nfse_rps_envio.xsd
# 1 Nome ConsultarNfseRpsEnvio IdentificacaoRps Prestador Tipo tcIdentificacaoRps tcIdentificacaoPrestador Pai 1 1 Ocorrncia 1-1 1-1 Observao

Em resposta a chamada do servio ser devolvida a estrutura definida na tabela a seguir.


servico_consultar_nfse_rps_resposta.xsd
# 1 Nome ConsultarNfseRpsResposta Nfse MensagemRetorno Tipo tcNfse tcMensagemRetorno Pai 1 1 Ocorrncia 1-1 1-1 Observao Choice

4.5.4 Consulta de NFS-e Esse servio ser executado atravs da chamada ao mtodo ConsultarNfse, passando a mensagem XML como parmetro com a estrutura definida na tabela que segue.
servico_consultar_nfse_envio.xsd
# 1 Nome ConsultarNfseEnvio Prestador NumeroNfse PeriodoEmissao DataInicial DataFinal Tomador IntermediarioServico Tipo tcIdentificacaoPrestador tsNumeroNfse date date tcIdentificacaoTomador TcIdentificacaoIntermediar ioServico Pai 1 1 1 2 2 1 1 Ocorrncia 1-1 1-1 0-1 0-1 1-1 1-1 0-1 0-1 Observao

26

Pgina 27 de 29 Reviso 1.00

Em resposta a chamada do servio ser devolvida a estrutura definida na tabela a seguir.


servico_consultar_nfse_resposta.xsd
# 1 2 Nome ConsultarNfseResposta ListaNfse Nfse MensagemRetorno Tipo Pai 1 2 1 Ocorrncia 1-1 1-1 0-N 1-1 Observao

tcNfse tcMensagemRetorno

Choice

4.5.5 Consulta de Lote de RPS Esse servio ser executado atravs da chamada ao mtodo ConsultarLoteRps, passando a mensagem XML como parmetro com a estrutura definida na tabela que segue.
servico_consultar_lote_rps_envio.xsd
# 1 Nome ConsultarLoteRpsEnvio Prestador Protocolo Tipo TcIdentificacaoPrestador TsNumeroProtocolo Pai 1 1 Ocorrncia 1-1 1-1 1-1 Observao

Em resposta a chamada do servio ser devolvida a estrutura definida na tabela a seguir.


servico_consultar_lote_rps_resposta.xsd
# 1 2 3 Nome ConsultarLoteRpsResposta ListaNfse Nfse ListaMensagemRetorno MensagemRetorno Tipo Pai 1 2 1 3 Ocorrncia 1-1 1-1 1-N 1-1 1-N Observao

tcNfse TcMensagemRetornoLote

Choice

4.5.6 Cancelamento NFS-e Esse servio ser executado atravs da chamada ao mtodo CancelarNfse, passando a mensagem XML como parmetro com a estrutura definida na tabela que segue.
servico_cancelar_nfse_envio.xsd
# 1 Nome CancelarNfseEnvio Prestador NumeroNfse Tipo TcIdentificacaoPrestador tsNumeroNfse Pai 1 1 Ocorrncia 1-1 1-1 1-1 Observao

Em resposta a chamada do servio ser devolvida a estrutura definida na tabela a seguir.


servico_cancelar_nfse_resposta.xsd

27

Pgina 28 de 29 Reviso 1.00

# 1

Nome CancelarNfseResposta Sucesso DataHora MensagemRetorno

Tipo boolean datetime tcMensagemRetorno

Pai 1 1 1

Ocorrncia 1-1 1-1 0-1

Observao

28

Pgina 29 de 29 Reviso 1.00

5 ANEXO
5.1 TABELA DE ERROS E ALERTAS

Planilha do Microsoft Excel

29