Data analysis · Receivables risk
Radar
Pixelado
Radar Pixelado organises receivables data and applies alert rules to flag situations that deserve a closer look. The solution combines data preparation in Python with Power BI dashboards to follow indicators, investigate alerts and explore risk concentration.
- Type
- Academic project · Data Science / FIAP
- Status
- Final solution delivered
- Scope
- Data preparation and four Power BI dashboards

- receivables in the transactional base
- 7.118
- nominal volume monitored
- R$ 165,85 mi
- unique receivables with alerts (28.20%)
- 2.007
- Power BI experiences
- 4
About this pageAcademic project built on datasets provided in a FIAP challenge. The Power BI screenshots keep their original visual identity; payer, beneficiary and receivable identifiers were pixelated, and no dataset records are published.
Context
The receivables and FIDC (receivables investment fund) market needs fast, consistent and standardised analysis to support risk, pricing and portfolio monitoring decisions.
Fragmented data, poorly standardised indicators and reliance on manual analysis make a consolidated view hard to reach and slow down response.
Who it serves
- Risk analysts
- FIDC managers
- Structurers
- Credit committees
- Qualified investors
Challenge
Without an integrated analytical layer, it is hard to spot delays, settlement failures, deteriorating liquidity and risk concentration by payer. Portfolio analysis becomes slower, less traceable and more dependent on manual checks.
Solution
The solution cleans and models the data, consolidates operational and financial indicators, applies alert rules and publishes everything in an interactive Power BI dashboard, navigating between executive view, alerts, a risk concentration map and receivable-level detail.
Deliverables
- Final cleaned base
- Consolidated indicators
- Alert rules applied
- Final Power BI dashboard
- Interactive filters
Data and preparation
Preparation was done in Python with Pandas, in steps documented in the project notebook, and the cleaned base fed the Power BI model and measures.
- 7.118
- receivables in the transactional base
- 4.612
- records in the auxiliary base
Load and profile
Load both datasets and inspect columns, types and missing values.
Dates and delay
Convert issue, due and payment dates; delay in days = payment − due date.
Operational flags
Paid (has a payment date), settled (has a settlement amount) and late (delay above zero).
Data quality
No payment and no settlement; payment without settlement amount; settlement above face value.
Joining the bases
The auxiliary base is joined twice, with distinct prefixes: once by payer and once by beneficiary, adding liquidity, materiality, historical average delay, state and industry code.
Final base and publishing
Export of the cleaned base and the KPI and alert summaries, consumed by the Power BI model, measures and filters.
Operational alert rules
Each rule flags the receivable. A single receivable can trigger more than one rule, so alert occurrences and receivables with alerts are different numbers.
| Alert | Rule | Occurrences |
|---|---|---|
| Low liquidity | Payer 1-month liquidity index below 0.50 (reference threshold adopted in the project). | 1.223 |
| Payment without settlement | A payment date exists but no settlement amount is recorded. | 750 |
| Settlement above face value | Settlement amount greater than the receivable’s face value. | 616 |
| High delay | More than 30 days between due date and payment. | 389 |
Occurrences are not added up as receivables: a single receivable can trigger more than one rule. For the Pixel Radar, each receivable’s risk score is the sum of the four flags; the matrix uses the average score per payer and due date.
Indicators
Indicators computed on the consolidated base and shown in the Executive View.
- Receivables analysed
- 7.118
- Records in the transactional base.
- Monitored volume
- R$ 165.853.488,09
- Sum of face value.
- Paid
- 99,02%
- Receivables with a payment date.
- Settled
- 88,48%
- Receivables with a settlement amount.
- Late among paid
- 29,61%
- Among paid receivables, the share paid after the due date.
- Average delay
- 16,03 dias
- Average days of delay among late receivables.
The four Power BI screens
Executive View
Question the screen answers
How is the portfolio, at a glance?
Six KPIs on top, monitored volume by due day, the ten payers with the highest exposure, receivables by risk level and a summary of the four alerts. Filters by due month, payer state, settlement type, instrument type and risk level.
- Portfolio KPIs
- Exposure by payer
- Distribution by risk level
Anonymisation Payer identifiers in the ranking pixelated.
Documented results
Three different quantities, which are never added together:
7.118
Base records
Receivables analysed in the transactional base.
≈ 3 mil
Alert occurrences
Hits across the four rules (1,223 · 750 · 616 · 389). One receivable may have several; the dashboard shows the rounded total.
2.007
Unique receivables with alerts
28.20% of the portfolio; 290 receivables classified as critical risk.
Receivables by risk level (as shown in the dashboard)
- Low5,1 mil
- Moderate1,3 mil
- High0,4 mil
- Critical290
The Pixel Radar, as a concept
Conceptual reproduction · Synthetic data
How the Pixel Radar reads the portfolio
Same logic as the project notebook: receivable score = sum of the four alert flags; each cell shows the average per payer and due day. Click a payer to see its summary; use the legend to filter bands.
- Receivables
- 231
- Alert occurrences
- 172
- Receivables with alerts
- 114
- % with alerts
- 49.35%
Full synthetic portfolio
| Payer | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2.00 | 2.67 | 2.33 | 2.50 | 2.33 | 1.50 | 2.33 | 2.67 | |||||||||||||||||
| 2.00 | 2.00 | 1.33 | 2.00 | 0.50 | 1.00 | 1.33 | 1.00 | 1.67 | ||||||||||||||||
| 2.50 | 1.00 | 1.00 | 2.00 | 1.00 | 1.33 | 2.00 | 1.00 | |||||||||||||||||
| 2.00 | 1.00 | 1.67 | 0.33 | 1.00 | 0.00 | 0.00 | 1.00 | 0.00 | 0.00 | 0.00 | 1.00 | |||||||||||||
| 1.00 | 0.50 | 0.00 | 0.00 | 0.33 | 0.00 | 0.67 | 0.00 | 1.33 | 0.00 | 0.67 | 1.00 | 0.00 | ||||||||||||
| 0.67 | 1.00 | 1.00 | 0.33 | 0.33 | 0.00 | 0.50 | 0.00 | 0.50 | ||||||||||||||||
| 0.67 | 0.33 | 0.00 | 0.00 | 1.00 | 1.00 | 0.00 | 0.00 | 0.50 | 0.50 | |||||||||||||||
| 0.67 | 1.00 | 0.00 | 1.00 | 0.33 | 1.00 | 0.33 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | |||||||||||||
| 0.00 | 0.50 | 0.50 | 0.00 | 0.00 | 0.00 | 0.00 | 0.50 | 0.50 | 0.00 | 0.67 | ||||||||||||||
| 0.00 | 1.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.33 | 1.00 | |||||||||||||||||
| 1.00 | 0.00 | 1.00 | 0.00 | 0.00 | 0.33 | 0.50 | 1.00 | |||||||||||||||||
| 0.33 | 0.00 | 0.00 | 0.00 | 0.00 | 0.33 | 0.00 | 0.00 |
- Low liquidity63
- Payment without settlement41
- Settlement above face value36
- High delay32
This is not the original dashboard. Payers, receivables and alerts are generated artificially in the browser; colour bands are illustrative, approximating the dashboard legend, not the official thresholds.
Architecture: delivered × proposed
The presentation separates what was built in Sprint 4 from the technical architecture proposed for later. This page keeps that separation.
Built in the final solution
- Data cleaning and joins in Python with Pandas
- Operational, quality and alert flags
- Operational and risk KPIs
- Heatmap prototype in Matplotlib
- Cleaned base exported to Power BI
- Model, measures, filters and four pages in Power BI
- Data and processing
- Visualisation
Proposed architecture (not built)
Capture
SFTP or secure API; receivables, registry and settlement files.
Processing
Parquet/S3 data lake, Python cleaning, Spark; batch and speed layers; ETL, KPIs and data quality.
Serving
KPI layers, alert table and query API.
Consumption
Executive dashboard, Pixel Radar, alert centre and export.
An evolution path using services such as Amazon S3 and AWS Glue. It is not part of what was delivered.
Takeaways and next steps
What the results show
- Occurrences and unique receivables tell different stories: about 3,000 alert hits concentrate on 2,007 receivables.
- Low liquidity is the most frequent alert, ahead of payment without settlement.
- Data quality is part of the risk: payment without settlement and settlement above face value show up as alerts, not just as cleaning.
Planned evolutions
- Publishing in a shared environment
- Cloud pipeline automation
- A predictive layer
- Broader risk rules