Pagamento presso frontend dell'EC
Questo processo viene attivato nel momento in cui l'operazione di pagamento è avviata dal front end di un EC, il workflow si prefigge lo scopo di aver minor impatto possibile su EC e PSP, infatti, le interfacce di comunicazione sono le stesse utilizzate per il pagamento presso i PSP, quindi ne condividono tutti i presupposti.
quando il front end dell'EC riceve la richiesta di pagamento di uno o più avvisi la inoltra con una redirect a Checkout, l'interfaccia di front end di PagoPA S.p.A.;
Checkout invia n activatePaymentNotice, in base al numero di avvisi che ha ricevuto, chiedendo al Nodo di attivare gli n pagamenti presso l’EC;
ogni singola richiesta di attivazione del pagamento giunge all’EC per mezzo della paGetPayment;
Checkout, ottenuti i dettagli dei pagamenti, verifica la corrispondenza dei dati delle convenzioni (agreement), se presenti, tra quelli ricevuti in POST e quelli ricevuti tramite metadata della activatePaymentNotice response, nel caso non ci fosse corrispondenza viene inviato un esito negativo all'EC (outcome = KO);
nel caso non ci siano problemi sulle eventuali convenzioni Checkout gestisce le operazioni di pagamento effettivo da parte dell'utente, una volta concluse effettua una redirect verso il frontend dell'EC e invia gli esiti al Nodo che provvede ad inviarli al PSP tramite la pspNotifyPayment vers. 2, nel caso di risposta KO da parte del PSP il processo viene interrotto e il pagamento deve essere stornato;
nel caso il PSP inviasse una sendPaymentOutcome dopo aver risposto con un KO alla pspNotifyPayment vers. 2 il Nodo risponderebbe con un KO per segnalare l'esito discorde;
in caso di accettazione della pspNotifyPayment vers. 2 il PSP è tenuto a fornire l'esito del pagamento entro 2sec con la sendPaymentOutcome vers. 2, che contiene un singolo outcome per tutti i tokens attivati nelle fasi precedenti;
nel caso il PSP inviasse un outcome = KO dopo aver accettato la pspNotifyPayment vers. 2 il Nodo risponderebbe con un KO per segnalare l'esito discorde;
tramite la primitiva paSendRT viene inoltrata agli n EC interessati al pagamento la receipt (ricevuta) solo se il pagamento è stato effettuato, la receipt è un oggetto generato dalla piattaforma pagoPA;
quando l'EC riceve la receipt deve chiudere la posizione debitoria e considerarla interamente saldata.
Per la gestione degli errori fare riferimento a Gestione degli errori.
Last updated