Vai al contenuto

Payment Provider

Torna a Implementazione.

Panoramica

graph LR Utente -->|Apertura link fornito da ACMESky| UI[Interfaccia utente] Utente -->|Compilazione modulo di pagamento| UI[Interfaccia utente] subgraph Frontend UI[Interfaccia utente] end
graph LR ACMESky -->|POST /payments/request| PP[Payment Provider API] subgraph Backend PP[Payment Provider API] -->|"Salvataggio (transaction_id, richiesta pagamento)"| Redis PP[Payment Provider API] -->|Recupero richiesta tramite transaction_id| Redis end subgraph Frontend UI[Interfaccia utente] -->|"GET /payments/{transaction_id}"| PP[Payment Provider API] UI[Interfaccia utente] -->|POST /payments/pay| PP[Payment Provider API] end

Payment Provider è il servizio che permette:

  • ad ACMESky di avere un intermediario per la gestione dei pagamenti delle offerte da parte dei suoi utenti;
  • all'utente di pagare tali offerte tramite carta di credito.

È stato implementato in maniera semplice ma, al tempo stesso, esaustiva e il più possibile realistica, emulando quanto avviene in altri intermediari di pagamento commerciali.

Dal punto di vista di ACMESky, il Payment Provider permette di:

  • creare una richiesta di pagamento, specificando chi è il ricevente del denaro (ovvero ACMESky stessa), l'importo e una breve descrizione per assicurare l'utente di stare pagando ciò che si aspetta;
  • ricevere un URL da fornire all'utente, per permettere il pagamento, una volta aver correttamente creato la richiesta;
  • essere contattato quando un pagamento viene completato, in modo da poter procedere nel processo di acquisto dell'offerta.

Dal punto di vista dell'utente, il Payment Provider permette di:

  • ricevere i dettagli della richiesta di pagamento elaborata da ACMESky attraverso una pagina web, il cui URL, è stato precedentemente fornito ad ACMESky;
  • inserire i dati di pagamento nella pagina sopracitata e, se sono corretti, inviare il pagamento (ovviamente il pagamento non è assolutamente reale);
  • verificare il codice della carta di credito mediante la formula di Luhn;
  • generare un errore nel pagamento nel caso il CVV inserito sia 456 (non è ovviamente né realistico né una funzionalità di interesse per l'utente, è solo un modo per permettere la generazione di errori in maniera controllata e verificare il corretto funzionamento del sistema anche in queste situazioni).

Pagamento tramite Payment Provider

Pagamento tramite Payment Provider

Torna a Implementazione.