Andre Cristiano Ittner Postado 18 Setembro Postado 18 Setembro Bom dia a Todos, Estava tentando entender como funciona o processo de geração do boleto pix pelo modo de arquivos cnab240, vendo o manual que o banco me passou e vendo o componente AcbrBoleto, e fazendo uns testes não consegui fazer aparecer no boleto o QRCode, então olhando no manual do banco vi que no retorno de remessa e "Segmento Y4" tem um campo "URL do QrCode" ai a minha pergunta "Só posso imprimir o boleto com o QRCode quando eu receber esse retorno? o componente não gera essa URL ?" acho muita informação com API mas não por arquivo CNAB desde ja obrigado!
Moderadores Juliomar Marchetti Postado 18 Setembro Moderadores Postado 18 Setembro De qual banco? mas sim depende do banco o EMV vem só no retorno porque? porque eles tem que registrar o boleto, registrar o pix e associar ao titulo para só então retornar Juliomar Marchetti skype: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br
Moderadores Juliomar Marchetti Postado 18 Setembro Moderadores Postado 18 Setembro sem o retorno não tem Qrcode pra imprimir Juliomar Marchetti skype: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br
Giovani Da Cruz Postado 18 Setembro Postado 18 Setembro Oi pessoal, estava lendo sobre o tópico e me deparei com uma situação hoje pela manhã. Banco: Sicredi modo de arquivos cnab240 Boleto Híbrido registrado via WebService Ao processar o retorno de um boleto pago no pix, estava ocorrendo um erro 'URL e TXID é obrigatório!' procedure TACBrBoletoPIXQRCode.PIXQRCodeDinamico(const AURL, ATXID: String; ATitulo : TACBrTitulo); var LEMV : TACBrPIXQRCodeDinamico; begin if (EstaVazio(AURL) or EstaVazio(ATXID)) then raise Exception.Create(ACBrStr('URL e TXID é obrigatório!')); ... end; Analisando o arquivo de retorno, o arquivo contém a seção Y, com a URL do pix, mas em branco a parte do TXID ACBrBancoSicredi.pas linha: 2298 if Trim(Copy(SegY,82,77))<>'' then QrCode.PIXQRCodeDinamico(Trim(Copy(SegY,82,77)),Trim(Copy(SegY,159,35)), Titulo); Esta situação já ocorreu com alguém? O boleto foi registrado e quitado normalmente.
Moderadores Juliomar Marchetti Postado 18 Setembro Moderadores Postado 18 Setembro é o mesmo problema do amigo acima? 1 hora atrás, Giovani Da Cruz disse: Oi pessoal, estava lendo sobre o tópico e me deparei com uma situação hoje pela manhã. Banco: Sicredi modo de arquivos cnab240 Boleto Híbrido registrado via WebService Ao processar o retorno de um boleto pago no pix, estava ocorrendo um erro 'URL e TXID é obrigatório!' procedure TACBrBoletoPIXQRCode.PIXQRCodeDinamico(const AURL, ATXID: String; ATitulo : TACBrTitulo); var LEMV : TACBrPIXQRCodeDinamico; begin if (EstaVazio(AURL) or EstaVazio(ATXID)) then raise Exception.Create(ACBrStr('URL e TXID é obrigatório!')); ... end; Analisando o arquivo de retorno, o arquivo contém a seção Y, com a URL do pix, mas em branco a parte do TXID ACBrBancoSicredi.pas linha: 2298 if Trim(Copy(SegY,82,77))<>'' then QrCode.PIXQRCodeDinamico(Trim(Copy(SegY,82,77)),Trim(Copy(SegY,159,35)), Titulo); Esta situação já ocorreu com alguém? O boleto foi registrado e quitado normalmente. Juliomar Marchetti skype: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br
Giovani Da Cruz Postado 18 Setembro Postado 18 Setembro Não é exatamente o mesmo. É ao processar arquivos de retorno contendo quitações de boletos híbridos, estou tendo a mensagem 'URL e TXID é obrigatório!'
Moderadores Juliomar Marchetti Postado 18 Setembro Moderadores Postado 18 Setembro Quando liquidado ele não trás mais os dados do PIX isso? Juliomar Marchetti skype: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br
Giovani Da Cruz Postado 19 Setembro Postado 19 Setembro Isso, quando analiso um arquivo de retorno de uma quitação de boleto, existe o registro Y, existe a url (SegY, 82, 77), mas na posição do TXID (SegY, 159, 35) está em branco. Então quando indico este arquivo de retorno e faço: ACBrBoleto1.LerRetorno; Ocorre a exceção: 'URL e TXID é obrigatório!'
Moderadores Juliomar Marchetti Postado 19 Setembro Moderadores Postado 19 Setembro 23 minutos atrás, Giovani Da Cruz disse: Isso, quando analiso um arquivo de retorno de uma quitação de boleto, existe o registro Y, existe a url (SegY, 82, 77), mas na posição do TXID (SegY, 159, 35) está em branco. Então quando indico este arquivo de retorno e faço: ACBrBoleto1.LerRetorno; Ocorre a exceção: 'URL e TXID é obrigatório!' mas dai vem uma pergunta bem doida quando tu emite o boleto e envia o registro tu pega o retorno e baseado nisso tu tem o valor e tem um campo do titulo onde tu salva os dados do emv? dai tu só pega as informações de retornos para saber as demais situações certo? mas acho que é preciso sim uma alteração tu tem um arquivo desses pra gente poder testar ou até sugestão no código onde ele pega a informação de liquidado e trata Juliomar Marchetti skype: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br
Giovani Da Cruz Postado 19 Setembro Postado 19 Setembro O boleto é registrado no banco via API v2 do Sicredi, retorna os dados, tudo ok. Mais a frente o pessoal abre o internet bank e baixa os arquivos de retornos disponíveis. E digamos que em um destes arquivos há disponível a quitação do boleto gerado. Este arquivo de retorno vai conter a seção Y, nela vai ter a url preenchida (SegY, 82, 77) mas nestes casos que peguei, na linha depois onde deveria supostamente ter o TXID (SegY, 159, 35), é completado com espaços em branco. Uma sugestão se código seria na unit ACBrBoleto, separando os campos na validação. Neste caso deixei a segunda validação em comentário, porque o arquivo que estava processando não tinha dados na parte do TXID, assim consegui processar os retornos normalmente. Precisaria avaliar em que situações o campo TXID realmente é obrigatório. procedure TACBrBoletoPIXQRCode.PIXQRCodeDinamico(const AURL, ATXID: String; ATitulo : TACBrTitulo); var LEMV : TACBrPIXQRCodeDinamico; begin if (EstaVazio(AURL)) then raise Exception.Create(ACBrStr('URL é obrigatório!')); // if (EstaVazio(ATXID)) then // raise Exception.Create(ACBrStr('TXID é obrigatório!')); LEMV := TACBrPIXQRCodeDinamico.Create; try LEMV.IgnoreErrors := True; LEMV.MerchantName := ATitulo.ACBrBoleto.Cedente.Nome; LEMV.MerchantCity := ATitulo.ACBrBoleto.Cedente.Cidade; LEMV.PostalCode := Poem_Zeros(ATitulo.ACBrBoleto.Cedente.CEP,8); LEMV.URL := AURL; //LEMV.TxId := ATXID; // aqui já estava em comentário Seturl(AURL); SettxId(ATXID); Setemv(LEMV.AsString); finally LEMV.Free; end; end; Vou ver aqui para deixar o arquivo de retorno com dados fictícios para postar aqui.
Moderadores Juliomar Marchetti Postado 19 Setembro Moderadores Postado 19 Setembro 56 minutos atrás, Giovani Da Cruz disse: O boleto é registrado no banco via API v2 do Sicredi, retorna os dados, tudo ok. tem que ver se o banco tem a interpolação entre API e cnab. não lembro se o mesmo foi feito em API pode ser baixado via cnab Juliomar Marchetti skype: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br
Recommended Posts
Crie uma conta ou entre para comentar
Você precisar ser um membro para fazer um comentário
Criar uma conta
Crie uma nova conta em nossa comunidade. É fácil!
Crie uma nova contaEntrar
Já tem uma conta? Faça o login.
Entrar Agora