GeracaoTitulos
Sistema de Geração de Títulos Bancários de Cobrança
Introdução
De acordo com a nova convenção da FEBRABAN FB-376/2017, todas as empressas que fazem emissão de títulos bancários deverão se adequar ao novo modelo de registro. Atualmente, as emissões de títulos bancários registrados são opcionais, isto é, a empresa emitir títulos não registrados ou títulos registrados vinculados a uma instituição bancária. Este modelo de emissão tem validade até 10/11/2018 conforme a nova plataforma de cobrança [1].
O motivo da mudança no modelo de emissão de títulos bancários é devido a necessidade de modernizar o processo de liquidação de títulos, aplicando novos mecanismos de segurança e controle nesse meio de pagamento.
A partir de Novembro de 2018 todas as empresas deverão adequar os seus sistemas de informação de acordo com o novo fluxo de processamento proposto pela convenção citado acima. O processo que antes poderia ser feito sem registro do título, com a adequação proposta pela nova convenção, a empresa emitente deverá registrar o título junto ao banco por meio de troca de arquivos, conhecidos como arquivos de remessa e retorno.
Os prazos para a emissão de títulos não registrados seguem o cronograma apresentado na Tabela 1.
Data | Valor |
---|---|
A partir de 25 de agosto/2018 | R$ 400,00 ou mais |
A partir de 13 de outubro/2018 | R$ 100,00 ou mais |
A partir de 27 de outubro/2018 | R$ 0,01 ou mais |
Em 10 de novembro/2018 | Processo concluído |
Devido a esta demanda este projeto visa abordar o desenvolvimento de um sistema capaz de:
- Emitir arquivos de Remessa e Retorno conforme layout disponibilizado pela FEBRABAN [2], enviando os títulos recebidos a instituição bancária para seu devido registro.
- Disponibilizar o título em forma de boleto em formato pdf ao cliente.
- Efetuar baixas e cancelamentos por meio de arquivos de Remessa.
- Controlar recebimentos de títulos pagos por meio de processamento de arquivo de Retorno disponibilizado pela instituição bancária.
Equipe
- Professores/Orientadores
- Alcione Benacchio
- Wellington Oliveira
- Alunos
- Alexandre Ferris
- Frederico Dellani Martinez
Proposta
Este projeto tem como objetivo o desenvolvimento de um sistema web que permita emitir, receber e gerenciar títulos de cobrança bancários(boletos). Com uma interface simples que disponibilize os títulos em pdf, nos layouts padrão(fatura) e carnê(conjunto de boletos), e que permita a geração de arquivos de Remessa no layout CNAB240 definidos pela FEBRABAN e também disponibilize forma de recebimento de arquivos Retorno possibilitando baixas de títulos, confirmações de pagamentos e controle de títulos em atraso.
Problema
A partir de novembro de 2018 a FEBRABAN finaliza seu calendário de implantação da nova plataforma de cobrança(Calendário de Implantação[3]). Com o objetivo de trazer mais segurança, controle e modernidade ao processo de liquidação de boletos serão aceitos apenas boletos com registro. Visando atingir as empresas que não possuem um fácil suporte a emissão de boletos e seus registros, iniciamos esse projeto com a pretensão de disponibilizar um sistema web que faça todo o processo de emissão de títulos e o cuidado durante seu ciclo de vida junto a instituição bancária pretendida pelo usuário.
Objetivo
Geral
Desenvolver uma plataforma Web capaz de auxiliar seu usuário a gerar e gerenciar seus títulos bancários registrados de forma fácil e prática.
Especifico
- Desenvolver opções de geração de títulos para determinada carteira bancária (Para teste será utilizada uma carteira de cobrança rápida do banco SANTANDER)
- Dispor de geração de arquivos, de remessa e PDF para envio ao banco e download do título respectivamente
- Possibilitar processamento de arquivos de retorno para efetuar as baixas de pagamentos de títulos
- Disponibilizar relatórios de boletos gerados, pagos e em atraso
- Apresentar saldo total e bruto de títulos gerados e registrados na instituição bancária
Público Alvo
Pessoas físicas ou jurídicas que necessitem emitir e receber seus títulos registrados, através de sua conta bancária de cobrança.
Principais Funcionalidades
Este projeto deve apresentar as seguintes funcionalidades:
- Gerar boleto em diversos formatos, utilizando PDF;
- Gerar arquivos de remessa, utilizando o formato CNAB 240 disponibilizado por FEBRABAN;
- Efetuar a leitura de arquivos de retorno disponibilizado pela instituição bancária escolhida pelo usuário, utilizando o formato CNAB 240 disponibilizado por FEBRABAN;
- Gerir o usuário utilizador, seus dados e ações;
- API REST para integração dos sistemas de clientes;
Metodologia de Desenvolvimento
Para o desenvolvimento da interface de usuário foram escolhidos VueJS, HTML5, CSS3 e SASS para garantir uma boa usabilidade e dinâmica de resposta rápida a qualquer interação do usuário. Para trabalhar a regra de negócio utiliza-se uma API desenvolvida em NodeJS, escolhido pela sua rapidez, fácil manutenção e reaproveitamento de código.
Como banco de dados para persistência das informações produzidas foi definido o uso do POSTGRESQL, escolhido pela sua aplicabilidade, escalabilidade e fácil acesso a sua documentação e comunidade. Para o serviço de geracao e processamento de arquivos foi escolhido Java com o framework Spring Boot, escolhidos pela sua confiabilidade e alta disponibilidade.
Conforme a lista de tecnologias abaixo:
NodeJS - Versão: 8.11.4
Vue.js - Versão: 2.5.17
Java EE - Versão: 1.8
Spring Boot - Versão: 1.5 Release
Spring Tools Suite(Eclipse based) - Versão: 3.9.5 Release
POSTGRESQL - Versão: 10.5
Apache TomCat - Versão: 9.0.11
Apache - Versão: 2.2
HTML - Versão: 5
CSS - Versão: 3
SASS
JSON
Casos de Uso
Requisitos
Neste documento apresentamos os requisitos não funcionais, funcionais e regras de negócio do sistema desenvolvido. O sistema web de geração de títulos será desenvolvido utilizando diversas tecnologias e linguagens como Java, Javascript, HTML, SCSS, Spring Boot, Vue.js e Node.js, como representado na Tabela1(RNFT 01).
Código | Requisitos Não Funcionais Tecnológicos |
---|---|
RNFT 01 | O sistema web utilizará como linguagens Java e Javascript. Para layouts e telas, HTML e SCSS. Frameworks como Springboot, Vue.js e Node.js. |
RNFT 02 | O banco de dados será desenvolvido utilizando POSTGRESQL. |
RNFT 03 | Toda a interface deve ser fácil de utilizar e intuitiva. |
RNFT 04 | Os dados deverão ser armazenados externamente. |
RNFT 05 | O sistema fará uso de um microservico para o processamento de arquivos. |
Na Tabela 2 observa-se os requisitos funcionais que estarão inseridos no contexto do sistema.
USUÁRIO | |
---|---|
Código | Requisito Funcional |
RF 01 | O sistema permitirá o cadastro de usuário e suas informações bancárias necessárias para geração de títulos. |
RF 02 | O sistema permitirá alterações de cadastro e informações cadastradas por ele. |
RF 03 | O cadastro inicial deve conter nome, senha, CPF, e-mail, telefones de contato e endereços. |
RF 04 | O complemento de cadastro, informações bancárias, será solicitada após a confirmação de cadastro. Elas devem ser: carteira, agência e conta. |
LOGIN | |
Código | Requisito Funcional |
RF 05 | O sistema vai liberar o acesso à plataforma a partir de seu e-mail e senha. |
FUNCIONALIDADES | |
Código | Requisito Funcional |
RF 06 | O usuário poderá emitir seus titulos bancários na plataforma. |
RF 07 | O usuário poderá gerar os boletos em formato PDF a partir dos títulos gerados na plataforma. |
RF 08 | O usuário poderá cancelar títulos emitidos |
RF 09 | O usuário poderá emitir arquivos de remessa. |
RF 10 | O usuário poderá efetuar download dos arquivos gerados. |
RF 11 | O sistema deverá efetuar a leitura de arquivos de remessa inseridos pelo usuário e fazer as baixas por pagamento de títulos. |