Passa al contenuto principale

FSP Standalone

Nella modalità standalone è responsabilità dell'aggregatore comunicare gli attributi del Money-In e specificare l'allocazione delle relative quote tra i vari client. In questa pagina descriveremo come gestire il processo tramite API.

Creazione della richiesta di money-in

Il servizio POST CreateMoney-in consente all'aggregatore di comunicare a FSP un accredito atteso, ovvero i dati necessari per verificare i movimenti sul conto dell'aggregatore. Di seguito un esempio di utilizzo di questo servizio:

Esempio di input:

I dettagli dei campi inclusi nella richiesta sono spiegati nella documentazione tecnica del servizio.

Di seguito alcune note sull'utilizzo del servizio:

  • Le valute utilizzate devono essere tra quelle supportate da FSP.
  • Tutti gli importi nella richiesta CreateMoney-in devono utilizzare la stessa valuta.
  • FSP non supporta la conversione valutaria.
  • L'attributo reconciliationCallbackUri, se fornito dal chiamante, consente a FSP di inviare una callback al sistema del client per notificare l'esito della riconciliazione contabile.
  • Il servizio può restituire come esito OK o KO.
  • OK significa che il processo di riconciliazione è stato preso in carico; se ha esito positivo, FSP avvia il Cashin e il Cashout come specificato nel contratto con i client.
  • I client sono identificati tramite la propria Partita IVA.
  • Sono ammessi solo identificativi di client attivi nel dominio dell'aggregatore.
  • I clientId non devono essere ripetuti all'interno della richiesta.
  • La richiesta createMoney-in è identificata dal campo creditTransferId.
  • Il valore di creditTransferId può essere riutilizzato solo dopo che la richiesta precedente ha completato la riconciliazione con esito KO.

Processo di riconciliazione FSP

Una volta acquisiti i dati dell'accredito atteso, FSP esamina gli accrediti osservati ricevuti sul conto dell'aggregatore. La riconciliazione viene eseguita tra un accredito atteso e un accredito osservato che condividono lo stesso identificativo univoco, transferId. La riconciliazione verifica quindi che i due accrediti corrispondano secondo le seguenti regole:

  • L'acquirer associato all'accredito atteso deve essere correttamente identificato e riconosciuto.
  • Entrambi gli accrediti devono essere denominati nella stessa valuta.
  • Gli importi dell'accredito atteso e di quello osservato devono essere identici.

Il processo di riconciliazione può avere tre esiti:

  • OK: La riconciliazione è stata completata con successo.
  • KO: Almeno una regola di riconciliazione è stata violata; in questo caso, la richiesta può essere reinviata con i dati corretti.
  • IN_PROGRESS: La riconciliazione è ancora in corso, poiché non tutti i dati richiesti relativi agli accrediti sono ancora disponibili.

Quando la riconciliazione viene infine completata, l'esito viene automaticamente aggiornato a OK o KO.

Callback di riconciliazione

FSP può inviare una callback al chiamante per notificare l'esito del processo di riconciliazione. Ciò avviene se il campo reconciliationCallbackUri è stato fornito nella richiesta POST CreateMoney-in. La struttura del payload della callback è illustrata di seguito.

{
"reconciliationOutcome": {
"creditTransferId": "TRN/CRO",
"reconciliationStatus": "OK||KO||IN_PROGRESS",
"moneyIn": {
"amount": {
"value": 100,
"currency": "EUR"
}
},
"observedTransfer": {
"amount": {
"value": 100,
"currency": "EUR"
}
}
}
}

La tabella seguente descrive la struttura del payload della callback.

CampoTipoObbligatorioUtilizzo
reconciliationOutcomeObjectYContenitore dei dati di risposta.
reconciliationOutcome.creditTransferIdStringYIdentificativo del bonifico bancario, TRN/CRO, condiviso dall'accredito atteso e da quello osservato.
reconciliationOutcome.reconciliationStatusEnum: OK, KO, IN_PROGRESSYStato della riconciliazione.
reconciliationOutcome.moneyInObjectYDettagli dell'importo.
reconciliationOutcome.moneyIn.amountObjectYImporto dell'accredito.
reconciliationOutcome.moneyIn.amount.valueNumber, due decimaliYTracciamento del ciclo di vita del conto.
reconciliationOutcome.moneyIn.amount.currencyString ISO 4212YCodice valuta, 3 caratteri.
reconciliationOutcome.observedTransferObjectYDescrizione dell'accredito osservato.
reconciliationOutcome.observedTransfer.amountObjectNDettagli dell'importo, se disponibili.
reconciliationOutcome.observedTransfer.amount.valueNumber, due decimaliNDettagli dell'importo, se disponibili.
reconciliationOutcome.observedTransfer.amount.currencyString ISO 4212NCodice valuta, se disponibile.

Lo stato IN_PROGRESS viene riportato dalla callback quando la riconciliazione non è stata completata entro la soglia temporale definita.

Aspetti tecnici relativi all'invocazione della callback

La callback viene inviata utilizzando il metodo POST all'endpoint specificato nella richiesta POST CreateMoneyIn. In caso di fallimento dell'invocazione, FSP applica le proprie politiche di retry. La callback viene invocata senza alcun meccanismo di autorizzazione; tuttavia, Fabrick può fornire l'elenco degli indirizzi IP da inserire in whitelist.