Consultores Victor H. Gonzales - Panda Postado 26 Novembro Consultores Postado 26 Novembro 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!!! Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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"
HelioNeto Postado 26 Novembro Autor Postado 26 Novembro 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: mais ainda estou tento o Retorno 500: Ocorre nessa função: Esse erro: Será que estou preenchendo algo errado no Demo ACBrBoleto?
Consultores Victor H. Gonzales - Panda Postado 26 Novembro Consultores Postado 26 Novembro 4 minutos atrás, HelioNeto disse: Baixei o arquivo, fiz os Testes, de fato está pegando UTC agora: mais ainda estou tento o Retorno 500: Ocorre nessa função: Esse erro: Será que estou preenchendo algo errado no Demo ACBrBoleto? voce está passando a Key e usecertificatehttp false? Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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"
HelioNeto Postado 26 Novembro Autor Postado 26 Novembro (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 26 Novembro por HelioNeto
Consultores Victor H. Gonzales - Panda Postado 26 Novembro Consultores Postado 26 Novembro 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. Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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"
Jhonlenon Ribeiro Postado 26 Novembro Postado 26 Novembro 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 Victor H. Gonzales - Panda Postado 26 Novembro Consultores Postado 26 Novembro 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 : Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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"
Jhonlenon Ribeiro Postado 26 Novembro Postado 26 Novembro (editado) @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. Editado 26 Novembro por Jhonlenon Ribeiro
Consultores Victor H. Gonzales - Panda Postado 26 Novembro Consultores Postado 26 Novembro 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. LURL em produção está 1.2? Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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 Victor H. Gonzales - Panda Postado 26 Novembro Consultores Postado 26 Novembro 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. vou verificar Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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 Victor H. Gonzales - Panda Postado 26 Novembro Consultores Postado 26 Novembro 1 hora atrás, Victor H. Gonzales - Panda disse: LURL em produção está 1.2? 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. está no SVN uma alteração, verifica agora a composição da URL e AUD por favor Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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"
Jhonlenon Ribeiro Postado 26 Novembro Postado 26 Novembro (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 26 Novembro por Jhonlenon Ribeiro
Jhonlenon Ribeiro Postado 26 Novembro Postado 26 Novembro Retorna o status 200 OK mais no retorno vem um erro....testei em homologação e produção e o erro é o mesmo...
hugoleite22 Postado 27 Novembro Postado 27 Novembro 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... Mesmo erro por aqui. Mandei ao suporte do Bradesco para ver o que respodem.
Consultores Victor H. Gonzales - Panda Postado 27 Novembro Consultores Postado 27 Novembro 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. a implementação seguiu a definição do manual, onde diz os requisitos da versão 1.1 e 1.2 Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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"
Jhonlenon Ribeiro Postado 27 Novembro Postado 27 Novembro (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 27 Novembro por Jhonlenon Ribeiro erro no texto
Consultores Victor H. Gonzales - Panda Postado 27 Novembro Consultores Postado 27 Novembro 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 Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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"
Jhonlenon Ribeiro Postado 27 Novembro Postado 27 Novembro 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 Victor H. Gonzales - Panda Postado 27 Novembro Consultores Postado 27 Novembro 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 ? Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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"
Jhonlenon Ribeiro Postado 27 Novembro Postado 27 Novembro @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.
Jhonlenon Ribeiro Postado 27 Novembro Postado 27 Novembro 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.
Consultores Victor H. Gonzales - Panda Postado 27 Novembro Consultores Postado 27 Novembro 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. ACBr.Auth.JWT.pasACBrBoletoW_Bradesco.pas fiz as mudanças que você passou, veja se é isso Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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"
Jhonlenon Ribeiro Postado 28 Novembro Postado 28 Novembro @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.
Consultores Victor H. Gonzales - Panda Postado 28 Novembro Consultores Postado 28 Novembro 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. 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? https://www.utctime.net/z-time-now Victor H Gonzales - Pandaaa Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (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"
Jhonlenon Ribeiro Postado 28 Novembro Postado 28 Novembro 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? 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.
Recommended Posts