Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 2537 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

Caros Colegas,

 

Ao gerar o XML da NFC-e, na forma de pagamento esta sendo acrescentado uma varias formas com valores zerados, sendo que ja revisei o código e só mando quando o valor é maior que zero.

 

Trecho do meu código:

      if EVLR_Dinheiro.Value > 0 then
       begin
        pag.Add.tPag := fpDinheiro;
        pag.Add.vPag := A_Menu.Arredonda(EVLR_Dinheiro.Value);
       end;
      if (EVLR_ChequeAV.Value > 0) Or (EVLR_ChequeAP.Value > 0) then
       begin
        pag.Add.tPag := fpCheque;
        pag.Add.vPag := A_Menu.Arredonda(EVLR_ChequeAV.Value + EVLR_ChequeAP.Value);
       end;
      if EVLR_Cartao.Value > 0 then
       begin
        pag.Add.tPag := fpCartaoCredito;
        pag.Add.vPag := A_Menu.Arredonda(EVLR_Cartao.Value);
       end;
      if EVLR_CartaoDebito.Value > 0 then
       begin
        pag.Add.tPag := fpCartaoDebito;
        pag.Add.vPag := A_Menu.Arredonda(EVLR_CartaoDebito.Value);
       end;
      if EVLR_Crediario.Value > 0 then
       begin
        pag.Add.tPag := fpCreditoLoja;
        pag.Add.vPag := A_Menu.Arredonda(EVLR_Crediario.Value);
       end;
      if (EVLR_Convenio.Value + EVLR_Banco.Value)   > 0 then
       begin
        pag.Add.tPag := fpOutro;
        pag.Add.vPag := A_Menu.Arredonda(EVLR_Convenio.Value + EVLR_Banco.Value);
       end;

 

 

Código do XML

 

- <pag>
  <tPag>01</tPag>
  <vPag>0.00</vPag>
  </pag>
- <pag>
  <tPag>01</tPag>
  <vPag>3.00</vPag>
  </pag>
- <pag>
  <tPag>04</tPag>
  <vPag>0.00</vPag>
  </pag>
- <pag>
  <tPag>01</tPag>
  <vPag>2.97</vPag>
  </pag>

 

Agradeço pela atenção. O XML está em anexo.

 

Obrigado

 

  • Curtir 1
  • 7 meses depois ...
  • Moderadores
Postado

Caro colega

 

Tem como adicionar a opção fpDeposito?

 

Os tipos de pagamento para NFC-e são definidos por meio de nota técnica, então não é possível adicionar meios de pagamento que não os que são permitidos pelo SEFAZ.

No seu caso deveria utilizar o meio de pagamento Outros.

  • Curtir 1

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
  • 1 mês depois ...
Postado (editado)

Boa tarde, eu sou novo aqui e estou tentando gerar uma NFC-e com duas formas de pagamento na mesma venda, exemplo Cartão de Crédito 30,00 e Cartão de Débito 50,00 mais não esta dando certo quando gera o XML da NFC-e segue abaixo alguns testes que fiz no Delphi, se alguém puder me ajudar agradeço.

with pag.Add do 
       begin
         tPag := fpCartaoCredito;
         vPag := 30;
         tPag := fpCartaoDebito;
         vPag := 50;
       end;
Passando da forma acima da um erro quando vai enviar a NFC-e dizendo que o somatorio das formas de pagamento não bate.
 
Da forma embaixo fica errado no XML pois adiciona 3 formas de pagamento.
         pag.Add.tPag := fpCartaoCredito;
         pag.Add.vPag := 30;
         pag.Add.tPag := fpCartaoDebito;
         pag.Add.vPag := 50;
 
        XML
       <pag>
         <tPag>03</tPag>
         <vPag>30.00</vPag>
      </pag>
      <pag>
        <tPag>04</tPag>
        <vPag>00.00</vPag>
      </pag>
       <pag>
        <tPag>01</tPag>
        <vPag>50.00</vPag>
      </pag>
      
    O valor de 50,00 que é Cartão de Debito fica na forma de pagamento Dinheiro mais eu não adicionei a forma de pagamento Dinheiro.   
 
Editado por carlos vilanova
  • 2 anos depois...
Postado

ola pessoal, segundo o manual, a tag 'pag' so deve ser usada para NFC-e, mas estou enviando uma NF-e e esta dando rejeicao nessa tag:

Element '{http://www.portalfiscal.inf.br/nfe}pag' cannot be empty according to the DTD/Schema.

 

estou usando ACBrNFe e enviando NF-e para o estado do MT. nao achei na net dizendo alguma coisa q seja obrigatorio essa tag para NFe no MT. alg tem algum link ou alguma dica?

Analista de Sistemas

Control Fácil Sistemas

MultiWare Tecnologia

TW Speed Telecom

  • Moderadores
Postado
7 horas atrás, joemil disse:

ola pessoal, segundo o manual, a tag 'pag' so deve ser usada para NFC-e, mas estou enviando uma NF-e e esta dando rejeicao nessa tag:

O grupo de pagamentos passou a ser obrigatório na NFe 4.0.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

  • 4 semanas depois ...
Postado

eu faço dessa forma

if RDINHEIRO.Value >= Total.ICMSTot.vNF THEN
      begin
      with pag.Add do //PAGAMENTOS apenas para NFC-e
       begin
           tPag := fpDinheiro;
           vPag := RoundTo(Total.ICMSTot.vNF,-2);
          end;
      END;

      if RDINHEIRO.Value < Total.ICMSTot.vNF then
          BEGIN
          if rdinheiro.Value >0 then
           begin
            with pag.Add do
            begin
              tpag:=fpDinheiro;
              vpag:=RoundTo(rdinheiro.Value,-2);
            end;
          END;
          END;

            // Crediario da loja
        if RCREDIARIO.Value >0 THEN
        begin
       with pag.Add do //PAGAMENTOS apenas para NFC-e
       begin
           tpag:=fpCreditoLoja;
           vPag:=RoundTo(Total.ICMSTot.vNF - rdinheiro.value - rcartaocred.value - rcartaodeb.value - rchequeav.value,-2);
         end;
       end;


       if rcartaocred.value >0 then
       begin
           with pag.Add do
           begin
             tpag:=fpCartaoCredito;
             vpag:=RoundTo(Total.ICMSTot.vNF - rdinheiro.value - rcrediario.value - rcartaodeb.value - rchequeav.value,-2);
           end;
       end;


       if rcartaodeb.Value >0 then
       begin
           with pag.Add do
           begin
             tpag:=fpCartaoDebito;
             vpag:=RoundTo(Total.ICMSTot.vNF - rdinheiro.value - rcrediario.value - rcartaocred.value - rchequeav.value,-2);
           end;
       end;

              // meio cheque avista
       if rchequeav.Value >0 then
       begin   //4
       with pag.Add do //PAGAMENTOS apenas para NFC-e
       begin
           tpag:=fpCheque;
           vPag:=RoundTo(Total.ICMSTot.vNF - rdinheiro.value - rcrediario.value - rcartaodeb.value - rcartaocred.Value,-2);
         end;
         end;

  • Este tópico foi criado há 2537 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.