Passa al contenuto principale

PASS One Shot

Obiettivo​

Pass One Shot è il prodotto Fabrick che consente alla FPP di ottenere informazioni su conti, transazioni e saldi in modo iin maniera one-shot, ovvero non ricorrente/continuativo; una istantanea delle informazioni del conto o dei conti del PSU.

Casi d'uso: Verifica del merito creditizio/scoring del cliente, verifica dell’iban del cliente, verifica del profilo bancario del cliente e così via.

In questo caso la FPP ha bisogno di accedere ai dati una sola volta, senza alcuna identificazione dell’utente e senza impostazione delle credenziali.

Il servizio può essere configurato da Fabrick nei seguenti modi:

  • Default: le informazioni di conto del PSU avranno una profondità di 90 giorni.
  • Historical: le informazioni di conto del PSU avranno una profondità superiore a 90 giorni. Il numero di mesi richiesto può essere scelto dalle FPP ma in ogni caso saranno valide le disponibilità che ciascuna Banca rende disponibili.

Utilizzo​

Gli attori sono del prodotto sono come sempre:

Fabrick: l’AISP certificato che fornisce i servizi

FPP: un cliente corporate (azienda) che sottoscrive il servizio PASS AISP.

PSU (final user): Persona Fisica o Giuridica proprietaria di un conto bancario (o conto di pagamento o simile). che concede alla FPP e a Fabrick l’autorizzazione ad accedere alle informazioni del conto.

oneShotDiagram

Di seguito una breve descrizione del diagramma

  1. Il PSU richiede il servizio alla FPP
  2. Il frontend dell’FPP inoltra al backend la richiesta di registrazione utente
  3. Il backend dell’FPP inizializza il flusso con l’endpoint Fabrick POST CreateUserLite
  4. Fabrick restituisce l’initiationRedirectUrl
  5. L’FPP reindirizza il PSU al frontend di Fabrick
  6. Il PSU esegue tutti i passaggi necessari per terminare il processo.
  7. Il PSU verrà reindirizzato dal frontend di Fabrick al frontend dell’FPP
  8. Il backend dell’FPP può utilizzare gli endpoint del pacchetto Fabrick Access per richiedere informazioni di conto, transazioni e saldi

Flow​

Quando Fabrick riceve la prima POST CreateUserLite viene attivato un workflow interno

pass-one-shot

Esistono due casi:

Il PSU non è cliente di Fabrick Pass Standard​

  1. l’utente completa lo step di accettazione dei termini e condizioni
  2. l’utente seleziona banca/conto
  3. il sistema avvia il processo di consenso e recupera i dati utili.

Il PSU è già cliente di Fabrick Pass Standard​

Fabrick riconosce se reindirizzare un utente al login attraverso i suoi dati personali. Per procedere è necessario avere un KYC valido in Fabrick Pass, altrimenti l’utente potrà solo continuare con una nuova registrazione (caso precedente). Nel caso di login gli step saranno:

  1. l’utente inserisce le credenziali

  2. l’utente accetta lo step di accettazione dei termini e condizioni

  3. l’utente seleziona i conti

    • l’utente può inserire un nuovo conto
    • l’utente può selezionare un conto esistente.

Dati obbligatori​

For Natural Person:

  • Nome e Cognome
  • Data di nascita
  • Luogo di nascita
  • Paese
  • Indirizzo Mail
  • Usercode

For Legal Person:

  • Ragione Sociale dell’azienda
  • Numero di registrazione dell’azienda (Ragione Sociale/ Partita IVA)
  • Nome e Cognome del titolare
  • Data di nascita del titolare
  • Luogo di nascita del titolare
  • Indirizzo Mail
  • Usercode

Nonostante si tratti di persona giuridica, i campi relativi alla persona fisica sono comunque obbligatori per consentire il cross-check con il prodotto Pass Standard e quindi sfruttare le aggregazioni già attive. I dati possono riferirsi a un soggetto dell’azienda con le opportune autorizzazioni, ma allo stesso tempo facilmente coinvolto nell’attività. Ad esempio direttamente il CEO nelle piccole – medie aziende e un delegato o manager nelle aziende più grandi. In pratica, potrebbe essere colui che effettivamente ha le autorizzazioni ad aggregare i conti (chi possiede lo smartphone, il token, ..).

Comunicazione al PSU​

In caso di successo verrà inviata una mail di report direttamente alla casella di posta del cliente.

Il corpo della mail contiene:

  • Data e ora dell’operazione
  • Nome e informazioni dell’FPP
  • Informazioni sui dati ai quali il cliente consente l’accesso
  • Link ai termini e condizioni.

Informazioni conti del PSU​

L’FPP potrà recuperare saldo e dati delle transazioni tramite le API del pacchetto Access per 30 minuti a partire dalla conclusione del flusso di aggregazione.

POST CreateUserLite​

Questo endpoint consente agli FPP di inizializzare il prodotto Fabrick Pass Lite. Tramite questo processo l’utente verrà reindirizzato a Fabrick per eseguire tutti i passaggi necessari affinché l’FPP possa ottenere tutte le informazioni sui conti dell’utente.

Request

POST /api/fabrick/pass/v4.0/access/users/lite

{
"mode": "REDIRECT",
"completionRedirectUrls": {
"onSuccess": "http://google.it",
"onFailure": "http://yahoo.it"
},
"customerInfo": {
"subjectType": "NATURAL_PERSON",
"companyUserCode": "aliasUser",
"name": "Mario",
"surname": "Rossi",
"birthDate": "1989-01-01",
"birthPlace": "Biella",
"homeAddress": {
"country": "IT"
},
"contacts": {
"mail": "mario.rossi@mail.com"
},
        "bankId": 5,
     "bankCustomerServiceCode": "IBP01",
"businessName": "",
"vatNumber": ""
}
}

il body della request contiene una serie di informazioni relative all’utente..

È possibile registrare sia una persona fisica sia una persona giuridica, solo in questo secondo caso sarà necessario valorizzare i seguenti parametri:

  • businessName; nome dell’azienda
  • vatNumber: partita IVA dell’azienda

e subjectType sarà impostato a LEGAL_PERSON.

Inoltre, nel caso in cui si conoscesse già la banca del proprio cliente (ed eventualmente anche il serviceCode) allora si possono aggiungere al body di richiesta i parametri: bankId e bankCustomerServiceCode, in questo modo il PSU salterà la sezione di selezione banca, semplificando così ulteriormente il flusso. I due parametri possono essere recuperati tramite l'API POST SearchBanks.

Di seguito un esempioa di risposta:

{
"status": "OK",
"payload": {
"mode": "REDIRECT",
"completionRedirectUrls": {
"onSuccess": "https://fabrick.com",
"onFailure": "https://google.it"
},
"customerInfo": {
"subjectType": "NATURAL_PERSON",
"companyUserCode": "aliasUser",
"name": "Mario",
"surname": "Rossi",
"birthDate": "1989-01-01",
"birthPlace": "Biella",
"homeAddress": {
"country": "IT"
},
"contacts": {
"mail": "mario.rossi@mail.com"
},
"businessName": "",
"vatNumber": ""
},
"userOnboardingLiteId": "cf01680d-1234-5678-1234-4606790a8162",
"initiationRedirectUrl": "https://www.uat.fabrickpass.com/web/fabrick/pass/v4.0/shareAccounts/cf01680d-c986-48bf-ac13-4606790a8162?jwtToken=eyJ...eM",
"status": "WORK_IN_PROGRESS"
}
}

dove:

  • userOnboardingLiteId: indica l’identificativo univoco del flusso, utile in caso di richiesta di supporto.
  • initiationRedirectUrl: il link al quale il cliente deve essere reindirizzato per iniziare la fase di aggregazione. Il link ha una durata di 3,5 ore.

GET OnBoardingUserLite​

È possibile ottenere informazioni sul workflow utente invocando il seguente servizio:

GET api/fabrick/pass/v4.0/access/users/lite/onboardings/{{userOnboardingid}}

Un esempio di risposta potrebbe essere

{
"status": "OK",
"payload": {
"mode": "REDIRECT",
"completionRedirectUrls": {
"onSuccess": "https://fabrick.com",
"onFailure": "https://google.it"
},
"customerInfo": {
"subjectType": "NATURAL_PERSON",
"companyUserCode": "fede21@mail.com",
"name": "Pier Paolo",
"surname": "Verdi",
"birthDate": "1954-11-28",
"birthPlace": "Pordenone",
"homeAddress": {
"address": "Via Sant'Eusebio",
"buildingNumber": "70",
"postalCode": "56010",
"city": "Pisa",
"province": "PI",
"country": "IT"
},
"contacts": {
"mail": "fede21@mail.com"
}
},
"userOnboardingLiteId": "441b2f18-8ac2-4209-8af5-f7ed19482616",
"initiationRedirectUrl": "https://www.uat.fabrickpass.com/.../onboarding/441...616?jwtToken=eyJra...CM",
"status": "COMPLETED_SUCCESS",
"stepCode": "PASS_FPP_SERVICE_AUTH_WORKFLOW",
"userId": "900061546"
}
}

dove:

  • userId indica l’id dell’utente appena creato. Questo parametro è presente solo se il flusso è terminato con successo.
  • status indica lo stato del flusso: per tutti i dettagli fare riferimento al documento Workflow status
  • stepCode indica lo step della UI:
    • se il parametro è assente l’utente non ha ancora iniziato il flusso
    • POS0: il PSU ha iniziato il flusso
    • POS1: il PSU ha selezionato la banca
    • PASS_FPP_SERVICE_AUTH_WORKFLOW: il PSU ha completato il flusso