Versão atual:

Assinatura Digital de Nota Fiscal Paulistana (NFS-e) em Java

Estou desenvolvendo uma integração com o web service da prefeitura de São Paulo, para envio em lote de NFS-e.

Meu problema está na assinatura do lote a ser enviado: no manual consta a estrutura do conteúdo para assinar cada RPS do lote - tag Assinatura - , mas não para assinar o lote no final.

Tentei gerar a assinatura do lote passando esse xml que segue, porém convertido em string e sem quebras de linha ou espaços em branco entre as tags:

<?xml version="1.0"?>
<PedidoEnvioLoteRPS xmlns="http://www.prefeitura.sp.gov.br/nfe" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Cabecalho Versao="1" xmlns="">
    <CPFCNPJRemetente>
      <CNPJ>99999999999999</CNPJ>
    </CPFCNPJRemetente>
    <transacao>false</transacao>
    <dtInicio>2018-08-23</dtInicio>
    <dtFim>2018-08-23</dtFim>
    <QtdRPS>1</QtdRPS>
    <ValorTotalServicos>30</ValorTotalServicos>
    <ValorTotalDeducoes>0</ValorTotalDeducoes>
  </Cabecalho>
  <RPS xmlns="">
    <Assinatura>SBq2Nvwa190gyjEKCYDaRDd25EDgF6bpodQrF3JTjQVcY6ABDun44TA8qi/G7GO6sqV0aYe/+cDFO7V5tcpqxLAWfpkvu70vJcvaPGBD2bSn944ZaWFTkUh+cfOc7PUNnjiBLt9rM5fuYX/Vn56B/rc5dxVOaYCT9xXzLCsVDBpqX8trhe+h3DiPX+J0yzsit+VuUWUrD4Nv+pd9aS1uPREZgNDj0c2R28xdEy2FPV9VdBvdfQOS7gsEQaCrGdfcJcQ2oSaG4kH/kBr+9/a6zS2p2Aj91vzWHCxb1GI2PqwZCd43OEL+6WWiNECZBuMEn2w8Xa8ApAiPfXrNilzTwg==</Assinatura>
    <ChaveRPS>
      <InscricaoPrestador>99999999</InscricaoPrestador>
      <SerieRPS>1</SerieRPS>
      <NumeroRPS>28</NumeroRPS>
    </ChaveRPS>
    <TipoRPS>RPS</TipoRPS>
    <DataEmissao>2018-08-23</DataEmissao>
    <StatusRPS>N</StatusRPS>
    <TributacaoRPS>T</TributacaoRPS>
    <ValorServicos>30</ValorServicos>
    <ValorDeducoes>0</ValorDeducoes>
    <ValorPIS>0</ValorPIS>
    <ValorCOFINS>0</ValorCOFINS>
    <ValorINSS>0</ValorINSS>
    <ValorIR>0.45</ValorIR>
    <ValorCSLL>0</ValorCSLL>
    <CodigoServico>03205</CodigoServico>
    <AliquotaServicos>2</AliquotaServicos>
    <ISSRetido>false</ISSRetido>
    <CPFCNPJTomador>
      <CNPJ>88888888888888</CNPJ>
    </CPFCNPJTomador>
    <RazaoSocialTomador>NOME DO TOMADOR</RazaoSocialTomador>
    <EnderecoTomador>
      <Logradouro>Endereço do tomador</Logradouro>
      <NumeroEndereco>999</NumeroEndereco>
      <ComplementoEndereco>complemento</ComplementoEndereco>
      <Bairro>Bairro</Bairro>
      <Cidade>3505708</Cidade>
      <UF>SP</UF>
      <CEP>99999999</CEP>
    </EnderecoTomador>
    <EmailTomador>email</EmailTomador>
    <Discriminacao>Descrição dos itens</Discriminacao>
    <ValorCargaTributaria>0</ValorCargaTributaria>
    <PercentualCargaTributaria>0</PercentualCargaTributaria>
    <FonteCargaTributaria>IBPT</FonteCargaTributaria>
    <MunicipioPrestacao>9999999</MunicipioPrestacao>
  </RPS>
</PedidoEnvioLoteRPS>

Qual é o conteúdo do xml que devo converter em string para assinar e preencher a tag SignatureValue?

Versões(2):

Ver a versão formatada

Assinatura Digital de Nota Fiscal Paulistana (NFS-e) em Java

Comentário

new question