Gerar boletos com data vencimento após FEVEREIRO de 2025

180 views
Skip to first unread message

Fabricio Ventura

unread,
Feb 2, 2024, 8:28:10 PMFeb 2
to JRimum Community
Preciso do bopepo.jar atualizado para gerar boletos após o FEVEREIRO de 2025.

Solerman Kaplon

unread,
Feb 5, 2024, 7:44:14 AMFeb 5
to jrimum-c...@googlegroups.com
Baixe os fontes e atualize as duas classes do main e do test em anexo e compile o projeto. Não uso bopepo padrão então não tenho um jar pronto dele.

Em 02/02/2024 17:56, Fabricio Ventura escreveu:
Preciso do bopepo.jar atualizado para gerar boletos após o FEVEREIRO de 2025. --
--
Você recebeu esta mensagem porque está inscrito no Grupo "JRimum
Community" nos Grupos do Google.
Para postar neste grupo, envie um e-mail para
jrimum-c...@googlegroups.com
ANTES DE POSTAR... leia:
https://groups.google.com/d/topic/jrimum-community/ULU8QHHgaBs/discussion
Para cancelar a sua inscrição neste grupo, envie um e-mail para
jrimum-communi...@googlegroups.com
Para ver mais opções, visite este grupo em
http://groups.google.com/group/jrimum-community?hl=pt-BR?hl=pt-BR

---
Você recebeu essa mensagem porque está inscrito no grupo "JRimum Community" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para jrimum-communi...@googlegroups.com.
Para acessar essa discussão na Web, acesse https://groups.google.com/d/msgid/jrimum-community/2fe1af49-a47a-4184-9325-3e3cb8ce381dn%40googlegroups.com.


FatorDeVencimento.java
TestFatorDeVencimento.java

Rogggerio Machiello

unread,
Feb 5, 2024, 10:20:14 AMFeb 5
to jrimum-c...@googlegroups.com
Alguém aqui já conseguiu gerar Boletos d8?

Fabricio Ventura

unread,
Feb 5, 2024, 1:20:05 PMFeb 5
to JRimum Community
você teria o projeto para me enviar? para eu fazer as alterações e gerar o .jar?

baixei o projeto do github deles, porém está todo desatualizado. Da erro nas libs Vallia, Domkee e Textgit.

Roberto aqui

unread,
Feb 5, 2024, 1:45:12 PMFeb 5
to jrimum-c...@googlegroups.com

Rogggerio Machiello

unread,
Feb 5, 2024, 2:02:01 PMFeb 5
to jrimum-c...@googlegroups.com
Eu mandei desenvolver em Delphi porém não consigo registrar o boleto no banco pq não tenho contrato de concessão pública para conseguir convênio bancário pra isso 

Solerman Kaplon

unread,
Feb 5, 2024, 2:22:23 PMFeb 5
to jrimum-c...@googlegroups.com
Que erro? Acho que no nosso só fixamos as versões snapshot pra uma data fixa, tem um comando do maven para fazer isso mas não lembro de cabeça. Mas não adianta copiar do meu, só funcionaria a data que eu uso se vc tivesse um build igual no seu repositório (Aqui usamos um arquillian para fazer cache de tudo que é feito download do maven, aí não baixa remoto toda vez)

Adriana da Cunha Leocadio

unread,
Feb 5, 2024, 3:00:35 PMFeb 5
to jrimum-c...@googlegroups.com
Boa tarde!

Do que se trata?
Abraços 
AL

Raphael Souto

unread,
Feb 5, 2024, 3:02:41 PMFeb 5
to jrimum-c...@googlegroups.com
Amigo meu consegui gerar o D8 no qual colocou uma boa comissão ano passado.

Raphael Souto | CRECI/MG-31059
Private Broker & Real Estate
Phone / WhatsApp: +55 31 9.9428 3665
Mail / Skype / FB: rs...@outlook.com.br
Mail 2: rsouton...@gmail.com 


AVISO DE CONFIDENCIALIDADE E CONTEÚDO
A presente mensagem, suas continuações, antecedentes e seus eventuais anexos são de uso privativo e exclusivo de pessoas físicas e/ou jurídicas, entidades e órgãos autorizados por nós e podem conter informações confidenciais e/ou privilegiadas. Fica terminantemente vedado copiar, mostrar, modificar, divulgar ou se beneficiar, visitar ou ligar, imediata ou imediatamente, direta ou indiretamente, destas informações sem a autorização de seus criadores e autores.
Nós teremos e nos valeremos do direito de pleitear reparação material, moral e de todas as ordens e níveis pelos danos causados pela utilização indevida das informações e de requisitar a aplicação das penalidades
cabíveis e previstas na legislação brasileira vigente.



Roberto aqui

unread,
Feb 6, 2024, 6:28:55 AMFeb 6
to jrimum-c...@googlegroups.com
Onde eu começo a estudar para saber mais sobre estas informações de geração de boleto?

Raphael Souto

unread,
Feb 6, 2024, 6:32:55 AMFeb 6
to jrimum-c...@googlegroups.com
Na faculdade e na receita federal parceiro! Não é fácil não, eu tenho o caminho!


Raphael Souto | CRECI/MG-31059
Private Broker & Real Estate
Phone / WhatsApp: +55 31 9.9428 3665
Mail / Skype / FB: rs...@outlook.com.br
Mail 2: rsouton...@gmail.com 


AVISO DE CONFIDENCIALIDADE E CONTEÚDO
A presente mensagem, suas continuações, antecedentes e seus eventuais anexos são de uso privativo e exclusivo de pessoas físicas e/ou jurídicas, entidades e órgãos autorizados por nós e podem conter informações confidenciais e/ou privilegiadas. Fica terminantemente vedado copiar, mostrar, modificar, divulgar ou se beneficiar, visitar ou ligar, imediata ou imediatamente, direta ou indiretamente, destas informações sem a autorização de seus criadores e autores.
Nós teremos e nos valeremos do direito de pleitear reparação material, moral e de todas as ordens e níveis pelos danos causados pela utilização indevida das informações e de requisitar a aplicação das penalidades
cabíveis e previstas na legislação brasileira vigente.

Roberto aqui

unread,
Feb 6, 2024, 6:45:39 AMFeb 6
to jrimum-c...@googlegroups.com
Então é por isso....pra mim está faltando só o treinamento da receita mesmo.

Roberto aqui

unread,
Feb 6, 2024, 6:47:15 AMFeb 6
to jrimum-c...@googlegroups.com
Que horas começa o treinamento da receita? O professor vai ser o Pablo Marçal?

Ruan Alves

unread,
Feb 6, 2024, 8:32:15 AMFeb 6
to JRimum Community
Captura de tela 2024-02-06 102741.png

Camila Espinosa

unread,
Feb 6, 2024, 8:45:02 AMFeb 6
to JRimum Community
Olá, vi muitas pessoas falando sobre o boleto D8, então resolvi comentar também:
Caso alguém tenha interesse em adquirir, tenho um programa gerador de boleto D8.
Para mais informações, podem entrar em contato pelo e-mail: con...@connectclick.com.br
Message has been deleted
Message has been deleted
Message has been deleted
Message has been deleted
Message has been deleted

andre...@gmail.com

unread,
Mar 20, 2024, 8:51:10 PMMar 20
to JRimum Community
Eu reescrevi a classe de fator de vencimento para poder emitir os boletos após essa data. Também recompilei o projeto com java 18 e atualizei todas as dependência para versões mais atuais. Em breve vou fazer um fork do projeto no GIT e manda o link aqui, por hora, seja o código fonte para atualização do fator de vencimento:


/*
 * Copyright 2008 JRimum Project
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy of
 * the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by
 * applicable law or agreed to in writing, software distributed under the
 * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
 * OF ANY KIND, either express or implied. See the License for the specific
 * language governing permissions and limitations under the License.
 * Created at: 30/03/2008 - 18:17:40
 * ================================================================================
 * Direitos autorais 2008 JRimum Project
 * Licenciado sob a Licença Apache, Versão 2.0 ("LICENÇA"); você não pode usar
 * esse arquivo exceto em conformidade com a esta LICENÇA. Você pode obter uma
 * cópia desta LICENÇA em http://www.apache.org/licenses/LICENSE-2.0 A menos que
 * haja exigência legal ou acordo por escrito, a distribuição de software sob
 * esta LICENÇA se dará “COMO ESTÁ”, SEM GARANTIAS OU CONDIÇÕES DE QUALQUER
 * TIPO, sejam expressas ou tácitas. Veja a LICENÇA para a redação específica a
 * reger permissões e limitações sob esta LICENÇA.
 * Criado em: 30/03/2008 - 18:17:40
 */

package org.jrimum.bopepo;

import static java.lang.String.format;
import static org.jrimum.utilix.Objects.isNull;
import static org.jrimum.utilix.text.DateFormat.DDMMYYYY_B;

import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

import org.apache.commons.lang3.time.DateUtils;
import org.jrimum.utilix.Dates;
import org.jrimum.utilix.Exceptions;

/**
 * <p>
 * Serviços utilitários do universo bancário, como por exemplo calcular o fator
 * de vencimento de boletos.</code>
 * </p>
 *
 * @author <a href="http://gilmatryx.googlepages.com/">Gilmar P.S.L</a>
 * @author <a href="mailto:misael...@gmail.com">Misael Barreto</a>
 * @author <a href="mailto:romul...@gmail.com">Rômulo Augusto</a>
 * @author <a href="http://www.nordestefomento.com.br">Nordeste Fomento
 *         Mercantil</a>
 *
 * @since 0.2
 *
 * @version 0.2
 */
public class FatorDeVencimento {

/**
 * <p>
 * Data base para o cálculo do fator de vencimento fixada em 07/10/1997 pela
 * FEBRABAN.
 * </p>
 */
private static final Calendar BASE_DO_FATOR_DE_VENCIMENTO = new GregorianCalendar(1997, Calendar.OCTOBER, 7);
private static final Calendar BASE_DO_FATOR_DE_VENCIMENTO_POS_2025 = new GregorianCalendar(2022, Calendar.MAY, 29);
/**
 * <p>
 * Data base para o cálculo do fator de vencimento fixada em 07/10/1997 pela
 * FEBRABAN.
 * </p>
 */
private static final Date DATA_BASE_DO_FATOR_DE_VENCIMENTO = BASE_DO_FATOR_DE_VENCIMENTO.getTime();
private static final Date DATA_BASE_DO_FATOR_DE_VENCIMENTO_POS_2025 = BASE_DO_FATOR_DE_VENCIMENTO_POS_2025.getTime();

/**
 * <p>
 * Data máxima alcançada pelo fator de vencimento com base fixada em
 * 07/10/1997.
 * </p>
 */
private static final Date DATA_LIMITE_DO_FATOR_DE_VENCIMENTO = new GregorianCalendar(2025, Calendar.FEBRUARY, 21).getTime();
private static final Date DATA_LIMITE_DO_FATOR_DE_VENCIMENTO_POS_2025 = new GregorianCalendar(2047, Calendar.JANUARY, 17).getTime();

/**
 * <p>
 * Calcula o fator de vencimento a partir da subtração entre a DATA DE
 * VENCIMENTO de um título e a DATA BASE fixada em 07/10/1997.
 * </p>
 *
 * <p>
 * O fator de vencimento nada mais é que um referencial numérico de 4
 * dígitos que representa a quantidade de dias decorridos desde a data base
 * (07/10/1997) até a data de vencimento do título. Ou seja, a diferença em
 * dias entre duas datas.
 * </p>
 *
 * <p>
 * Exemplos:
 * </p>
 * <ul type="circule">
 * <li>07/10/1997 (Fator = 0);</li>
 * <li>03/07/2000
 * (Fator = 1000);</li>
 * <li>05/07/2000 (Fator = 1002);</li>
 * <li>01/05/2002
 * (Fator = 1667);</li>
 * <li>21/02/2025 (Fator = 9999).</li>
 * </ul>
 *
 * <p>
 * Funcionamento:
 * </p>
 *
 * <ul type="square">
 * <li>Caso a data de vencimento seja anterior a data
 * base (Teoricamente fator negativo), uma exceção do tipo
 * IllegalArgumentException será lançada.</li>
 * <li>A data limite para o
 * cálculo do fator de vencimento é 21/02/2025 (Fator de vencimento = 9999).
 * Caso a data de vencimento seja posterior a data limite, uma exceção do
 * tipo IllegalArgumentException será lançada.</li>
 * </ul>
 * <li>A partir do dia 22/02/2025 a contagem do fator de vencimento é
 * retroagida para 1000 e uma nova contagem é iniciada à
 * partir dai.</li>
 * </ul>
 *
 *
 *
 * <p>
 * <strong>ATENÇÃO</strong>, esse cálculo se refere a títulos em cobrança,
 * ou melhor: BOLETOS. Desta forma, lembramos que a DATA BASE é uma norma da
 * FEBRABAN. Essa norma diz que todos os boletos emitidos a partir de 1º de
 * setembro de 2000 (primeiro dia útil = 03/07/2000 - SEGUNDA) devem seguir
 * esta regra de cálculo para compor a informação de vencimento no código de
 * barras. Portanto, boletos no padrão FEBRABAN quando capturados por
 * sistemas da rede bancária permitem que se possa realizar a operação
 * inversa, ou seja, adicionar à data base o fator de vencimento capturado.
 * Obtendo então a data de vencimento deste boleto.
 * </p>
 *
 * @param data
 *            data de vencimento de um título
 * @return fator de vencimento calculado
 * @throws IllegalArgumentException
 *
 * @since 0.2
 */
public static int toFator(Date data) throws IllegalArgumentException {

if (isNull(data)) {

return (Integer) Exceptions.throwIllegalArgumentException("Impossível realizar o cálculo do fator de vencimento de uma data nula!");

} else {

Date dataTruncada = DateUtils.truncate(data, Calendar.DATE);

checkIntervalo(dataTruncada);

if (dataTruncada.before(DATA_LIMITE_DO_FATOR_DE_VENCIMENTO) || dataTruncada.equals(DATA_LIMITE_DO_FATOR_DE_VENCIMENTO)) {
return (int) Dates.calculeDiferencaEmDias(DATA_BASE_DO_FATOR_DE_VENCIMENTO, dataTruncada);
} else {
return (int) Dates.calculeDiferencaEmDias(DATA_BASE_DO_FATOR_DE_VENCIMENTO_POS_2025, dataTruncada);
}
}
}

/**
 * <p>
 * Transforma um fator de vencimento em um objeto data da forma inversa
 * descrita em {@linkplain #toFator(Date)}.
 * </p>
 *
 * @param fator
 *            - Número entre o intervalo (incluíndo) 0 e 9999
 * @return Data do vencimento
 * @throws IllegalArgumentException
 *             Caso o {@code fator} < 0 ou {@code fator} > 9999
 */
public static Date toDate(int fator) throws IllegalArgumentException {

checkIntervalo(fator);

Calendar date = (Calendar) BASE_DO_FATOR_DE_VENCIMENTO.clone();

date.add(Calendar.DAY_OF_YEAR, fator);

return DateUtils.truncate(date.getTime(), Calendar.DATE);
}

/**
 * <p>
 * Lança exceção caso a {@code dataVencimentoTruncada} esteja fora do
 * intervalo entre a {@linkplain #DATA_BASE_DO_FATOR_DE_VENCIMENTO} e a
 * {@linkplain #DATA_LIMITE_DO_FATOR_DE_VENCIMENTO}.
 * </p>
 *
 * @param dataVencimentoTruncada
 *            data de vencimento truncada com {@code
 *            DateUtils.truncate(date, Calendar.DATE)}
 * @throws IllegalArgumentException
 *             Caso a data esteja {@code dataVencimentoTruncada} esteja fora
 *             do intervalo entre a
 *             {@linkplain #DATA_BASE_DO_FATOR_DE_VENCIMENTO} e a
 *             {@linkplain #DATA_LIMITE_DO_FATOR_DE_VENCIMENTO}
 */
private static void checkIntervalo(Date dataVencimentoTruncada) throws IllegalArgumentException {

if (dataVencimentoTruncada.before(DATA_BASE_DO_FATOR_DE_VENCIMENTO) || dataVencimentoTruncada.after(DATA_LIMITE_DO_FATOR_DE_VENCIMENTO_POS_2025)) {

Exceptions.throwIllegalArgumentException(
format("Para o cálculo do fator de vencimento se faz necessário informar uma data entre %s e %s.", DDMMYYYY_B.format(DATA_BASE_DO_FATOR_DE_VENCIMENTO), DDMMYYYY_B.format(DATA_LIMITE_DO_FATOR_DE_VENCIMENTO)));

}
}

/**
 * <p>
 * Lança exceção caso o {@code fator} estja fora do intervalo.
 * </p>
 *
 * @param fatorDeVencimento
 *            - Número entre o intervalo (incluíndo) 0 e 9999
 * @throws IllegalArgumentException
 *             Caso o {@code fator} < 0 ou {@code fator} > 9999
 */
private static void checkIntervalo(int fatorDeVencimento) throws IllegalArgumentException {

if (fatorDeVencimento < 0 || fatorDeVencimento > 9999) {

Exceptions.throwIllegalArgumentException("Impossível transformar em data um fator menor que zero! O fator de vencimento deve ser um número entre 0 e 9999.");
}
}
}

Rogggerio Machiello

unread,
Mar 21, 2024, 7:24:56 PMMar 21
to jrimum-c...@googlegroups.com
Olá senhores qual o benefício de gerar boletos com vencimento após fevereiro de 2025

--
--
Você recebeu esta mensagem porque está inscrito no Grupo "JRimum
Community" nos Grupos do Google.
Para postar neste grupo, envie um e-mail para
jrimum-c...@googlegroups.com
ANTES DE POSTAR... leia:
https://groups.google.com/d/topic/jrimum-community/ULU8QHHgaBs/discussion
Para cancelar a sua inscrição neste grupo, envie um e-mail para
jrimum-communi...@googlegroups.com
Para ver mais opções, visite este grupo em
http://groups.google.com/group/jrimum-community?hl=pt-BR?hl=pt-BR

---
Você recebeu essa mensagem porque está inscrito no grupo "JRimum Community" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para jrimum-communi...@googlegroups.com.

Solerman Kaplon

unread,
Mar 22, 2024, 7:07:45 AMMar 22
to jrimum-c...@googlegroups.com
Se hoje você parcelar uma compra em 12x, a última parcela cai em março de 2025.

andre...@gmail.com

unread,
Mar 26, 2024, 11:27:53 AMMar 26
to JRimum Community
Fiz um fork  de todas as bibliotecas do projeto Jrimum aqui:


Dentro de cada projeto você vai encontrar os JARs compilados com JAVA 18 e todas as bibliotecas atualizadas para versões mais recentes. 
Revise também o POM para ver as dependências atualizadas.
Com esses JARs já é possível gerar boletos para depois de 2025. 

Se alguém tiver um repositório onde eu possa publicar os artefatos prontos para que seja possível apenas referenciar o projeto no POM, por favor me responda aqui passando os dados.

On Friday, February 2, 2024 at 10:28:10 PM UTC-3 ventura.p...@gmail.com wrote:

Guilherme

unread,
Mar 27, 2024, 9:40:37 AMMar 27
to jrimum-c...@googlegroups.com
Excelente trabalho Andre

--
--
Você recebeu esta mensagem porque está inscrito no Grupo "JRimum
Community" nos Grupos do Google.
Para postar neste grupo, envie um e-mail para
jrimum-c...@googlegroups.com
ANTES DE POSTAR... leia:
https://groups.google.com/d/topic/jrimum-community/ULU8QHHgaBs/discussion
Para cancelar a sua inscrição neste grupo, envie um e-mail para
jrimum-communi...@googlegroups.com
Para ver mais opções, visite este grupo em
http://groups.google.com/group/jrimum-community?hl=pt-BR?hl=pt-BR

---
Você recebeu essa mensagem porque está inscrito no grupo "JRimum Community" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para jrimum-communi...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages