In questa pagina sono presenti i dettagli su alcuni aspetti del processo di pagamento attraverso la pagina di pagamento standard, in modo che si possa averne il pieno controllo.
Accedere ad Fabrick Payment Orchestra Back Office.
Prendere lo shopLogin.
Impostare nel backoffice i due endpoint per la risposta positiva/negativa e opzionalmente l'endpoint per gestire la notifica Server to Server.
Eseguire una chiamata SOAP a WsCryptDecrypt’s Encrypt method.
Rindirizzare l’utente alla pagina di pagamento standard e attendere che il pagamento venga processato.
Una transazione di pagamento è composta da 4 fasi fondamentali nelle quali ci sono uno o più passaggi di comunicazione. In ogni fase, l’informazione necessaria per processare la transazione viene scambiata tra i vari componenti.
Le informazioni richieste per il pagamento vengono prima comunicate a Fabrick Payment Orchestra per essere crittografate. Per garantire un alto livello di sicurezza, nessuna informazione sensibile è comunicata al server del buyer senza essere crittografata.
L’autenticazione del server dell’esercente che richiede servizi di crittografia o decrittazione si esegue verificando:
Validità del Shop Login: il parametro ShopLogin deve corrispondere a un codice registrato nei dettagli dei clienti di Fabrick Payment Orchestra
Indirizzo IP del server: la chiamata all’indirizzo IP del server deve corrispondere a uno degli indirizzi IP configurati nel profilo dell’esercente
ApiKey: è un token unico generato nel backoffice, nella sezione sicurezza, e può essere utilizzato per autenticarsi nelle chiamate inviate verso il server di Fabrack
Status del Shop Login: lo status dell’esercente deve essere attivo (lo status viene gestito dall’amministratore di Fabrick Payment Orchestra e non direttamente dall’esercente).
Se i controlli di autenticazione non vengono superati, verrà restituito un errore specifico, rendendo possibile identificare l’anomalia trovata nel processo di autenticazione.
Alla seguente pagina il dettaglio dei possibili codici di errore.
In questa fase il server dell’esercente richiede il servizio di crittografia a Fabrick Payment Orchestra, ottenendo il codice crittografato che rappresenta la transazione da processare. I dati che identificano una transazione e il loro uso vengono descritti nella sezione API.
Il web service WSCryptDecrypt è disponibile sia in produzione sia in ambiente di test e non richiede alcuna installazione sul server dell’esercente.
L’esercente deve implementare una chiamata al web service che gestisce le richieste per utilizzare il servizio di crittografia di Fabrick Payment Orchestra nella/e pagina/e del negozio virtuale configurata/e per gestire i pagamenti.
Per richiedere il servizio di crittografia è necessario chiamare l’Encrypt method.
Se l’operazione di crittografia si conclude correttamente (il valore del tag TransactionResult è OK),la stringa di codice crittografata restituita da Fabrick Payment Orchestra sarà disponibile leggendo il valore del tag CryptDecryptString.
Se invece ciò non fosse possibile, i valori del tag ErrorCode e ErrorDescription renderanno possibile identificare le ragioni che impediscono l’operazione di crittografia.
Per avere ulteriori dettagli vedi WSCryptDecrypt API
Alcune delle informazioni da comunicare a Fabrack Ecommerce Solutoins sono necessarie per completare il processo di pagamento, mentre altre possono essere omesse senza compromettere il processo della transazione.
Attraverso il Back Office Fabrack gli esercenti possono definire quali informazioni sono necessarie e quali opzionali.
Alcune informazioni che sono essenziali per il processo di pagamento vengono configurate come obbligatorie da Fabrick Payment Orchestra. Questi attributi non possono essere modificati.
La lista completa dei campi può essere visualizzata in WSCryptDecrypt API. Qui elencheremo le informazioni obbligatorie che devono essere comunicate a Fabrick Payment Orchestra XML usando l’ Encrypt method per poter eseguire la transazione. I nomi dei tag sono case-sensitive.
shopLogin
30
Lo shopLogin attribuito da Fabrick Payment Orchestra.
uicCode
3
Codice che identifica la valuta in cui il totale della transazione viene denominato (vedi Tabella dei Codici di Valuta).
amount
9
Totale della transazione. Non inserire il separatore delle migliaia. I decimali, al massimo 2 cifre, sono opzionali e il separatore è il punto.
shopTransactionID
50
Identificatore attribuito alla transazione dell’esercente.
Questi sono solo i campi obbligatori. Ci sono altri campi che possono essere rilevanti se usate un sistema antifrode specifico, o uno dei pagamenti alternativi. Controllare le API per la lista.
Ci sono due endpoint disponibili:
Ambiente di Test:
https://sandbox.gestpay.net/gestpay/GestPayWS/WsCryptDecrypt.asmx?wsdl
Ambiente di produzione:
https://ecommS2S.sella.it/gestpay/GestPayWS/WsCryptDecrypt.asmx?wsdl
Occorre iniziare con una chiamata SOAP ad Encrypt in cui si richiede ad Fabrick Payment Orchestra di processare un pagamento con questi dati:
1<Encrypt>
2 <shopLogin>GESPAY12345</shopLogin><!-- Assigned by Fabrick Payment Orchestra backend -->
3 <uicCode>242</uicCode> <!-- code for Euro -->
4 <amount>1245.6</amount> <!-- the money you want to receive -->
5 <shopTransactionId>34az85ord19</shopTransactionId> <!-- an ID generated by you -->
6</Encrypt>
Fabrick Payment Orchestra risponde come segue:
1<EncryptResult>
2 <GestPayCryptDecrypt xmlns="">
3 <TransactionType>ENCRYPT</TransactionType>
4 <TransactionResult>OK</TransactionResult><!-- everything ok! -->
5 <CryptDecryptString>2C53F1B5...</CryptDecryptString><!-- crypted string with sent info -->
6 <ErrorCode>0</ErrorCode><!-- ...another way to say Ok! -->
7 <ErrorDescription/>
8 </GestPayCryptDecrypt>
9</EncryptResult>
Con la stringa criptata (2C53F1B5...) e lo shopLogin è possibile reindirizzare l’utente verso la pagina di pagamento.
Dopo aver ottenuto il codice di dati crittografati (come descritto nella sezione precedente), l’acquirente deve essere indirizzato sulla pagina di pagamento del server di Fabrick Payment Orchestra all’indirizzo seguente:
https://ecomm.sella.it/pagam/pagam.aspx?a=<ShopLogin>&b=<encrypted string>
in ambiente di test:
https://sandbox.gestpay.net/pagam/pagam.aspx?a=<ShopLogin>&b=<encrypted string>
La chiamata alla pagina si farà passando due parametri:
a Il codice che identifica l’esercente (Shop Login)
b La stringa di codice crittografato che identifica la transazione
La pagina di pagamento acquisisce i parametri e verifica l’identità (il parametro a deve riferirsi a un esercente riconosciuto) e la sicurezza dei dati della transazione (il parametro b deve corrispondere alla stringa di dati crittografati comunicata dall’esercente durante la fase precedente).
Se vengono superati i controlli, l’acquirente visualizzerà la pagina di pagamento e dovrà inserire i dati richiesti per completare il processo di pagamento.
Se non vengono superati i controlli, non verrà visualizzata la pagina di pagamento e il processo passa alla fase successiva per comunicare il risultato della transazione.
Utilizzando la nostra pagina di pagamento :
Fabrack gestisce la sicurezza delle transazioni
Si possono scegliere i sistemi di pagamento attivati da mostrare, come PayPal, UnionPay o MyBank
È possibile personalizzare il layout inserendo il proprio logo
Dopo che il compratore ha concluso il pagamento Fabrack comunica il risultato della transazione sia all’esercente che all’acquirente.
Una volta concluso un pagamento senza errori, Fabrick Payment Orchestra redireziona l’utente alla URL configurata in caso di risposta di successo. In caso contrario, verrà reindirizzato alla URL specificata per la risposta negativa.
Il reindirizzamento avviene con due parametri:
a che è lo shopLogin
b che contiene una stringa criptata con l’esito della transazione
A questo punto il server del merchant deve effettuare la chiamata WsCryptDecrypt.Decrypt di nuovo per decriptare la risposta del gateway e mostrare il messaggio corretto al cliente.
Su Yourshop.com è stata configurata la stessa risposta sia per esito positivo sia per esito negativo. Naturalmente è possibile differenziare le due risposte. L’acquirente viene reindirizzato verso:
http://www.yourshop.com/response.php?a=GESPAY12345&b=2C53F1B5...
response.php occorre che sia una pagina che:
possa ricevere due argomenti, a e b.
decripti b
Mostri all’acquirente l’esito (ricevute, e-mail, …)
Concluso il pagamento Fabrick Payment Orchestra comunica al server dell’esercente tramite url Server to Server (opzionale) una stringa criptata con l’esito della transazione. Se nel backoffice non è stata configurata la URL Server to Server, la comunicazione avverrà sulla url di risposta positiva.
La notifica viene inoltrata con una chiamata server-to.server alla pagina appositamente configurata sul server dell’esercente (l’URL della pagina di notifica è una delle informazioni che costituiscono il profilo dell’esercente, configurabile attraverso il Back Office Fabrack). La sintassi della chiamata è la seguente:
http://<url server to server>?a=<ShopLogin>&b=<encrypted string>
La chiamata alla pagina viene eseguita passando due parametri:
a il codice che identifica l’esercente (Shop Login)
b la stringa di codice crittografata che contiene il risultato della transazione
Se ci sono errori di comunicazione, Fabrick Payment Orchestra eseguirà numerosi tentativi di inoltro per due giorni dopo la transazione.
Ricevuti a e b, è possibile inviare la chiamata Decrypt (dal webservice WsCryptDecrypt) per conoscere l’esito della transazione ed aggiornare un database, inviare l’email di conferma al cliente ecc. ecc.
L’esercente riceverà anche una e-mail di notifica di risultato della transazione all’indirizzo configurato nel suo profilo.
Inoltre la transazione processata può essere visualizzata accedendo al Back Office Fabrack nella sezione Active Report.
A seconda delle impostazioni M.O.T.O., la transazione può essere impostata in stato Authorized (il totale della transazione è bloccato, ma non trasferito); o Settled, (MOV – il totale è acquisito dall’account dell’acquirente).
Nel caso in cui la transazione venga autorizzata, la transazione deve essere movimentata nel Back Office di Fabrack.
Fabrick Payment Orchestra comunica immediatamente il risultato della transazione. L’acquirente può anche scaricare la ricevuta in PDF.
L’acquirente riceverà anche una e-mail di notifica del risultato della transazione all’indirizzo fornito nella pagina di pagamento, se indicato.
Se a conclusione del pagamento l'acquirente non clicca sul tasto "Torna al negozio", il pagamento non sarà finalizzato e il server di Fabrack non invierà la notifica Server-to-Server all'esercente.