Ir para conteúdo
  • Cadastre-se

dev botao

Boleto Santander API valor desconto e data da baixa não registra


Val Ramos
Ver Solução Respondido por Jhonlenon Ribeiro,

Recommended Posts

Esta sendo gerado:

....,"discount":{"type":"VALOR_DATA_FIXA","value":"1.20","limitDate":"2024-04-10","discountOne":{"type":"VALOR_DATA_FIXA","value":"1.20","limitDate":"2024-04-10"}},.....

Esses campos em Negrito estão a mais dentro do arquivo de LOG

E o layout, conforme manual é:

...,"discount":{"type":"VALOR_DATA_FIXA","discountOne":{"value":"1.20","limitDate":"2024-04-10"}} no manual está dessa forma quando passa desconto.

 

Editado por Val Ramos
Link para o comentário
Compartilhar em outros sites

Também enfrento o mesmo problema reportado pelo Val Ramos,

Alimento o componente com os dados:
DataDocumento=18/11/23
Vencimento=10/12/23
ValorDocumento=12,00
TipoDesconto=1
DataDesconto=10/12/23
ValorDesconto=1,20
CodigoMora=1
ValorMoraJuros=0,02

E retorna a rejeição:
JSON={"_errorCode":400,"_message":"Validation error","_details":"Requisi\u00c3\u00a7\u00c3\u00a3o inv\u00c3\u00a1lida.","_timestamp":"2023-11-18T09:42:42.948771","_traceId":"f3b73d33-cec9-4a4c-afb8-b126a5519eb5","_errors":[{"_code":"ER0302","_message":"Requisi\u00c3\u00a7\u00c3\u00a3o enviada com conte\u00c3\u00bado inv\u00c3\u00a1lido."}]}
MsgRetorno=Validation error

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois ...

Boa tarde...eu alterei essa procedure BoletoW_Santander_API.GerarDesconto no desconto1

onde era  if DataDesconto > 0 then
               begin
              //----------------------
              end;

ficou    if ValorDesconto > 0 then
               begin
              //----------------------
              end;

Está gerando o Desconto1 mais Data Limite fica errado mesmo alimentando a variavel DataDesconto certa....

"discount": {
    "type": "VALOR_DATA_FIXA",
    "discountOne": {
      "value": "1.15",
      "limitDate": "1899-12-30"
    },
    "discountTwo": {
      "value": "",
      "limitDate": ""
    },
    "discountThree": {
      "value": "",
      "limitDate": ""
    }
  },

Agora se usar o Desconto2 ai fica certo...

  "discount": {
    "type": "",
    "discountOne": {
      "value": "",
      "limitDate": ""
    },
    "discountTwo": {
      "value": "1.10",
      "limitDate": "2024-01-05"
    },
    "discountThree": {
      "value": "",
      "limitDate": ""
    }
  },

Link para o comentário
Compartilhar em outros sites

Eu alterei a unit ACBrBoletoW_Santander_API na BoletoW_Santander_API.GerarDesconto agora está gerando o desconto1 

só que na hora de gerar o boleto ao invés de alimentar a DataDesconto eu alimento DataDesconto2

"discount": {
    "type": "VALOR_DATA_FIXA",
    "discountOne": {
      "value": "1.15",
      "limitDate": "2024-01-05"
    },
    "discountTwo": {
      "value": "",
      "limitDate": ""
    },
    "discountThree": {
      "value": "",
      "limitDate": ""
    }
  },

Eu vou anexar um print onde alterei e também vou anexar a unit ACBrBoletoW_Santander_API...

01.png

ACBrBoletoW_Santander_API.pas

Link para o comentário
Compartilhar em outros sites

  • Administradores

Obrigado pela contribuição, em breve será validada para possível inclusão ao svn

TK-4924

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

Bom dia, Detectei uma divergência hora de registrar o boleto via API no Santander em Homologação e Produção. Em Homologação na parte de desconto está gerando com um erro na DataDesconto conforme o @Jhonlenon Ribeiro já comentou aqui inclusive enviou a Unit, Só que quando passa em produção está apresentando um erro.

Na image1 é o que o banco espera, na image2 é como está passando em produção.

quando não passa desconto o banco registra em produção, mas com desconto da erro, pois o JSON está indo de forma incorreta.

 

 

image1.png

image2.png

Link para o comentário
Compartilhar em outros sites

  • Consultores
20 minutos atrás, Val Ramos disse:

quando não passa desconto o banco registra em produção, mas com desconto da erro, pois o JSON está indo de forma incorreta.

Ja existe uma tk para análise em nossa fila,mas de desejar contribuir com a comunidade e realizar os ajustes necessários, só anexar a unit aqui para nós.

Consultor SAC ACBr

Daniel de Morais (Infocotidiano)
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Link para o comentário
Compartilhar em outros sites

Boa tarde.....fiz uma correção na unit ACBrBoletoW_Santander_API do Santander na parte de desconto...alterei a BoletoW_Santander_API.GerarDesconto; na primeira alteração que fiz tava gerando boleto pix com desconto apenas em homologação, quando gerava em produção dava erro, porque o json do desconto estava gerando errado como relatou o @Val Ramos...agora testei em homologação e produção e está gerando o desconto correto. A DataDesconto está OK também..

 if ATitulo.DataDesconto > 0 then
 JsonDescontoAux.Add('limitDate').Value.AsString := FormatDateTime('yyyy-mm-dd', ATitulo.DataDesconto)
  else
 JsonDescontoAux.Add('limitDate').Value.AsString := FormatDateTime('yyyy-mm-dd', ATitulo.DataDesconto2);

Vou anexar a unit ACBrBoletoW_Santander_API para ser analisada, caso esteja tudo OK...subir para o svan da ACBr

ACBrBoletoW_Santander_API.pas

Editado por Jhonlenon Ribeiro
anexar unit
  • Curtir 2
Link para o comentário
Compartilhar em outros sites

  • Consultores
2 minutos atrás, Jhonlenon Ribeiro disse:

Vou anexar a unit ACBrBoletoW_Santander_API para ser analisada, caso esteja tudo OK...subir para o svan da ACBr

Faltou o anexo.
Na oportunidade qual endpoint vc está utilizando para testes em homologação?
Pergunto pq temos relatos de usuarios usando e outros open-h
Sandbox: https://trust-sandbox.api.santander.com.br/collection_bill_management/v2
Open-h: https://trust-open-h.api.santander.com.br/collection_bill_management/v2

Consultor SAC ACBr

Daniel de Morais (Infocotidiano)
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Link para o comentário
Compartilhar em outros sites

@Jhonlenon Ribeiro Ficou 100% já enviei e paguei com QRCode do boleto e com Desconto. Valeu brother. 

23 minutos atrás, Daniel InfoCotidiano disse:

Faltou o anexo.
Na oportunidade qual endpoint vc está utilizando para testes em homologação?
Pergunto pq temos relatos de usuarios usando e outros open-h
Sandbox: https://trust-sandbox.api.santander.com.br/collection_bill_management/v2
Open-h: https://trust-open-h.api.santander.com.br/collection_bill_management/v2

O endpoint utilizado foi o de produção e registrou 100%, ja registrei em produção mesmo.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Daniel InfoCotidiano Boa tarde, os end point usado foi esses mesmo...

Sandbox: https://trust-sandbox.api.santander.com.br/collection_bill_management/v2
Open-h: https://trust-open-h.api.santander.com.br/collection_bill_management/v2

Nessa unit só mexi na procedure BoletoW_Santander_API.GerarDesconto;

ACBrBoletoW_Santander_API.pas

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Consultores
4 minutos atrás, Jhonlenon Ribeiro disse:

Boa tarde, os end point usado foi esses mesmo...

Boa tarde !
Perguntei pq conforme mencionado acima, temos um usuario com credenciais de homologação que não acessa sandbox e sim a homologacao open-h;
nao esta no svn por ser um caso aparentemente isolado. por isso a pergunta de qual vc utiliza. mas blz ja entendi q ambos tanto vc qto o @Val Ramos estão em sandbox
Obr
 

image.png

Consultor SAC ACBr

Daniel de Morais (Infocotidiano)
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Link para o comentário
Compartilhar em outros sites

  • Consultores

Por favor atualize seus fontes, pelo SVN do ACBr... 

Já subimos para o nosso repositório de fontes, modificações que podem corrigir algum dos itens referentes a esse tópico...

Por favor atualize seus fontes, faça testes, e se possível comente em uma nova resposta, se o problema foi resolvido...

Dúvidas, sobre o uso do SVN ?  Clique aqui e veja um vídeo

Consultor SAC ACBr

Daniel de Morais (Infocotidiano)
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.