> For the complete documentation index, see [llms.txt](https://docs.gaiodataos.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.gaiodataos.com/gaio-dataos-portuguese/casos-de-uso/financial-anomaly-detection.md).

# Financial Anomaly Detection

<figure><img src="/files/fCIC4riFG3SpXjUAiG29" alt=""><figcaption></figcaption></figure>

## Visão Geral do Projeto

Este projeto demonstra como utilizar o **Gaio DataOS** para construir uma aplicação capaz de **detectar anomalias financeiras** com base em informações de transações financeiras.

Por meio dessa aplicação, os usuários podem:

* Importar dados de transações financeiras
* Detectar, classificar e visualizar análises
* Obter insights sobre anomalias financeiras presentes em suas transações

***

## Etapas de Desenvolvimento

### 1. Extração de Dados

<figure><img src="/files/0zMXdH4Z02WUBezxkcDL" alt=""><figcaption></figcaption></figure>

* Conexão com **ClickHouse Cloud** ou importação de arquivos **CSV**

  * Utilização de **builder tasks** no Gaio para:
    * Importar dados
    * Limpar e transformar dados

  O processo de importação resulta em uma tabela flat chamada **`tb_financial_anomaly`**.

***

### 2. Detecção de Anomalias

<figure><img src="/files/6MyzYM2Jhs4O4n2TRDzy" alt=""><figcaption></figcaption></figure>

A lógica de detecção é dividida em **SQL builders** para identificar os seguintes tipos de anomalias:

* Despesa elevada (*Large Expense*)
* Transação duplicada (*Duplicate Transaction*)
* Transação fora do horário (*After Hours Transaction*)
* Reembolso repetido (*Repeat Reimbursement*)
* Pico de receita (*Revenue Spike*)
* Aumento anormal de reembolsos (*Refund Surge*)

Cada anomalia detectada recebe:

* Um **score de severidade**
* Um **anomaly\_id** único
* Metadados enriquecidos

{% hint style="info" %}
Se múltiplas anomalias ocorrerem na mesma transação, cada uma receberá um **anomaly\_id** diferente.
{% endhint %}

A consolidação final é realizada na tabela **`detected_anomalies`**.

***

### &#x20;3. Dashboards e Interfaces

#### 3.1 Monitor de Transações Suspeitas

<figure><img src="/files/tDC43Ztc6lgm92w738Ie" alt=""><figcaption></figcaption></figure>

*

```
* Utiliza as tabelas **`detected_anomalies`** e **`anomaly_classification_history`**
```

```
* Métricas como:
  * Quantidade total de anomalias
  * Número de anomalias por tipo de classificação
  * Distribuição por severidade

Essas análises são criadas com **Report Tasks** e exibidas em dashboards.

* Um conjunto de filtros é criado com a **Form Task**, permitindo filtrar por:
  * Data
  * Tipo de transação
  * Setor
  * Categoria
  * Tipo de pagamento

Também são exibidas:

* Uma tabela flat com as classificações mais recentes
* Uma tabela com todas as anomalias que ainda precisam ser classificadas

A partir da tabela de anomalias pendentes, os usuários podem classificar uma anomalia ou visualizar detalhes específicos clicando em seu **ID**.
```

***

#### 3.2 Classificação de Anomalias

<figure><img src="/files/LKVsmx829ncZEHsd6cKB" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/IvYyt3vQtSmVoyESk3rF" alt=""><figcaption></figcaption></figure>

* Ao clicar no ícone mais à esquerda na tabela de anomalias pendentes, o usuário pode classificar uma anomalia por meio da **Form Task**
* Alguns campos do formulário são preenchidos automaticamente com informações da anomalia selecionada, utilizando **parâmetros**

  Após o envio do formulário, o processo **Update Anomaly Classification** é executado, composto por duas etapas principais:

  1. Uma **Update Task** edita a linha da anomalia na tabela **`detected_anomalies`**
  2. Uma **Incremental Builder Task** adiciona uma nova linha com a anomalia e sua classificação na tabela **`anomaly_classification_history`**

***

#### 3.3 Detalhes da Anomalia

<figure><img src="/files/L6nzISq4ClgBAGNLH2yw" alt=""><figcaption></figcaption></figure>

* Ao clicar em um **anomaly\_id**, é aberto um dashboard dedicado

  **Tabelas utilizadas:**

  * `detected_anomalies`
  * `tb_financial_anomaly`
  * Utilização de **parâmetros** para filtragem dinâmica

  O dashboard inclui:

  * Card de nível de risco
  * Insights baseados no tipo de anomalia
  * Gráficos:
    * Linha (médias mensais)
    * Barras (por setor e categoria)
    * Pizza (por cliente ou fornecedor)
  * Tabela de histórico de transações

  Todo o layout é estilizado com **HTML & CSS**.

***

#### 3.4 Dashboards de Anomalias Confirmadas e em Investigação

<figure><img src="/files/lUpnxL5mfabXVXVxg6Q9" alt=""><figcaption></figcaption></figure>

* Dois dashboards dedicados utilizando a tabela **`detected_anomalies`**

  * Exibem:
    * Anomalias confirmadas
    * Anomalias pendentes

  Construídos com **Report Task**.

***

### Tecnologias Utilizadas

* Workflows visuais de **ETL** no Gaio DataOS
* Tabelas temporárias e finais para versionamento de dados
* **Report Task** e **Content Task** para criação de dashboards adaptativos e visualmente ricos
* Dashboards dinâmicos com filtros, gráficos e tabelas
* **HTML e CSS** para estilização e responsividade
* **Form Task** para permitir a classificação de anomalias sem sair do dashboard
* **Parâmetros** para passagem de dados e navegação fluida entre telas

***

### Resultados Esperados

* Desenvolvimento mais rápido da lógica de detecção de anomalias
* Dashboards centralizados para monitoramento
* Melhor controle financeiro e rastreabilidade para auditorias
* Acesso seguro por meio de usuários e grupos com permissões definidas

***

### Download this project

{% file src="/files/cVCgQPURoPrCyL4fmLZT" %}

{% file src="/files/kKdwuJosibZBIusEjlsU" %}
