Allan Hilário
Membros-
Total de ítens
51 -
Registro em
-
Última visita
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Tudo que Allan Hilário postou
-
Identifiquei o motivo de estar retornando "message" : "No message body" quando tenta enviar a baixa imediata pelo componente. Na documentação no site do itaú está com body {}, assim como no exemplo no postman. Já no componente a procedure RequisicaoBaixa da unit ACBrBoletoW_Itau_API está sem implementar, alterei essa unit para gerar somente {} e efetuou a baixa corretamente. Segue o código da procedure: procedure TBoletoW_Itau_API.RequisicaoBaixa; var LJson: TACBrJSONObject; begin if Assigned(ATitulo) then begin LJson := TACBrJSONObject.Create; try FPDadosMsg := LJson.ToJSON; finally LJson.Free; end; end; end; Segue a unit para análise e disponibilizar no SVN. ACBrBoletoW_Itau_API.pas
-
está conseguindo realizar a baixa no postman sim, só q pelo componente esta com o retorno: HTTPCode=500 Result={ "message" : "No message body" }
-
Nas duas aplicações não esta sendo passado conteúdo no Body.
-
Bom dia. Ainda está com esse problema? Aqui estou recebendo essa mesma mensagem na baixa imediata, fazendo pelo postman ele consegue realizar. Já na alteração de vencimento está funcionando perfeitamente usando os mesmos dados que estou enviando para realizar a baixa.
-
postei antes, vou olhar lá obrigado.
-
Bom dia. Atualizei o acbr e vi q teve alteração para controlar o nível do log, só q agora o retorno do json só retorna na opção logParanoico, sendo q nesse modo retorna o header e body da resposta, deixando o log muito grande. Hj existe 5 opções, sendo q o logSimples, logNormal e logCompleto tem o mesmo retorno. É possivel alterar em um desses três para ter o retorno do json da resposta sem retornar o header e body igual era antes dessa alteração do nível do log?
-
Esse erro costuma retornar quando tenta usar PIX em homologação, entrei em contato com suporte do itau e me retornaram que ainda não esta liberado.
-
Tive retorno sobre essa situação do erro usando pix em homologação. Payload bolecode.docx
-
Bom dia. Realizando testes em homologação estou conseguindo fazer o registro e alteração do boleto, só que ao tentar efetuar a baixa estou recebendo o resultcode 400. Observei no log que quando manda efetuar a baixa o json de envio esta ficando em branco, segue em anexo: 19/02/24 11:06:06:961 - Comando Enviar: 19/02/24 11:06:07:575 - Retorno Envio: HTTPCode=400 Result={"error":{"codigo":"400","mensagem":"Erro na validação de Campos.","campos":[{"campo":"idBoleto","mensagem":"Id Boleto inválido","valor":"745600088603000825775"}]}} Gostaria de saber se alguem já conseguiu realizar a baixa.
-
Fiz testes em homologação e corrigiu o problema de não retornar as informações dos campos no componente.
-
Delphi XE6
-
Mesmo atualizando e reinstalando o ACBR manteve a situação de não preencher as informações nos campos do componente.
-
Usando o pix tb tive o msm retorno, enviei um email para ver se eles retornam com alguma posição. Vou tentar atualizar os fontes novamente e reinstalar o ACBR para ver se resolve essa situação utilizando sem o pix.
-
Boa Tarde. Atualizei os fontes do ACBR hj e estou desenvolvendo o registro do boleto do Itaú utilizando versaoDF := 'V2' no ambiente sandbox, primeiro estou fazendo o registro sem utilizar o pix. Estou recebendo o retorno do json corretamente olhando pelo log do componente, segue o retorno: Retorno Envio: {"codigo_canal_operacao":"BKL","codigo_operador":"889911348","etapa_processo_boleto":"efetivacao","beneficiario":{"id_beneficiario":"150000052061","nome_cobranca":"MUNDI EMPRRENDIMENTOS E L ME","tipo_pessoa":{"codigo_tipo_pessoa":"J","numero_cadastro_nacional_pessoa_juridica":"08867659000151"},"endereco":{"nome_logradouro":"R PORTUGAL, 13, EDF T NOVO 1 AN","nome_bairro":"COMERCIO","nome_cidade":"SALVADOR","sigla_UF":"BA","numero_CEP":"40015000"}},"dado_boleto":{"descricao_instrumento_cobranca":"boleto","forma_envio":"impressao","tipo_boleto":"a vista","pagador":{"pessoa":{"nome_pessoa":"Nubibat","tipo_pessoa":{"codigo_tipo_pessoa":"F","numero_cadastro_pessoa_fisica":"05201005225"}},"endereco":{"nome_logradouro":"Av Hilario Pereira de Souza, 492","nome_bairro":" ","nome_cidade":"Osasco","sigla_UF":"SP","numero_CEP":"04131020"},"pagador_eletronico_DDA":false,"praca_protesto":true},"sacador_avalista":{"pessoa":{"nome_pessoa":"Sacador Teste","nome_fantasia":"Empresa A","tipo_pessoa":{"codigo_tipo_pessoa":"F","numero_cadastro_pessoa_fisica":"38365972840"}},"endereco":{"nome_logradouro":"Av do Estado, 55343","nome_bairro":"Ipiranga","nome_cidade":"São Paulo","sigla_UF":"SP","numero_CEP":"06120100"}},"codigo_carteira":"157","codigo_tipo_vencimento":3,"valor_total_titulo":"00000000000010001","dados_individuais_boleto":[{"id_boleto_individual":"8835353e-ecb5-43f8-adeb-4cbf796f6be4","numero_nosso_numero":"00001056","dac_titulo":"8","data_vencimento":"2021-06-01","valor_titulo":"00000000000010001","codigo_barras":"34192863800000100011570000105681500052061000","numero_linha_digitavel":"34191570070010568150600520610007286380000010001","data_limite_pagamento":"2031-06-01","lista_mensagens_cobranca":[]}],"codigo_especie":"01","data_emissao":"2021-05-25","pagamento_parcial":false,"quantidade_maximo_parcial":"0","lista_mensagem_cobranca":[{"mensagem":"jaime3 desconto fixo percentual"},{"mensagem":"teste2"}],"recebimento_divergente":{"codigo_tipo_autorizacao":"03","codigo_tipo_recebimento":"P","percentual_minimo":"00000000000000000","percentual_maximo":"00000000000000000"},"desconto_expresso":true}} Só que não esta retornando os dados para o componente, não retorna rejeição mas os campos estão ficando todos vazios, segue em anexo o print do debug.
-
Sobre esse problema eu alterei a procedure GerarInstrucao para gerar as mensagens conforme a documentação do sicoob. Se for possível subir para o svn. procedure TBoletoW_Bancoob.GerarInstrucao(AJson: TJsonObject); var JsonMsg : TJsonObject; JsonPairMsg, JsonPairMsgs: TJSONPair; JsonMsgs : TJsonArray; begin if Assigned(aTitulo) then begin if Assigned(AJson) then begin if ATitulo.Instrucao1 <> '' then begin JsonMsg := TJsonObject.Create; try JsonMsg.Add('tipoInstrucao').Value.AsInteger := 1; JsonMsgs := TJsonArray.Create; JsonPairMsgs := TJsonPair.Create(JsonMsg, 'mensagens'); try JsonMsgs.Add.AsString := ATitulo.Instrucao1; if ATitulo.Instrucao2 <> '' then JsonMsgs.Add.AsString := ATitulo.Instrucao2; if ATitulo.Instrucao3 <> '' then JsonMsgs.Add.AsString := ATitulo.Instrucao3; JsonPairMsgs.Value.AsArray := JsonMsgs; JsonMsg.Add('mensagens').Assign(JsonPairMsgs); finally JsonPairMsgs.Free; JsonMsgs.Free; end; JsonPairMsg := TJSONPair.Create(AJson, 'mensagensInstrucao'); try JsonPairMsg.Value.AsObject := JsonMsg; AJson.Add('mensagensInstrucao').Assign(JsonPairMsg); finally JsonPairMsg.Free; end; finally JsonMsg.Free; end; end; end; end; end;
-
Boleto Sicoob via WebService - LerRetorno
Allan Hilário replied to mlgoncalves's tópico in ACBrBoleto
Olá mlgoncalves, você esta conseguindo registrar o boleto quando é informado as instruções de pagamento? -
Erro boleto sicoob via webservice ao informar instruções de pagamento
um tópico no fórum postou Allan Hilário ACBrBoleto
Ao informar as instruções de pagamentos o componente está gerando json inválido, gerando erro na integração. 05/05/23 10:52:47:622 - Autenticando Token... 05/05/23 10:52:47:927 - Comando Enviar: [{"numeroContrato":878022,"modalidade":1,"numeroContaCorrente":509213,"especieDocumento":"DM","dataEmissao":"2023-05-05T00:00:00-03:00","nossoNumero":"02176714","seuNumero":"02176714","identificacaoBoletoEmpresa":"02176714","identificacaoEmissaoBoleto":1,"identificacaoDistribuicaoBoleto":1,"valor":116.03,"dataVencimento":"2023-05-01T00:00:00-03:00","numeroParcela":1,"aceite":true,"tipoDesconto":0,"tipoJurosMora":0,"dataJurosMora":"1899-12-30T00:00:00-03:00","valorJurosMora":0.15,"tipoMulta":0,"valorMulta":0,"pagador":{"numeroCpfCnpj":"11041534000182","nome":"(175) - A C BORGES BERRIEL COMERCIO DE DOCES","endereco":"AV JOSE CARLOS PEREIRA PINTO, SN ","bairro":"GUARUS (PQ PRESIDENTE VARGAS)","cidade":"Campos dos Goytacazes","cep":"28100000","uf":"RJ"},"mensagensInstrucao":{"tipoInstrucao":1,"mensagens":"Instrucao 1","mensagens":"Instrucao 2","mensagens":"Instrucao 3"},"gerarPdf":false,"codigoCadastrarPIX":1}] 05/05/23 10:52:48:270 - Retorno Envio: HTTPCode=406 Result={"mensagens":[{"mensagem":"Can not deserialize instance of java.lang.String[] out of VALUE_STRING token\n at [Source: org.apache.cxf.transport.http.AbstractHTTPDestination$1@a3e6c22c; line: 1, column: 813] (through reference chain: java.util.ArrayList[0]->br.com.sicoob.sisbr.cobrancabancaria.api.rest.dto.BoletoRestDto[\"mensagensInstrucao\"]->br.com.sicoob.sisbr.cobrancabancaria.api.rest.dto.MensagensInstrucao[\"mensagens\"])","codigo":"0004"}]} -
Sobre essa situação vi que esta com diferença na geração do json no campo mensagensInstrucao do que esta na documentação da api do sicoob.
- 55 replies
-
Boa tarde. Estou fazendo a integração e consegui registrar quando não informo as instruções de pagamento, agora quando é informado ele gera essa situação: 26/04/23 16:48:14:256 - Autenticando Token... 26/04/23 16:48:14:852 - Comando Enviar: [{"numeroContrato":878022,"modalidade":1,"numeroContaCorrente":509213,"especieDocumento":"DM","dataEmissao":"2023-04-26T03:00:00.000Z","nossoNumero":"02176714","seuNumero":"02176714","identificacaoBoletoEmpresa":"02176714","identificacaoEmissaoBoleto":1,"identificacaoDistribuicaoBoleto":1,"valor":116.03,"dataVencimento":"2023-05-01T03:00:00.000Z","numeroParcela":1,"aceite":true,"tipoDesconto":0,"tipoJurosMora":0,"dataJurosMora":"2023-04-26T19:48:12.026Z","valorJurosMora":0.15,"tipoMulta":0,"valorMulta":0,"pagador":{"numeroCpfCnpj":"11041534000182","nome":"(175) - A C BORGES BERRIEL","endereco":"AV JOSE, SN ","bairro":"GUARUS (PQ PRESIDENTE VARGAS)","cidade":"Campos dos Goytacazes","cep":"28100000","uf":"RJ"},"mensagensInstrucao":{"tipoInstrucao":1,"mensagens":"instrucoes"},"gerarPdf":false,"codigoCadastrarPIX":1}] 26/04/23 16:48:15:413 - Retorno Envio: HTTPCode=406 Result={"mensagens":[{"mensagem":"Can not deserialize instance of java.lang.String[] out of VALUE_STRING token\n at [Source: org.apache.cxf.transport.http.AbstractHTTPDestination$1@34fcd5a1; line: 1, column: 810] (through reference chain: java.util.ArrayList[0]->br.com.sicoob.sisbr.cobrancabancaria.api.rest.dto.BoletoRestDto[\"mensagensInstrucao\"]->br.com.sicoob.sisbr.cobrancabancaria.api.rest.dto.MensagensInstrucao[\"mensagens\"])","codigo":"0004"}]} Alguém sabe o que pode ser o problema?
- 55 replies
-
Na consulta usa a agência e conta e estava diferente do que deve ser usado no ambiente de homologação.
-
Erro de Tipo de Multa Registro API Banco do Brasil
Allan Hilário replied to Allan Hilário's tópico in ACBrBoleto
Deu certo, estava informando a data e estava sendo gerado no json. Obrigado. -
Erro de Tipo de Multa Registro API Banco do Brasil
um tópico no fórum postou Allan Hilário ACBrBoleto
Estou tentando registrar um boleto via API do Banco do Brasil e esta retornando essa rejeição: HTTP_Result=400 JSON={"erros":[{"codigo":"4678420","versao":"1","mensagem":"Campo tipo multa preenchido com dados inv\u00e1lidos.","ocorrencia":"CHOM00000064611128420101"}]} [Rejeicao0] Campo= Codigo=4678420 Versao=1 Mensagem=Campo tipo multa preenchido com dados inválidos. Ocorrencia=CHOM00000064611128420101 Valor= Olhando a unit ACBrBoletoW_BancoBrasil_API reparei que é feita a seguinte verificação para gerar as informações de multa: if Titulos.PercentualMulta > 0 then begin if Titulos.MultaValorFixo then ACodMulta := 1 else ACodMulta := 2; end else ACodMulta := 3; Só que no manual da API do Banco do Brasil está com a seguinte informação: "Código utilizado pela FEBRABAN para identificar o tipo da multa. Domínio: 0 - Dispensar; 1 - Valor fixo (a partir da data estipulada no registro); 2 - Percentual (a partir da data estipulada no registro)." O correto no componente é ACodMulta receber 0 quando não existe PercentualMulta informado e não 3.
