Como informar mais de um serviço prestado na NFSe?

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:

Só um adendo, que a imagem que coloquei de exemplo, consta apenas 1 serviço prestado.

Mas eu tenho concatenado a descrição/quantidades e valores dos vários serviços que são prestados, neste mesmo campo de descrição, e a prefeitura sempre monta a informação de que a “Qtd = 1,00” e o “Valor do serviço” é o valor total dos serviços, pois eu só tenho 1 campo para informar o valor.

Boa tarde, @app.

Não é possível enviar mais de um serviço na nota fiscal de serviço em nossa API.

Este tópico foi fechado automaticamente 24 horas depois da última resposta. Novas respostas não são mais permitidas.