1. Introdução
O BacenJud é um sistema que interliga a Justiça ao Banco Central e às instituições financeiras, para agilizar a solicitação de informações e o envio de ordens judiciais ao Sistema Financeiro Nacional, via internet.
Em dezembro de 2019, foi firmado Acordo de Cooperação Técnica entre o Conselho Nacional de Justiça – CNJ, o Banco Central e a Procuradoria da Fazenda Nacional – PGFN, visando o desenvolvimento de novo sistema para substituir o BacenJud e aprimorar a forma de o Poder Judiciário transmitir suas ordens às instituições financeiras.
Visando cumprir os comandos constitucionais de razoabilidade duração do processo e eficiência da prestação jurisdicional, bem como reduzir os riscos na tramitação física de documentos contendo informações sigilosas, foi desenvolvido o Sistema de Busca de Ativos do Poder Judiciário – SISBAJUD.
2. Integração
Para que a integração do PJE com o Sisbajud fosse possível, foi criado o serviço bacen. Este serviço é responsável por abstrair toda complexidade de comunicação com a API do Sisbajud, além de realizar processo de desdobramento de maneira automática.

O PJE tem como dependência o projeto api-client. Este projeto contém o Seam component BacenRestClient, o qual possui a lógica necessária para comunicação com o serviço bacen. Por meio desse componente, o PJE tem acesso às seguintes funcionalidades:
-
Protocolar ordem judicial de bloqueio de valores
String BacenRestClient.protocolaOrdemJudicial(String tokenAcesso, ProcessoTrf processoTrf, List<Executado> executados, Double valorBloqueio, String documentoOperador)
-
Cancelar ordem judicial de bloqueio de valores
String BacenRestClient.cancelaOrdemJudicial(String tokenAcesso, String protocolo)
-
Recuperar logs
String BacenRestClient.recuperaLogs(String tokenAcesso, String protocolo)
-
Entregar documentos
void BacenRestClient.entregaDocumento(String tokenAcesso, String protocolo)
-
Desbloquear valores
void BacenRestClient.desbloqueiaValores(String tokenAcesso, String protocolo)
-
Realizar desdobramento
void BacenRestClient.realizaDesdobramento(String tokenAcesso, String protocolo)
O parâmetro tokenAcesso é opcional. Este parâmetro passará a ser obrigatório quando a solução de Single Sign-On (SSO) estiver sendo utilizada por um número razoável de PJEs. |
Caso os parâmetros executados e/ou valorBloqueio não forem fornecidos, serão considerados executados todas pessoas que figuram no pólo passivo e o valor do bloqueio será o valor da causa que consta no processo. |
Antes de executar qualquer uma dessas funcionalidades, o serviço bacen precisa ser configurado. Essa configuração é específica para cada usuário e inclui:
-
Cadastro de senha de acesso ao CNJ Corporativo.
-
Cadastro de dados para a realização do desdobramento.
-
Cadastro do mapeamento entre as varas do PJE e do Sisbajud.
A tela de configuração está disponível no PJE em Configuração → Serviços → Bacen

3. Regra de negócio
Uma vez feito o cadastro da configuração e protocolado uma ordem judicial de bloqueio de valores, o serviço irá verificar (após 48hs do protocolamento) se aquela ordem judicial foi respondida. De acordo com as respostas das instituições financeiras associadas aos executados, o serviço irá realizar o desdobramento (desbloqueio ou transferência de valores) e entregar (via MNI) uma certidão ao processo correspondente. Essa certidão pode ser dos seguintes tipos:
-
Resposta negativa: Nenhuma instituição financeira respondeu à solicitação de bloqueio de valores.
-
Desbloqueado: Será realizado o desbloqueio caso o total de valores bloqueados seja inferior aos critérios configurados nos campos Valor mínimo para bloqueio e Porcentagem mínima para bloqueio. Este último parâmetro é calculado sobre o valor de bloqueio.
-
Transferido parcialmente: Caso o valor de bloqueio não tenha sido atingido.
-
Transferido: Caso o valor de bloqueio tenha sido atingido ou ultrapassado. Neste último caso, todo o excesso é desbloqueado.
A lógica de desdobramento considera como valor de bloqueio o maior valor solicitado dentre todos os executados. A transferência de valores para a conta judicial configurada começa no primeiro executado e para até atingir o valor de bloqueio. |
4. Endpoints
A execução de qualquer endpoint está condicionada ao fornecimento do bearer token. Para recuperá-lo realize uma chamada POST em https://sso.stg.cloud.pje.jus.br/auth/realms/pje/protocol/openid-connect/token (homologação) ou https://sso.prd.cloud.pje.jus.br/auth/realms/pje/protocol/openid-connect/token (produção) com os parâmetros abaixo no body e o content-type = application/x-www-form-urlencoded:
O serviço de SSO irá retornar um access_token. Utilize-o para chamar os endpoins passando no cabeçalho da requisição Authorization: "Bearer access_token" |
5. Execução
5.1. Docker
Necessário ter o Docker instalado.
$ docker container run --rm --name bacen -it -p 8585:8585 registry.cnj.jus.br/pje2/pje2-servicos/bacen:latest
5.2. OpenJDK
Necessário ter o OpenJDK 1.8 ou superior instalado.
$ git@git.cnj.jus.br:pje2/pje2-servicos/bacen.git
$ mvn clean package
$ java -jar target/bacen.jar
6. Principais tecnologias utilizadas
6.1. Linguagem de programação
Java versão 8
6.2. Framework(s)
SpringBoot 2
6.3. Armazenamento dos dados
Banco relacional PostgreSQL
7. Configuração da aplicação
O serviço bacen pode ser configurado de acordo com as seguintes variáveis de ambiente:
Variável | Descrição | Valor padrão |
---|---|---|
SERVICE_PORT |
Porta do serviço |
8585 |
DB_DRIVER |
Driver do banco de dados |
org.h2.Driver |
DB_URL |
URL do banco de dados |
jdbc:h2:mem:bacen;DB_CLOSE_ON_EXIT=FALSE |
DB_USER |
Usuário do banco de dados |
sa |
DB_PASSWORD |
Senha do usuário do banco de dados |
|
EUREKA_SERVER_DEFAULT_ZONE |
URL do service discovery |
|
EUREKA_CLIENT_ENABLED |
Indicativo de que o serviço deve ou não se registrar no service discovery |
true |
HOST_SISBAJUD |
Host da API de serviços do Sisbajud |
|
PASSWORD_CRYPTO_KEY |
Chave de 128 bits codificada em Base64 para encriptar a senha do usuário |
|
SISBAJUD_CLIENT_ID |
Identificador da aplicação sisbajud-api no serviço de SSO (keycloak) |
|
SISBAJUD_CLIENT_SECRET |
Chave da aplicação sisbajud-api no serviço de SSO (keycloak) |
|
SSO_AUTH_SERVER_URL |
URL de autenticação do serviço de SSO |
|
SSO_REALM |
Domínio da política de segurança configurado no serviço de SSO |
pje |
Homologação
Produção
|