---
title: "Fabrick Fast Scoring"
description: "La valutazione del merito creditizio basata sui saldi di conto e sulle transazioni è tra i casi d’uso di maggiore interesse per le aziende."
url: "https://docs.fabrick.com/payment-institution/open-banking-and-psd2/pass/products/oneshot/dev/aisp-os-fast-scoring/"
language: "it"
---

# Fabrick Fast Scoring

## Introduzione

La valutazione del merito creditizio basata sui saldi di conto e sulle transazioni è tra i casi d’uso di maggiore interesse per le aziende. L’accesso ai dati PSD2 da parte di Terze Parti consente di approfondire la conoscenza del Cliente e, soprattutto, del Prospect. L’elenco completo delle transazioni del cliente, acquisito aggregando uno o più conti tramite le funzionalità AIS PSD2, costituisce un dataset molto più consistente rispetto ai modelli tradizionali.

Al fine di supportare i fornitori di credito e le aziende nello sfruttare il potenziale offerto dall’Open Banking, Fabrick ha implementato uno score transazionale basato sui dati PSD2 acquisiti, normalizzati e arricchiti attraverso il gateway PSD2 proprietario.

È costruito sulla base di una profonda conoscenza del framework PSD2, con il contributo dell’esperienza metodologica nello sviluppo di modelli di rischio ed è stato addestrato sulla base dei dati di conto forniti dagli istituti del Gruppo Banca Sella.

![scoringModelTraditionaVsNew](https://docs.fabrick.com/img/payment-institution/open-banking-and-psd2/pass/account-information/oneshot/fast-scoring/scoring-model-traditional-vs-new.png)

### Descrizione funzionale

Le aziende potranno acquisire i dati bancari dei propri clienti in totale trasparenza e sicurezza utilizzando uno dei servizi AISP (PASS e PASS ONE SHOT). A questo punto, tramite appositi endpoint API potranno chiamare lo Scoring.\
Fabrick ha sviluppato un modello di scoring basato su 3 componenti.

- *Anomaly detection*: Verifica l’affidabilità degli asset transazionali
- *Transactional Scoring*: Consente di comprendere la capacità e la sostenibilità del debito catturando peculiarità dai conti bancari indicati dal cliente e, quindi, quantificando una probabilità di rischio / score
- *Affordability Model*: Identifica l’importo massimo della rata sostenibile dal cliente e consente di supportare il cliente nella scelta del finanziamento (es. responsible lending)

![functionalFramework](https://docs.fabrick.com/img/payment-institution/open-banking-and-psd2/pass/account-information/oneshot/fast-scoring/functional-framework.png)

#### Anomaly detection

Panoramica del processo di Anomaly Detection con cui viene determinata l’adeguatezza delle informazioni di conto del cliente finale per procedere successivamente con la valutazione creditizia.

Il processo di anomaly detection aiuta a determinare l’appropriatezza delle informazioni di conto del cliente finale per procedere con la valutazione del credito.

In particolare, il controllo prevede le seguenti valutazioni:

- *Reading of the transactions*; Le API raccolgono le informazioni dei dati dei conti bancari
- *Data Enrichment*; Arricchimento e categorizzazione delle transazioni
- *KPI*; Un motore di calcolo definisce un set di variabili responsabili della clusterizzazione dei dati di conto

Sulla base delle regole decisionali, viene assegnato un cluster:

- *reliable account*; Se i dati transazionali sono sufficientemente rappresentativi della situazione del cliente, questi vengono utilizzati per l’analisi del rischio e il calcolo dell’importo massimo della rata
- *not reliable account*; Se il modello non considera sufficiente la quantità/qualità dei dati transazionali, il cliente può aggregare un diverso conto bancario per maggiore robustezza della propria valutazione

#### Transactional Scoring

I dati provenienti dal motore semantico (spese ed entrate) vengono ulteriormente categorizzati e raffinati al fine di ottenere in modo organico i dataset informativi utili allo sviluppo.

![focusScoring](https://docs.fabrick.com/img/payment-institution/open-banking-and-psd2/pass/account-information/oneshot/fast-scoring/focus-scoring.png)

Calcolo di circa 20 feature sugli asset informativi conferiti

- **Reliability** ad esempio

  - Quarterly Cards Exposure
  - Volatilità dell’esposizione finanziaria totale
  - Esposizione media trimestrale leasing
  - Trend dell’esposizione finanziaria

- **Incompressible consumptions** ad esempio

  - Volatilità dei costi delle utenze
  - Trend delle spese legali
  - Media delle spese fiscali
  - Spese in digital footprint

- **Lifestyle** ad esempio

  - Spesa media in beneficenza
  - Apple purchases flag
  - Indicatore gambling
  - Flag p2p lending
  - Clustering supermercati

- **Affordability** ad esempio

  - Indici di sostenibilità finanziaria
  - Volatilità dei ricavi
  - Indici di assorbimento fiscale
  - Propensione al risparmio

- **Timing** ad esempio

  - N giorni con saldo negativo
  - Numero di giorni con prelievi significativi effettuati nella prima settimana del mese
  - Tempo medio di N giorni fuori

Calcolo della probabilità di default (eventualmente convertibile in uno score) su cui applicare le strategie di accettazione secondo la propria Risk Appetite, quindi la Probabilità che il debitore vada in default, intesa come l’impossibilità di rimborsare il debito, in un periodo di 12 mesi.\
Il modello di output è il seguente

![modelOutput](https://docs.fabrick.com/img/payment-institution/open-banking-and-psd2/pass/account-information/oneshot/fast-scoring/model-output.png)

per quanto riguarda la persona fisica, i valori sono i seguenti

| min          | max           | Score |
| ------------ | ------------- | ----- |
| 0%           | 0,16038677%   | 1     |
| 0,16038677%  | 0,19072944%   | 2     |
| 0,19072944%  | 0,47165826%   | 3     |
| 0,47165826%  | 1,22177163%   | 4     |
| 1,22177163%  | 3,45162153%   | 5     |
| 3,45162153%  | 6,99227229%   | 6     |
| 6,99227229%  | 12,25430369%  | 7     |
| 12,25430369% | 30,39051592%  | 8     |
| 30,39051592% | 100,00000000% | 9     |

#### Affordability Model

Il modello restituisce il valore monetario rappresentativo dell’importo mensile massimo sostenibile dal cliente. Il calcolo tiene conto dei seguenti coefficienti:

- Calcolo del Free Cash Flow (FCF) sui dati transazionali condivisi
- Determinazione del Distressed FCF in funzione della similarità delle feature rispetto a un cluster emerso durante la fase di training
- Calcolo della rata massima pagabile come differenza tra FCF e FCF Distressed

## APIs

Fabrick è un istituto di pagamento autorizzato dalla Banca d’Italia ad operare come AISP (Account Information Service Provider). La licenza AISP consente l’accesso ai dati di conto - come il saldo e l’elenco delle transazioni - con il consenso esplicito fornito dal PSU (Payment Service User).

Operando essa stessa come terza parte, può quindi offrire il servizio di account information a tutti quei soggetti che, pur non disponendo di licenza AISP, vogliono cogliere le opportunità offerte dalla PSD2.

L’offerta di Fabrick alle aziende per il servizio sopra descritto deriva dalla combinazione del prodotto Fabrick Pass One Shot e del prodotto Fast Scoring. Le funzionalità di account information del prodotto Fabrick Pass One Shot, le metodologie di Machine Learning e la categorizzazione delle transazioni consentono a Fabrick di offrire il servizio Fast Scoring a tutti gli intermediari finanziari privi di licenza AISP e interessati a un accesso “One-Shot” alle informazioni di conto del cliente finale.

In particolare, il processo di utilizzo del servizio consiste nei seguenti passaggi:

- *Account aggregation*: L’intermediario finanziario richiede l’accesso ai dati di conto del cliente tramite il servizio Fabrick Pass One Shot. Il cliente finale, reindirizzato ai sistemi Fabrick, aggrega uno o più conti tramite il servizio Fabrick Pass One Shot. In questo modo, i dati estratti possono essere utilizzati per alimentare il motore Fast Scoring.

- *Account data processing and Fast Scoring output*: Al termine del processo di aggregazione del conto, l’intermediario finanziario richiede l’elaborazione dei dati di conto per il calcolo del credit scoring

Attraverso la seguente API **POST prepareSmartScore**

```text
POST /fabrick/api/fabrick/pass/v4.0/access/users/{{userId}}/smart-score

{
  "ateco": "01.13.1"
}
```

dove *ateco* è il codice ATECO ed è un parametro di input opzionale.\
Nel caso di persona fisica sarà quindi omesso, mentre nel caso di persona giuridica può essere inteso come informazione aggiuntiva per ottenere uno score leggermente più preciso.

la risposta sarà semplicemente la seguente:

```text
{
  "errors": [],
  "status": "OK"
}
```

L’intermediario finanziario deve specificare l’identificazione dell’utente per cui viene richiesto lo scoring (*userId*), la forma giuridica dell’azienda cliente e il codice Ateco dell’azienda.\
Per ricercare lo *userId* l’intermediario finanziario deve accedere alle API Fabrick Pass Access.

Dopo aver effettuato la richiesta, l’intermediario finanziario può leggere lo score tramite la API **GET getSmartScore**:

```text
GET /fabrick/api/fabrick/pass/v4.0/access/users/{{userId}}/smart-score
```

La risposta sarà come nel seguente esempio:

```text
{
  "status": "OK",
  "payload": {
    "contractId": "17847",
    "score": "A",
    "scoreValue": "0.013592534698545933",
    "maxInstalment": 500,
    "retrievedDatetime": "2022-06-03T14:48:40.484+0000"
  }
}
```

dove:

- *contractId*: l’id del contratto che collega l’FPP con il PSU. Può essere ignorato
- *score*: il valore alfanumerico (es. *AAA*, *BBB*, ...) rappresentativo del rischio di default del cliente finale. Nel caso di persona fisica il risultato sarà un valore numerico (da 1 a 9 dove 1 è il valore migliore)
- *scoreValue*: il valore numerico (da 0 a 1) rappresentante la probabilità di default del cliente finale
- *maxInstalment*: l’importo massimo della rata mensile (Affordability Model); valore monetario rappresentativo dell’importo massimo mensile pagabile dal cliente finale
- *retrievedDatetime*: la data e ora in cui lo score è stato recuperato

Il calcolo dello score si basa sul saldo corrente e sulla lista dei movimenti. Nel caso in cui non vi siano aggiornamenti negli ultimi 90 giorni,allora verrà restituito un errore.

### Linee guida

Il calcolo dello scoring può richiedere alcuni minuti a seconda del numero di conti e/o del volume di dati da analizzare. Per questo motivo è necessario includere una fase di polling della chiamata **GET getSmartScore** immediatamente dopo la **POST prepareSmartScore**. Si raccomanda di impostare il polling per un massimo di 15 minuti; oltre questo intervallo di tempo verrà restituito un errore. Ad esempio, la frequenza può essere impostata a una chiamata ogni 30 secondi. Il polling può essere interrotto in uno dei due casi:

- si ottiene una risposta HTTP 200 con il valore dello score
- si ottiene uno degli errori indicati nella sezione successiva diverso dal 404

Nel caso di saldo medio inferiore a €100 e FCF medio negativo (Free Cash Flow = capacità mensile di risparmio del cliente), verrà restituito un valore *maxInstalment* pari a 0 poiché il modello presume che il cliente non possa sostenere ulteriori uscite mensili. In ogni caso è possibile che lo *scoreValue* sia maggiore di 0.

### Codici di errore

| Code | Description                                                                                                                                                                                                                                                                                                                                        |
| ---- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 404  | Questo errore (HTTP 404) indica che lo score non è ancora stato calcolato, ma che il processo di calcolo è in corso, quindi il polling deve continuare                                                                                                                                                                                             |
| 422  | Errore di validazione: l’utente può riprovare. Non dovrebbe mai apparire, eventualmente aprire un ticket a Fabrick con i dettagli                                                                                                                                                                                                                  |
| 500  | Errore generico: l’utente può riprovare. Non dovrebbe mai apparire, eventualmente aprire un ticket a Fabrick con i dettagli                                                                                                                                                                                                                        |
| 511  | Cliente con saldo e FCF negativi, questo cliente non è considerato affidabile per definizione. È equivalente a una risposta con rata massima pari a 0                                                                                                                                                                                              |
| 512  | Non ci sono movimenti di conto e quindi non è possibile effettuare il calcolo                                                                                                                                                                                                                                                                      |
| 510  | È l’output che il modello di scoring fornisce se si attiva l’anomaly detection; nel caso di aziende questo si attiva quando il saldo mediano del cliente è compreso tra -40€ e +40€. Fondamentalmente indica che il/i conto/i corrente/i fornito/i non ha/hanno movimenti sufficienti per consentire una valutazione adeguata da parte del modello |
