Ir para conteúdo
  • Cadastre-se

dev botao

Boleto Bradesco Via WebService com Erro


Ver Solução Respondido por Victor H. Gonzales - Panda,

Recommended Posts

  • Consultores
Postado
11 horas atrás, hugoleite22 disse:

Ola @Victor H. Gonzales - Panda, segue em anexo a unit alterada ACBrBoletoW_Bradesco.pas , onde acrescentei também uma função para retornar a data atual UTC. Testei aqui e o retorno foi positivo, conforme log também em anexo. 

 

logWS.txt 2.58 kB · 0 downloads

ACBrBoletoW_Bradesco.pasrealizei alguns ajustes referente ao UTC!!!

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Postado
1 hora atrás, Victor H. Gonzales - Panda disse:

ACBrBoletoW_Bradesco.pasrealizei alguns ajustes referente ao UTC!!!

Baixei o arquivo, fiz os Testes, de fato está pegando UTC agora:

image.thumb.png.2b404b9049032b4ef368cbe823601283.png

mais ainda estou tento o Retorno 500:

Ocorre nessa função: 

image.thumb.png.9ee50c15dbd07d6dc22d95db4d48d95c.png

Esse erro:
 

image.thumb.png.5dae44bd646214f95669555c66e7e9f6.png

Será que estou preenchendo algo errado no Demo ACBrBoleto?

 

  • Consultores
Postado
4 minutos atrás, HelioNeto disse:

Baixei o arquivo, fiz os Testes, de fato está pegando UTC agora:

image.thumb.png.2b404b9049032b4ef368cbe823601283.png

mais ainda estou tento o Retorno 500:

Ocorre nessa função: 

image.thumb.png.9ee50c15dbd07d6dc22d95db4d48d95c.png

Esse erro:
 

image.thumb.png.5dae44bd646214f95669555c66e7e9f6.png

Será que estou preenchendo algo errado no Demo ACBrBoleto?

 

voce está passando a Key e usecertificatehttp false?

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Postado (editado)
44 minutos atrás, Victor H. Gonzales - Panda disse:

voce está passando a Key e usecertificatehttp false?

Sim, está UseCertificateHTTP = False.

Eu apaguei todos os arquivos da Pasta do Demo, baixei novamente do SVN, instalei e Agora retornou 200:

------------------------------

26/11/24 10:47:59:285 - Comando Enviar: TOAuth
26/11/24 10:47:59:285 - URL: [POST] https://proxy.api.prebanco.com.br/auth/server/v1.2/token
26/11/24 10:48:00:052 - Validade: 26/11/2024 11:48:00
26/11/24 10:48:00:052 - Comando Enviar: TBoletoW_Bradesco
26/11/24 10:48:00:052 - Comando Enviar: {"registrarTitulo":1,"codUsuario":"APISERVIC","nroCpfCnpjBenef":"99999999999962","filCpfCnpjBenef":57,......etc...}
26/11/24 10:48:00:053 - URL: [POST] https://proxy.api.prebanco.com.br/v1/boleto-hibrido/registrar-boleto
26/11/24 10:48:00:085 - Retorno Envio: TBoletoW_Bradesco
26/11/24 10:48:00:086 - Código do Envio: 200 1.1 OK

------------------------------
Mas ainda está com esse Erro:
Expected "{" but found invalid Symbol (1,2) na Analise do Retorno.

Aproveitei para testar a Consulta de Boleto, mas ainda não está implementado.

 

Editado por HelioNeto
  • Consultores
Postado
1 hora atrás, HelioNeto disse:

Sim, está UseCertificateHTTP = False.

Eu apaguei todos os arquivos da Pasta do Demo, baixei novamente do SVN, instalei e Agora retornou 200:

------------------------------

26/11/24 10:47:59:285 - Comando Enviar: TOAuth
26/11/24 10:47:59:285 - URL: [POST] https://proxy.api.prebanco.com.br/auth/server/v1.2/token
26/11/24 10:48:00:052 - Validade: 26/11/2024 11:48:00
26/11/24 10:48:00:052 - Comando Enviar: TBoletoW_Bradesco
26/11/24 10:48:00:052 - Comando Enviar: {"registrarTitulo":1,"codUsuario":"APISERVIC","nroCpfCnpjBenef":"99999999999962","filCpfCnpjBenef":57,......etc...}
26/11/24 10:48:00:053 - URL: [POST] https://proxy.api.prebanco.com.br/v1/boleto-hibrido/registrar-boleto
26/11/24 10:48:00:085 - Retorno Envio: TBoletoW_Bradesco
26/11/24 10:48:00:086 - Código do Envio: 200 1.1 OK

------------------------------
Mas ainda está com esse Erro:
Expected "{" but found invalid Symbol (1,2) na Analise do Retorno.

Aproveitei para testar a Consulta de Boleto, mas ainda não está implementado.

 

pelo Log deu código 200 na inclusão...

Expected "{" but found invalid Symbol (1,2) na Analise do Retorno. 

essa mensagem ocorre quando ?

 

A Consulta de boletos preciso olhar a documentação, me recordo de haver somente consulta em lista.

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Postado

Boa tarde.  @Victor H. Gonzales - Panda  Eu estava acompanhando o post aqui no forum e fiz um teste em produção com as untis do @hugoleite22 e deu certo para gerar o boleto.....só tenho um detalhe que precisa ser verificado

 

if ACBrBoleto.Cedente.CedenteWS.IndicadorPix = True then

https://openapi.bradesco.com.br/auth/server/v1.2/token

else

https://openapi.bradesco.com.br/auth/server/v1.1/token

Está valiando dessa forma...sendo que v1.2 só existe no ambiente de homologação....em produção é tudo v1.1 tanto no end point do token e AUD. Aqui não deu erro no fuso horário mais porque é -3 se fosse -4 daria o erro.

ArqBoletoWS.log

  • Consultores
Postado
7 minutos atrás, Jhonlenon Ribeiro disse:

Boa tarde.  @Victor H. Gonzales - Panda  Eu estava acompanhando o post aqui no forum e fiz um teste em produção com as untis do @hugoleite22 e deu certo para gerar o boleto.....só tenho um detalhe que precisa ser verificado

 

if ACBrBoleto.Cedente.CedenteWS.IndicadorPix = True then

https://openapi.bradesco.com.br/auth/server/v1.2/token

else

https://openapi.bradesco.com.br/auth/server/v1.1/token

Está valiando dessa forma...sendo que v1.2 só existe no ambiente de homologação....em produção é tudo v1.1 tanto no end point do token e AUD. Aqui não deu erro no fuso horário mais porque é -3 se fosse -4 daria o erro.

ArqBoletoWS.log 2.59 kB · 0 downloads

em ambiente de produção não deveria ocorrer o que você está dizendo, visto a validação :

image.png

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

  • Consultores
Postado
3 minutos atrás, Jhonlenon Ribeiro disse:

@Victor H. Gonzales - Panda fui debugar essa parte ai que vc falou e mesmo assim está setando a v.1.2 e não v1.1 para ambiente de produção...veja a imagem abaixo.

 

image.thumb.png.fb873b2387268fdc81b719eb92b5de06.png

LURL em produção está 1.2?

image.png

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

  • Consultores
Postado
26 minutos atrás, Jhonlenon Ribeiro disse:

@Victor H. Gonzales - Panda fui debugar essa parte ai que vc falou e mesmo assim está setando a v.1.2 e não v1.1 para ambiente de produção...veja a imagem abaixo.

 

image.thumb.png.fb873b2387268fdc81b719eb92b5de06.png

vou verificar

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

  • Consultores
Postado
1 hora atrás, Victor H. Gonzales - Panda disse:

LURL em produção está 1.2?

image.png

está no SVN uma alteração, verifica agora a composição da URL e AUD por favor

1 hora atrás, Jhonlenon Ribeiro disse:

@Victor H. Gonzales - Panda fui debugar essa parte ai que vc falou e mesmo assim está setando a v.1.2 e não v1.1 para ambiente de produção...veja a imagem abaixo.

 

image.thumb.png.fb873b2387268fdc81b719eb92b5de06.png

está no SVN uma alteração, verifica agora a composição da URL e AUD por favor

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Postado (editado)

Boa noite @Victor H. Gonzales - Panda só agora que voltei aos testes...eu fiz uma pequena alteração no seu código....porque eu acho que não seria bom usar essa validação ACBrBoleto.Cedente.CedenteWS.IndicadorPix = True

porque a API é do boleto hibrido pix...ai caso não queria o boleto hibrido é só ocultar o qrcode do pix que o boleto fica só com código de barras tradicional.

 

function TBoletoW_Bradesco.GerarTokenAutenticacao: string;
const PARAMS_OAUTH = '';
var
  LVersao, URL_AUD : String;
  LJSonObject : TACBrJSONObject;
begin
  OAuth.Payload := True;
  result:= '';
  //FUnixTime := DateTimeToUnix(Now, False);
  FUnixTime := DateTimeToUnix(ACBrUtil.DateTime.DateTimeUniversal(ACBrUtil.DateTime.GetUTCSistema,Now));

  if OAuth.Ambiente = tawsProducao then
  begin
    LVersao := '1.1';
    OAuth.URL := C_URL_OAUTH_PROD;
    URL_AUD  := Format(OAuth.URL,[LVersao]);
    OAuth.URL := Format(OAuth.URL,[LVersao]) //página 7
  end
  else
  begin
    OAuth.URL := C_URL_OAUTH_HOM;
    LVersao := '1.2';
    URL_AUD  := Format(OAuth.URL,['1.1']);
    OAuth.URL := Format(OAuth.URL,[LVersao]);
  end;
  {
  if Boleto.Configuracoes.WebService.Ambiente = tawsProducao   then
    LVersao := '1.2'
  else
    LVersao := '1.1';

  if Boleto.Configuracoes.WebService.Ambiente = tawsProducao  then
    URL_AUD  := Format(OAuth.URL,['1.1'])
  else
    URL_AUD  := Format(OAuth.URL,[LVersao]);

  if  Boleto.Configuracoes.WebService.Ambiente = tawsProducao then
    OAuth.URL := Format(OAuth.URL,['1.1']) //página 7
  else
    OAuth.URL := Format(OAuth.URL,[LVersao]);
  }

  if Assigned(OAuth) then
  begin
    OAuth.AuthorizationType := atJWT;
    OAuth.GrantType   := 'urn:ietf:params:oauth:grant-type:jwt-bearer';
    try
      LJSonObject := TACBrJSONObject.Create
                     .AddPair('aud', URL_AUD)
                     .AddPair('sub',Trim(Boleto.Cedente.CedenteWS.ClientID))
                     .AddPair('iat',FUnixTime - 3600 )
                     .AddPair('exp',FUnixTime + 3600)
                     .AddPair('jti',FUnixTime * 1000)
                     .AddPair('ver',LVersao);
      OAuth.ParamsOAuth := LJSonObject.ToJSON;
    finally
      LJSonObject.Free;
    end;

    OAuth.AddHeaderParam('Accept-Encoding', C_ACCEPT_ENCODING);
    OAuth.AddHeaderParam('Accept-Charset' , C_ACCEPT_CHARSET);
    OAuth.AddHeaderParam('Accept','*/*');
    if OAuth.GerarToken then
      result := OAuth.Token
    else
      raise EACBrBoletoWSException.Create(ClassName + Format( S_ERRO_GERAR_TOKEN_AUTENTICACAO, [OAuth.ErroComunicacao] ));
  end;
end;

 

Ai deu certo em homologação e produção....agora não estou entendo o retorno....porque retorna o status 200 mais dá um erro.

 

 

Editado por Jhonlenon Ribeiro
Postado
14 horas atrás, Jhonlenon Ribeiro disse:

Retorna o status 200 OK mais no retorno vem um erro....testei em homologação e produção e o erro é o mesmo...

 

01.png

Mesmo erro por aqui. Mandei ao suporte do Bradesco para ver o que respodem.

  • Consultores
Postado
15 horas atrás, Jhonlenon Ribeiro disse:

Boa noite @Victor H. Gonzales - Panda só agora que voltei aos testes...eu fiz uma pequena alteração no seu código....porque eu acho que não seria bom usar essa validação ACBrBoleto.Cedente.CedenteWS.IndicadorPix = True

porque a API é do boleto hibrido pix...ai caso não queria o boleto hibrido é só ocultar o qrcode do pix que o boleto fica só com código de barras tradicional.

 

function TBoletoW_Bradesco.GerarTokenAutenticacao: string;
const PARAMS_OAUTH = '';
var
  LVersao, URL_AUD : String;
  LJSonObject : TACBrJSONObject;
begin
  OAuth.Payload := True;
  result:= '';
  //FUnixTime := DateTimeToUnix(Now, False);
  FUnixTime := DateTimeToUnix(ACBrUtil.DateTime.DateTimeUniversal(ACBrUtil.DateTime.GetUTCSistema,Now));

  if OAuth.Ambiente = tawsProducao then
  begin
    LVersao := '1.1';
    OAuth.URL := C_URL_OAUTH_PROD;
    URL_AUD  := Format(OAuth.URL,[LVersao]);
    OAuth.URL := Format(OAuth.URL,[LVersao]) //página 7
  end
  else
  begin
    OAuth.URL := C_URL_OAUTH_HOM;
    LVersao := '1.2';
    URL_AUD  := Format(OAuth.URL,['1.1']);
    OAuth.URL := Format(OAuth.URL,[LVersao]);
  end;
  {
  if Boleto.Configuracoes.WebService.Ambiente = tawsProducao   then
    LVersao := '1.2'
  else
    LVersao := '1.1';

  if Boleto.Configuracoes.WebService.Ambiente = tawsProducao  then
    URL_AUD  := Format(OAuth.URL,['1.1'])
  else
    URL_AUD  := Format(OAuth.URL,[LVersao]);

  if  Boleto.Configuracoes.WebService.Ambiente = tawsProducao then
    OAuth.URL := Format(OAuth.URL,['1.1']) //página 7
  else
    OAuth.URL := Format(OAuth.URL,[LVersao]);
  }

  if Assigned(OAuth) then
  begin
    OAuth.AuthorizationType := atJWT;
    OAuth.GrantType   := 'urn:ietf:params:oauth:grant-type:jwt-bearer';
    try
      LJSonObject := TACBrJSONObject.Create
                     .AddPair('aud', URL_AUD)
                     .AddPair('sub',Trim(Boleto.Cedente.CedenteWS.ClientID))
                     .AddPair('iat',FUnixTime - 3600 )
                     .AddPair('exp',FUnixTime + 3600)
                     .AddPair('jti',FUnixTime * 1000)
                     .AddPair('ver',LVersao);
      OAuth.ParamsOAuth := LJSonObject.ToJSON;
    finally
      LJSonObject.Free;
    end;

    OAuth.AddHeaderParam('Accept-Encoding', C_ACCEPT_ENCODING);
    OAuth.AddHeaderParam('Accept-Charset' , C_ACCEPT_CHARSET);
    OAuth.AddHeaderParam('Accept','*/*');
    if OAuth.GerarToken then
      result := OAuth.Token
    else
      raise EACBrBoletoWSException.Create(ClassName + Format( S_ERRO_GERAR_TOKEN_AUTENTICACAO, [OAuth.ErroComunicacao] ));
  end;
end;

 

Ai deu certo em homologação e produção....agora não estou entendo o retorno....porque retorna o status 200 mais dá um erro.

 

 

image.png

a implementação seguiu a definição do manual, onde diz os requisitos da versão 1.1 e 1.2

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Postado (editado)

Bom dia, @Victor H. Gonzales - Panda o boleto não está sendo registrado e está retornando o status 200 OK....hoje fiz um teste no Demo que tenho do Bradesco e está funcionando 100%...vou postar o demo que tenho aqui pra ver se ajuda. Já temos varios clientes em produção usando o Bradesco mais quero contribuir pra deixar 100% no ACBrBoleto também. Alguns observação que deve ser feito no json em homologação.

1 - tem que usar o CNPJ de homologação

2 - Os dados que pode ser alterado no json é apenas Nome do cliente, data emissão, vencimento, e-mail e data do desconto.

3 - Nosso numero tem procurar um sequencial que não foi usado ainda.

4 - Precisar alterar alguns campos do json na unti ACBrBoletoW_Bradesco de acordo com json do demo.

Alguns pontos que deve ser observado.

URL Token em Homologação usa v1.2

URL AUD em    Homologação usa v1.1

Já em produção tanto URL Token e URL AUD usa v1.1

Eu infelizmente eu nunca parei pra estudar os fontes do ACBrBoleto, meu conhecimento é um pouco limitado nos fontes.

 

link do demo https://mega.nz/file/GpZS2JqC#LFbw38xCraGewB0haSIAOF-HOwvfC0ChN7ihpr90xYw

 

--------------------------------------------------------Envio do JSON do Boleto em Homologação--------------------------------------------------------------

{"ctitloCobrCdent":"99888855466","registrarTitulo":"1","codUsuario":"APISERVIC","nroCpfCnpjBenef":"68542653","filCpfCnpjBenef":"1018","digCpfCnpjBenef":"38","tipoAcesso":"2","cpssoaJuridContr":"2337627","ctpoContrNegoc":"000","nseqContrNegoc":"2337627","cidtfdProdCobr":"09","cnegocCobr":"386100000000041000","filler":"","codigoBanco":"237","eNseqContrNegoc":"2337627","tipoRegistro":"001","cprodtServcOper":"00000000","ctitloCliCdent":"999665-1-1","demisTitloCobr":"27.11.2024","dvctoTitloCobr":"22.12.2024","cidtfdTpoVcto":"0","cindcdEconmMoeda":"00006","vnmnalTitloCobr":"8000","qmoedaNegocTitlo":"0","cespceTitloCobr":"02","cindcdAceitSacdo":"N","ctpoProteTitlo":"00","ctpoPrzProte":"00","ctpoProteDecurs":"00","ctpoPrzDecurs":"00","cctrlPartcTitlo":"00811927249996650001","cformaEmisPplta":"02","cindcdPgtoParcial":"N","qtdePgtoParcial":"000","filler1":"","ptxJuroVcto":"0","vdiaJuroMora":"00000000000000012","qdiaInicJuro":"01","pmultaAplicVcto":"000000","vmultaAtrsoPgto":"100","qdiaInicMulta":"01","pdescBonifPgto01":"0","vdescBonifPgto01":"0","dlimDescBonif1":"","pdescBonifPgto02":"0","vdescBonifPgto02":"0","dlimDescBonif2":"","pdescBonifPgto03":"0","vdescBonifPgto03":"0","dlimDescBonif3":"","ctpoPrzCobr":"01","pdescBonifPgto":"0","vdescBonifPgto":"100","dlimBonifPgto":"21.12.2024","vabtmtTitloCobr":"00000000000000000","viofPgtoTitlo":"0","filler2":"","isacdoTitloCobr":"FERNANDO SOUSA FILHO","elogdrSacdoTitlo":"RUA MARABA","enroLogdrSacdo":"0","ecomplLogdrSacdo":"QD29 LT5 C2","ccepSacdoTitlo":"74988","ccomplCepSacdo":"200","ebairoLogdrSacdo":"PQ MONTREAL","imunSacdoTitlo":"APARECIDA DE GOIANIA","csglUfSacdo":"GO","indCpfCnpjSacdo":"1","nroCpfCnpjSacdo":"02117170102","renderEletrSacdo":"[email protected]","cdddFoneSacdo":"000","cfoneSacdoTitlo":"00000000","bancoDeb":"000","agenciaDeb":"00000","agenciaDebDv":"0","contaDeb":"0000000000000","bancoCentProt":"000","agenciaDvCentPr":"00000","isacdrAvalsTitlo":"","elogdrSacdrAvals":"","enroLogdrSacdr":"","ecomplLogdrSacdr":"","ccepSacdrTitlo":"00000","ccomplCepSacdr":"000","ebairoLogdrSacdr":"","imunSacdrAvals":"","csglUfSacdr":"","indCpfCnpjSacdr":"","nroCpfCnpjSacdr":"00000000000000","renderEletrSacdr":"","cdddFoneSacdr":"","cfoneSacdrTitlo":"","filler3":"","fase":"1","cindcdCobrMisto":"S","ialiasAdsaoCta":"","iconcPgtoSpi":"","caliasAdsaoCta":"","ilinkGeracQrcd":"","wqrcdPdraoMercd":"","validadeAposVencimento":"","filler4":""}

---------------------------------------------------------Retorno do JSON do Boleto em Homologação-------------------------------------------------------------

{"statusHttp":200,"cidtfdProdCobr":9,"cnegocCobr":386100000000041000,"cpssoaJuridContr":2269651,"ctpoContrNegoc":48,"nseqContrNegoc":2337686,"cprodtServcOper":1730,"ctitloCobrCdent":99888855466,"tp08Reg1":1,"agencCred10":0,"ctaCred10":0,"digCred10":"00","cip10":0,"codStatus10":1,"status10":"A VENCER/VENCIDO","cedente10":"EMPRESA PGIT NET EMPRESA","endCedente10":"R JOSE LODO NETO      52","baiCedente10":"VELOSO","cepEndCed10":6154,"cepcCedente10":10,"cidCedente10":"OSASCO","ufCedente10":"SP","razCredt10":0,"nomeSacado10":"FERNANDO SOUSA FILHO","cnpjSacado10":21171701000002,"endSacado10":"RUA MARABA","baiSacado10":"PQ MONTREAL","cidSacado10":"APARECIDA DE GOIANIA","ufSacado10":"GO","cepSacado10":74988,"cepcSacado10":"200","aceite10":"N","enderecoEma10":"[email protected]","cnpjSacador10":0,"cepSacador10":0,"cepcSacador10":0,"tp08Reg2":2,"cense10":0,"agenOper10":0,"bcoDepos10":0,"agenDepos10":0,"snumero10":"999665-1-1","dataReg10":"27112024","especDocto10":"DM","valorIof10":0,"dataEmis10":"27112024","especMoeda10":"R$","qtdeMoeda10":0,"qtdeCas10":2,"dataVencto10":"22.12.2024","descrMoeda10":"R$","valMoeda10":8000,"valAbat10":0,"diasProt10":0,"dataMulta10":"22122024","valMulta10":1.00,"qtdeCasMul10":2,"codValMul10":1,"descrMulta10":"VALOR FIXO","dataPerm10":"22122024","valPerm10":12,"qtdeCasDe110":0,"descrDesc110":"VALOR ANTECIPACAO DIA CORRIDO","qtdeCasDe210":0,"qtdeCasDe310":0,"diasMulta10":1,"diasJuros10":1,"codBarras10":"<NWnnwnNnWwnWnWnNWnwnwnNWnnnWWnnnWWnNnwWnnnWWnNNwwnwNNwnwnNNwnWnWnNwnWnWnnWnWnNwnwnWnNnWWnnnnWWnNnwnWnnWWnnnWWn>","linhaDig10":"23793.86101 99988.885549 66004.100005 9 99380000008000","despCart10":0,"bcoCentr10":0,"ageCentr10":0,"acessEsc10":0,"oriProt10":0,"ctpoVencto10":0,"codInscrProt10":0,"codDecurPrz10":0,"qtdDDecurPrz10":0,"ctpoAbat10":0,"codComisPerm10":1,"ctpoDesc110":0,"ctpoDesc210":0,"ctpoDesc310":0,"ctrlPartic10":"00811927249996650001","diasComisPerm10":1,"codComisPerm101":1,"qmoedaComisPerm":0.12,"cnpjCpfCedente10":"068542653101838","valorMoedaBol10":0,"dataVenctoBol10":"22/12/2024","dataLimitePgt10":"22/12/2024","dataImpressao10":27112024,"horaImpressao10":0,"identTitDda10":0,"exibeLinDig10":"N","permPgtoParcial":"N","qtdePgtoParcial":0,"cindcdCobrMisto":"S","ialiasAdsaoCta":"9fb698d6-b191-4cec-99a5-ae7b86818039","iconcPgtoSpi":"20241127237093861004100099888855466","ilinkGeracQrcd":"qrpix-h.bradesco.com.br/qr/v2/cobv/31abfc5d-def4-4f7e-8b8e-5ef898346e60","wqrcdPdraoMercd":"00020101021226930014BR.GOV.BCB.PIX2571qrpix-h.bradesco.com.br/qr/v2/cobv/31abfc5d-def4-4f7e-8b8e-5ef898346e60520400005303986540580.005802BR5924EMPRESA PGIT NET EMPRESA6006OSASCO62070503***6304221F","validadeAposVencimento":23,"sfase":1}
 

Editado por Jhonlenon Ribeiro
erro no texto
  • Consultores
Postado
4 minutos atrás, Jhonlenon Ribeiro disse:

Bom dia, @Victor H. Gonzales - Panda o boleto não está sendo registrado e está retornando o status 200 OK....hoje fiz um teste no Demo que tenho do Bradesco e está funcionando 100%...vou postar o demo que tenho aqui pra ver se ajuda. Já temos varios clientes em produção usando o Bradesco mais quero contribuir pra deixar 100% no ACBrBoleto também. Alguns observação que deve ser feito no json em homologação.

1 - tem que usar o CNPJ de homologação

2 - Os dados que pode ser alterado no json é apenas Nome do cliente, data emissão, vencimento, e-mail e data do desconto.

3 - Nosso numero tem procurar um sequencial que não foi usado ainda.

Alguns pontos que deve ser observado.

URL Token em Homologação usa v1.2

URL AUD em    Homologação usa v1.1

Já em produção tanto URL Token e URL AUD usa v1.1

Eu infelizmente eu nunca parei pra estudar os fontes do ACBrBoleto, meu conhecimento é um pouco limitado nos fontes.

 

link do demo https://mega.nz/file/GpZS2JqC#LFbw38xCraGewB0haSIAOF-HOwvfC0ChN7ihpr90xYw

 

--------------------------------------------------------Envio do JSON do Boleto em Homologação--------------------------------------------------------------

{"ctitloCobrCdent":"99888855466","registrarTitulo":"1","codUsuario":"APISERVIC","nroCpfCnpjBenef":"68542653","filCpfCnpjBenef":"1018","digCpfCnpjBenef":"38","tipoAcesso":"2","cpssoaJuridContr":"2337627","ctpoContrNegoc":"000","nseqContrNegoc":"2337627","cidtfdProdCobr":"09","cnegocCobr":"386100000000041000","filler":"","codigoBanco":"237","eNseqContrNegoc":"2337627","tipoRegistro":"001","cprodtServcOper":"00000000","ctitloCliCdent":"999665-1-1","demisTitloCobr":"27.11.2024","dvctoTitloCobr":"22.12.2024","cidtfdTpoVcto":"0","cindcdEconmMoeda":"00006","vnmnalTitloCobr":"8000","qmoedaNegocTitlo":"0","cespceTitloCobr":"02","cindcdAceitSacdo":"N","ctpoProteTitlo":"00","ctpoPrzProte":"00","ctpoProteDecurs":"00","ctpoPrzDecurs":"00","cctrlPartcTitlo":"00811927249996650001","cformaEmisPplta":"02","cindcdPgtoParcial":"N","qtdePgtoParcial":"000","filler1":"","ptxJuroVcto":"0","vdiaJuroMora":"00000000000000012","qdiaInicJuro":"01","pmultaAplicVcto":"000000","vmultaAtrsoPgto":"100","qdiaInicMulta":"01","pdescBonifPgto01":"0","vdescBonifPgto01":"0","dlimDescBonif1":"","pdescBonifPgto02":"0","vdescBonifPgto02":"0","dlimDescBonif2":"","pdescBonifPgto03":"0","vdescBonifPgto03":"0","dlimDescBonif3":"","ctpoPrzCobr":"01","pdescBonifPgto":"0","vdescBonifPgto":"100","dlimBonifPgto":"21.12.2024","vabtmtTitloCobr":"00000000000000000","viofPgtoTitlo":"0","filler2":"","isacdoTitloCobr":"FERNANDO SOUSA FILHO","elogdrSacdoTitlo":"RUA MARABA","enroLogdrSacdo":"0","ecomplLogdrSacdo":"QD29 LT5 C2","ccepSacdoTitlo":"74988","ccomplCepSacdo":"200","ebairoLogdrSacdo":"PQ MONTREAL","imunSacdoTitlo":"APARECIDA DE GOIANIA","csglUfSacdo":"GO","indCpfCnpjSacdo":"1","nroCpfCnpjSacdo":"02117170102","renderEletrSacdo":"[email protected]","cdddFoneSacdo":"000","cfoneSacdoTitlo":"00000000","bancoDeb":"000","agenciaDeb":"00000","agenciaDebDv":"0","contaDeb":"0000000000000","bancoCentProt":"000","agenciaDvCentPr":"00000","isacdrAvalsTitlo":"","elogdrSacdrAvals":"","enroLogdrSacdr":"","ecomplLogdrSacdr":"","ccepSacdrTitlo":"00000","ccomplCepSacdr":"000","ebairoLogdrSacdr":"","imunSacdrAvals":"","csglUfSacdr":"","indCpfCnpjSacdr":"","nroCpfCnpjSacdr":"00000000000000","renderEletrSacdr":"","cdddFoneSacdr":"","cfoneSacdrTitlo":"","filler3":"","fase":"1","cindcdCobrMisto":"S","ialiasAdsaoCta":"","iconcPgtoSpi":"","caliasAdsaoCta":"","ilinkGeracQrcd":"","wqrcdPdraoMercd":"","validadeAposVencimento":"","filler4":""}

---------------------------------------------------------Retorno do JSON do Boleto em Homologação-------------------------------------------------------------

{"statusHttp":200,"cidtfdProdCobr":9,"cnegocCobr":386100000000041000,"cpssoaJuridContr":2269651,"ctpoContrNegoc":48,"nseqContrNegoc":2337686,"cprodtServcOper":1730,"ctitloCobrCdent":99888855466,"tp08Reg1":1,"agencCred10":0,"ctaCred10":0,"digCred10":"00","cip10":0,"codStatus10":1,"status10":"A VENCER/VENCIDO","cedente10":"EMPRESA PGIT NET EMPRESA","endCedente10":"R JOSE LODO NETO      52","baiCedente10":"VELOSO","cepEndCed10":6154,"cepcCedente10":10,"cidCedente10":"OSASCO","ufCedente10":"SP","razCredt10":0,"nomeSacado10":"FERNANDO SOUSA FILHO","cnpjSacado10":21171701000002,"endSacado10":"RUA MARABA","baiSacado10":"PQ MONTREAL","cidSacado10":"APARECIDA DE GOIANIA","ufSacado10":"GO","cepSacado10":74988,"cepcSacado10":"200","aceite10":"N","enderecoEma10":"[email protected]","cnpjSacador10":0,"cepSacador10":0,"cepcSacador10":0,"tp08Reg2":2,"cense10":0,"agenOper10":0,"bcoDepos10":0,"agenDepos10":0,"snumero10":"999665-1-1","dataReg10":"27112024","especDocto10":"DM","valorIof10":0,"dataEmis10":"27112024","especMoeda10":"R$","qtdeMoeda10":0,"qtdeCas10":2,"dataVencto10":"22.12.2024","descrMoeda10":"R$","valMoeda10":8000,"valAbat10":0,"diasProt10":0,"dataMulta10":"22122024","valMulta10":1.00,"qtdeCasMul10":2,"codValMul10":1,"descrMulta10":"VALOR FIXO","dataPerm10":"22122024","valPerm10":12,"qtdeCasDe110":0,"descrDesc110":"VALOR ANTECIPACAO DIA CORRIDO","qtdeCasDe210":0,"qtdeCasDe310":0,"diasMulta10":1,"diasJuros10":1,"codBarras10":"<NWnnwnNnWwnWnWnNWnwnwnNWnnnWWnnnWWnNnwWnnnWWnNNwwnwNNwnwnNNwnWnWnNwnWnWnnWnWnNwnwnWnNnWWnnnnWWnNnwnWnnWWnnnWWn>","linhaDig10":"23793.86101 99988.885549 66004.100005 9 99380000008000","despCart10":0,"bcoCentr10":0,"ageCentr10":0,"acessEsc10":0,"oriProt10":0,"ctpoVencto10":0,"codInscrProt10":0,"codDecurPrz10":0,"qtdDDecurPrz10":0,"ctpoAbat10":0,"codComisPerm10":1,"ctpoDesc110":0,"ctpoDesc210":0,"ctpoDesc310":0,"ctrlPartic10":"00811927249996650001","diasComisPerm10":1,"codComisPerm101":1,"qmoedaComisPerm":0.12,"cnpjCpfCedente10":"068542653101838","valorMoedaBol10":0,"dataVenctoBol10":"22/12/2024","dataLimitePgt10":"22/12/2024","dataImpressao10":27112024,"horaImpressao10":0,"identTitDda10":0,"exibeLinDig10":"N","permPgtoParcial":"N","qtdePgtoParcial":0,"cindcdCobrMisto":"S","ialiasAdsaoCta":"9fb698d6-b191-4cec-99a5-ae7b86818039","iconcPgtoSpi":"20241127237093861004100099888855466","ilinkGeracQrcd":"qrpix-h.bradesco.com.br/qr/v2/cobv/31abfc5d-def4-4f7e-8b8e-5ef898346e60","wqrcdPdraoMercd":"00020101021226930014BR.GOV.BCB.PIX2571qrpix-h.bradesco.com.br/qr/v2/cobv/31abfc5d-def4-4f7e-8b8e-5ef898346e60520400005303986540580.005802BR5924EMPRESA PGIT NET EMPRESA6006OSASCO62070503***6304221F","validadeAposVencimento":23,"sfase":1}
 

Bom dia,

isso que você está informando diverge da documentação, em homologação usa-se 1.1 ou 1.2, em produção usa-se 1.1;

referente ao CNPJ isso é parametrizável no componente

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Postado
Agora, Victor H. Gonzales - Panda disse:

Bom dia,

isso que você está informando diverge da documentação, em homologação usa-se 1.1 ou 1.2, em produção usa-se 1.1;

referente ao CNPJ isso é parametrizável no componente

Infelizmente tem muito erro na documentação e não são poucas....faz um teste com esse demo que disponibilizei....

  • Consultores
Postado
3 minutos atrás, Jhonlenon Ribeiro disse:

Infelizmente tem muito erro na documentação e não são poucas....faz um teste com esse demo que disponibilizei....

eu preciso me basear em documentação oficial do banco ou comunicado deles.

voce tem uma documentação atualizada deles ?

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Postado

@Victor H. Gonzales - Panda A ducmentação que tenho aqui é a msema que vc tem ai. No inicio fiquei confuso com esse texto do manual.

Lembrando que, algumas APIs, como a de Cobrança Híbrida, requerem que o token seja gerado na versão 1.2 e não na 1.1, caso você tenha dúvidas sobre em qual versão o seu token deve ser gerado, favor entrar em contato com: [email protected]. IMPORTANTE: Não existe variação de versão do endpoint de token em ambiente de produção. A orientação acima é apenas para o ambiente de Homologação (testes). Em produção, o endpoint será sempre /auth/server/v1.1/token , mudando apenas a URL base.

Observe apenas o o final que vc vai entender quando eles fala . Em produção, o endpoint será sempre /auth/server/v1.1/token , mudando apenas a URL base. Ou seja na URL AUD em homologação é v1.1 em produção também vai ficar v.1.1

É isso que estou tentando lhe explicar. 

 

  • Consultores
Postado
2 horas atrás, Jhonlenon Ribeiro disse:

Eu estava olhando esse trecho do código e fiz umas alterações que estava faltando...mais falta assinar essa string vStrConteudo  e converter em base64 e manter em linhda
se quebrar a linha não vai dá certo.

 

01.png

ACBr.Auth.JWT.pasACBrBoletoW_Bradesco.pas

 

fiz as mudanças que você passou, veja se é isso

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Postado

@Victor H. Gonzales - Panda Fiz uns testes agora a noite e o erro é na assinatura...embora no retorno não mostra...ai percebi que o token está indo vazio no X-Brad-Signature e o X-Brad-Timestamp está vindo com Z no final e formato está diferente...como mostra o print em anexo. se puder alterar esses 2 detalhe pra mim testar novamente...estou testando só em homologação ai depois agente ver em produção.

01.png

02.png

  • Consultores
Postado
9 horas atrás, Jhonlenon Ribeiro disse:

@Victor H. Gonzales - Panda Fiz uns testes agora a noite e o erro é na assinatura...embora no retorno não mostra...ai percebi que o token está indo vazio no X-Brad-Signature e o X-Brad-Timestamp está vindo com Z no final e formato está diferente...como mostra o print em anexo. se puder alterar esses 2 detalhe pra mim testar novamente...estou testando só em homologação ai depois agente ver em produção.

01.png

02.png

Z é fuso horario -0000 ou Zulu ou GMT.

em teoria é um fuso correto!

é para aplicar o fuso corrente no horario que no token foi UTC? 

image.png

https://www.utctime.net/z-time-now

 

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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 !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Postado
21 minutos atrás, Victor H. Gonzales - Panda disse:

Z é fuso horario -0000 ou Zulu ou GMT.

em teoria é um fuso correto!

é para aplicar o fuso corrente no horario que no token foi UTC? 

image.png

https://www.utctime.net/z-time-now

 

Nesse formato ai dá invalid signature....um coisa que eu não estou conseguindo entender é que ao tentar enviar o boleto retorna status 200 OK com um erro que não é o retorno real...salvei o token e headers gerado pelo ACBr e fui testar no postman ai recebo o erro correto stus 400.

Parece que tem alguma coisa errado no envio porque tinha que retornar com erro 400 com mostra o texto abaixo...

{
    "code": "104",
    "message": "invalid signature",
    "details": "null"
}

O processo de geração do token está correto...cheguei a testar o token gerado pela ACBr e está OK. 

 
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.

The popup will be closed in 10 segundos...