Boa tarde!
Tenho usado a API da Nuvem Fiscal a alguns meses, e o consumo inicial que fiz do método de EmitirNfseDps
contempla o envio de apenas 01 serviço prestado.
Conforme a documentação API Nuvem Fiscal | Nuvem Fiscal o JSON de exemplo p/ a requisição é este a seguir:
{
"id": "string",
"created_at": "2019-08-24T14:15:22Z",
"status": "processando",
"numero": "string",
"codigo_verificacao": "string",
"link_url": "string",
"data_emissao": "2019-08-24T14:15:22Z",
"ambiente": "homologacao",
"referencia": "string",
"DPS": {
"serie": "string",
"nDPS": "string"
},
"cancelamento": {
"id": "string",
"status": "pendente",
"codigo": "string",
"motivo": "string",
"data_hora": "2019-08-24T14:15:22Z",
"mensagens": [
{
"codigo": "string",
"descricao": "string",
"correcao": "string"
}
]
},
"mensagens": [
{
"codigo": "string",
"descricao": "string",
"correcao": "string"
}
],
"declaracao_prestacao_servico": {
"rps": {
"identificacao_rps": {
"numero": "string",
"serie": "string",
"tipo": "string"
},
"data_emissao": "2019-08-24T14:15:22Z"
},
"competencia": "2019-08-24T14:15:22Z",
"natureza_tributacao": 0,
"prestador": {
"cpf_cnpj": "string",
"inscricao_municipal": "string",
"nome_razao_social": "string",
"nome_fantasia": "string",
"fone": "string",
"email": "string",
"endereco": {
"logradouro": "string",
"numero": "string",
"complemento": "string",
"bairro": "string",
"codigo_municipio": "string",
"cidade": "string",
"uf": "string",
"codigo_pais": "1058",
"pais": "Brasil",
"cep": "string"
},
"optante_simples_nacional": true,
"regime_tributacao": 0,
"regime_especial_tributacao": 0,
"incentivo_fiscal": true,
"incentivador_cultural": true
},
"tomador": {
"cpf_cnpj": "string",
"inscricao_municipal": "string",
"nome_razao_social": "string",
"fone": "string",
"email": "string",
"endereco": {
"logradouro": "string",
"numero": "string",
"complemento": "string",
"bairro": "string",
"codigo_municipio": "string",
"cidade": "string",
"uf": "string",
"codigo_pais": "1058",
"pais": "string",
"cep": "string"
}
},
"intermediario": {
"cpf_cnpj": "string",
"nome_razao_social": "string",
"inscricao_municipal": "string"
},
"construcao_civil": {
"codigo_obra": "string",
"art": "string"
},
"servicos": [
{
"iss_retido": false,
"responsavel_retencao": 0,
"item_lista_servico": "string",
"codigo_cnae": "string",
"codigo_tributacao_municipio": "string",
"discriminacao": "string",
"codigo_municipio": "string",
"codigo_pais": "string",
"tipo_tributacao": 6,
"exigibilidade_iss": 1,
"codigo_municipio_incidencia": "string",
"numero_processo": "string",
"unidade": "string",
"quantidade": 1,
"valores": {
"valor_unitario": 0,
"valor_servicos": 0,
"valor_deducoes": 0,
"valor_pis": 0,
"valor_cofins": 0,
"valor_inss": 0,
"valor_ir": 0,
"valor_csll": 0,
"valor_outras_retencoes": 0,
"valor_iss": 0,
"valor_iss_retido": 0,
"valor_liquido": 0,
"aliquota_iss": 0,
"aliquota_pis": 0,
"aliquota_cofins": 0,
"aliquota_inss": 0,
"aliquota_ir": 0,
"aliquota_csll": 0,
"desconto_incondicionado": 0,
"desconto_condicionado": 0
}
}
],
"outras_informacoes": "string"
}
}
Percebe-se que em infDPS.serv.cServ.xDescServ
(descrição do serviço) e infDPS.valores.vServPrest.vServ
(valor do serviço) em suma, são campos únicos no layout da NFSe (pelo menos foi esta a leitura que tive, e tenho enviado as minhas notas) que não permitem iterações em algum objeto pai que indica qual item eu estou informando, por exemplo, eu imagino que se existisse a possibilidade de informar a prestação de múltiplos serviços, a estrutura seria mais ou menos assim: infDPS.serv[0].cServ.xDescServ
(descrição do serviço 1) e infDPS.valores[0].vServPrest.vServ
(valor do serviço 1), permitindo que eu pudesse informar dados de mais serviços.
Está correta a minha leitura da documentação? Ou existe alguma forma de informar multiplos serviços que foram prestados, exemplo:
- 2 x 100,00 - Duas prestações do Serviço A
- 3 x 50,00 - Três prestações do Serviço B
– Total da NFSe: R$ 350,00
Ao invés de a prefeitura interpretar tudo como se a quantidade fosse 1, e o valor, fosse o valor total dos meus serviços: