# Introduzione

Il modulo Consorzio Triveneto per Magento adesso offre anche una connessione con NEXI ed offre a tutti gli esercenti una via per ricevere i pagamenti online dai propri clienti sfruttando le caratteristiche avanzate IPG del POS Virtuale.

La soluzione è rivolta alle varie tipologie di aziende on line per la vendita di servizi e prodotti standard fino ai prodotti digitali in piena sicurezza. Bassilichi, tramite la controllata Consorzio Triveneto, offre alle Aziende operanti nel settore delle vendite a distanza uno strumento completo e sicuro per l’accettazione dei pagamenti con carta di debito/credito.

La molteplicità delle soluzioni, unite alla sicurezza e affidabilità del servizio, fanno di Bassilichi uno dei principali attori del settore, sia in ambito nazionale sia internazionale.

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvhu-ce02IU-cOxb%2Fconsorzio_triveneto_magento_logo.png?generation=1558364800991955\&alt=media)


# Cosa è un POS?

Un POS virtuale è un’applicazione informatica che permette ai merchant di accettare pagamenti online tramite carta di credito. Quando entri in un negozio fisico spesso hai la possibilità di pagare con carta di credito o di debito usando un’apposita macchinetta, detta Point Of Sale (punto di vendita) o POS. Il POS virtuale funziona in modo simile, ma per i negozi online.

## POS virtuale: processo di pagamento

Quando un cliente effettua un ordine nel tuo negozio online, compila i campi richiesti e alla fine sceglie il metodo di pagamento. A questo punte viene reindirizzato alla pagina di un POS virtuale, dove inserisce i dati di pagamento.

Grazie al POS virtuale, tu merchant non hai accesso ai dati di pagamento dei tuoi clienti, perciò non devi preoccuparti di gestirli e di conformarti alle regole PCI DSS (Payment Card Industry Data Security Standard). Inoltre, i clienti potranno pagare con il loro metodo preferito nel tuo negozio online e tu potrai guadagnare la loro fiducia.

## Come fa il POS Virtuale ad inviare il denaro nel mio conto corrente?

Come precedentemente descritto, il POS virtuale non è altro che un software che ha dei parametri di configurazione da impostare nel suo pannello di controllo. Ogni POS Virtuale ha delle credenziali di accesso ai servizi POS rilasciati dalla propria banca. Tali credenziali sono registrate negli archivi della banca e vengono controllate ad ogni transazione eseguita con il POS virtuale.

Tali credenziali sono collegate ad un profilo POS il quale è connesso al vostro conto corrente bancario. Quindi al click sulla conferma d'ordine, il POS virtuale domanderà l'accesso al sistema sicuro della banca, inviando le credenziali precedentemente inserite e permetterà al cliente di visualizzare la pagina di pagamento sicura.

Il cliente inserirà i dati della propria carta di credito e l'istituto di credito (VISA, Mastercard, ecc...) invierà alla banca collegata al profilo POS virutale l'ammontare accreditato dal cliente.

## Perché usare un POS virtuale?

* I tuoi clienti possono pagare nel tuo negozio online con carta di credito
* Non devi essere PCI compliant
* Non devi gestire, salvare e conservare i dati di pagamento dei tuoi clienti

## POS virtuale: quali metodi di pagamento sono disponibili?

Un POS virtuale offre solo pagamenti online con le carte di credito e di debito, ma non con altri metodi. Normalmente sono accettati tutti i principali circuiti internazionali, come Visa, Mastercard, American Express e Maestro.


# Internet Payment Gateway

L'acronimo IPG significa Internet Payment Gateway. Un Gateway di pagamento è nientr'altro che la trasposizione virtuale di un POS fisico che viene utilizzato da tutti i commercianti al momento del pagamento della merce venduta.

Un Internet gateway di pagamento permette ai commercianti di elaborare gli ordini con carta di credito dal loro sito web, o di un "Virtual Terminal", in tempo reale. Con questo metodo, il cliente conoscerà immediatamente dopo la presentazione del suo ordine web, se la sua carta di credito approva oppure non approva il pagamento.

Tramite la piattaforma IPG è possibile gestire il pagamento con carta di credito per ordini di acquisto effettuati sul sito web del Merchant, in modalità server to server protetta dal protocollo 3-D Secure.


# 3D Secure

Effettuare acquisti con la tua carta di credito su internet, richiede alcune cautele: verifica sempre che l'esercente indichi tutti i suoi dati, evitare sempre di inserire il numero della tua carta in siti non protetti da sistemi di sicurezza internazionali, leggere e conservare le condizioni del servizio offerto ed eventuali clausole contrattuali e prestare attenzione alle condizioni di pagamento del servizio. In generale, diffidare di offerte "incredibilmente vantaggiose": se non si tratta di iniziative di aziende note e affidabili, possono nascondere spiacevoli sorprese. Il 3D Secure è il sistema di protezione antifrode Verified by Visa e Mastercard® SecureCode™ che garantisce una tutela per gli acquisti online. Ad ogni acquisto si riceve un SMS contenente un codice di sicurezza unico da inserire al momento del pagamento per confermare il tuo acquisto.


# Transazioni con carta di credito

## Come funzionano le transazioni con carta di credito?

Conoscere il funzionamento del flusso del processo della transazione di pagamento della carta di credito aiuta a comprendere anche l'iter utilizzato da Magento e dai moduli di pagamento. Le azioni di base del ciclo di vita delle transazioni sono:

* Autorizzazione (Authorization)
* Addebito (Capture)
* Storno (Refund)
* Annullamento (Void)

Queste azioni di flusso sono suddivise in operazioni più specifiche che possono essere chiamate in modo differente in base al gateway di pagamento. Di seguito sono riportati alcuni elementi di base rilevanti:

### **Autorizzazione**

E’ un blocco temporaneo di un importo specifico su una carta di credito. Questa operazione non genera nessun tipo di movimento bancario sul conto corrente del cliente perchè non viene contabilizzato, quindi, **non è un addebbito**. L’autorizzazione viene rilasciata dalla banca di riferimento, oppure dal gestore del circuito di carte di credito. L'autorizzazione permette quindi di “prenotare” un importo prima che l’operazione venga effettivamente effettuata. In questo modo è garantita in ogni caso la disponibilità dell’importo al momento della prenotazione definitiva. L'operazione di autorizzazione ha una validità di 30gg.

### Addebito

La cattura di un importo può avvenire direttamente oppure dopo l'autorizzazione. In questo caso la banca o l'istituto di credito sbloccherà la "prenotazione" qualora vi fosse stata una precedente autorizzazione e addebiterà al cliente l'importo richiesto. Tale operazione genera un vero e proprio movimento del denaro dall'istituto di credito verso la banca dell'esercente che ha richiesto il pagamento di un bene o servizio.

### Storno

L'operazione di storno può essere effettuata solamente dopo una cattura e mai dopo l'autorizzazione. In questo caso la banca o l'istituto di credito movimenterà il denaro dal conto dell'esercente al conto del cliente.

### Annullamento

L'annullamento della transazione avviene solamente se vi è un'autorizzazione attiva non addebitata. In questo caso l'autorizzazione precedentemente richiesta verrà annullata senza generare alcun movimento del denaro.

## Magento States & Status

Magento gestisce gli status degli ordini attraverso due parametri fondamentali :

* **States**
  * **nuovo**: L'ordine è nuovo, non processato e non preso in carico da un gateway di pagamento o altro.
  * **In attesa del pagamento**: Il pagamento è in corso attraverso il gateway selezionato dal cliente. Gli elementi presenti nell'ordine sono stati già eliminati dall'inventario di Magento.
  * **In Elaborazione**: La fattura è stata creata, l'ordine è pronto per essere processato.
  * **Completo**: La spedizione è completata.
  * **Chiuso**: L'ordine è chiuso prima che la fattura sia stata creata. Gli elementi ritornano in stock.
  * **Cancellato**: Una nota di credit è stata effettuata
  * **In Attesa**: State manuale per mantenere in sospeso un ordine.
  * **Revisione Pagamento**: In attesa di un'integarzione di informazioni da parte del payment gateway: Utilizzato spesso dal modulo di Paypal.

Ogni States di Magento può essere mappato in più Status. Gli Status possono essere impostati manualmente dal proprietario del negozio Magento. I gateway di pagamento di solito hanno la capacità di impostare lo status diverso dal parametro predefinito dall'utente. I gateway di pagamento introducono talvolta nuovi status e non utilizzano quelli di default.


# Gestione degli Ordini

La gestione degli ordini in Magento è molto sofisticata e vi sono moltissime soluzioni che potrebbero essere adottate ma la domanda che ci si pone sempre è: **Generare l'ordine prima del pagamento ?** oppure **attendere il pagamento prima di creare un ordine?** Prima di tutto bisogna considerare cosa è un ordine dal punto di vista commerciale.

## Gli Ordini

La definizione della parola **Ordine in ambito commerciale è la richiesta di una merce o di un servizio**. Quindi un ordine commerciale è la richiesta di determinato prodotto nel negozio magento da parte di un "potenziale cliente". Consideriamo il richiedente un "**potenziale**" cliente **poichè non lo è ancora, visto il mancato pagamento della merce o del servizio**. Quindi un ordine potrebbe esistere ma non aver alcun valore finchè il "potenziale cliente" o il "richiedente" non effettua il pagamento.

Al momento della conferma dell'ordine in Magento, il richiedente esprime la sua volontà nell'interesse di un determinato servizio o merce e Magento può "riservare o mantenere la disponibilità" di tale prodotto per un determinato periodo e/o dopo un'azione personalizzata da parte del gateway di pagamento.

Magento ha diverse funzionalità legate alla gestione degli ordini e noi **ci focalizzeremo sulla gestione dello status prima e dopo il pagamento dell'ordine**.

Abbiamo detto che il richiedente ha espresso il proprio interesse nell'acquisto di un determinato prodotto o servizio al click di conferma d'ordine che può reindirizzare il richiedente al gateway sicuro della banca.

Vi sono moltissimi modi di effettuare un pagamento, ma noi ci soffermeremo sui **pagamenti con redirect** chiamati **Hosted** (pagamenti ospitati nel server della banca).

Durante il redirect verso il server sicuro della banca, **Magento DEVE creare un ordine per mantenere "la richiesta" che il cliente ha generato durante l'uso del carrello in archivio**, poichè il reindirizzamento verso un sito differente **cancella i dati temporanei del carrello** perdendo definitivamente le informazioni. In questo determinato istante l'ordine viene creato e registrato in archivio con un codice ordine univoco e con uno status della transazione in "Pending Review" o "Pagamento in revisione" **inviando una notifica al cliente relativa all'ordine generato**. **La notifica non alcun valore fino al ricevimento del documento commerciale più importante: la Fattura.**

Ecco i casi più frequenti riscontrati:

1. il cliente effettua il pagamento e ritorna sul sito internet dell'esercente
   * un messaggio lo avviserà dell'avvenuto pagamento. Magento imposterà un nuovo status "In Elaborazione" (Processing)
2. il cliente non effettua il pagamento e ritorna sul sito internet dell'esercente
   * un messaggio lo avviserà sull'errore generato. Magento creerà un nuovo carrello con i vecchi prodotti scelti dal cliente e cancellerà il vecchio ordine mantenendo traccia della transazione annullata da parte del cliente.
3. il cliente effettua il pagamento e chiude il browser
   * il server della banca contatterà il negozio Magento inviando una notifica sull'esito del pagamento (solo in live mode). Magento imposterà un nuovo status "In Elaborazione" (Processing)
4. il cliente non effettua il pagamento e chiude il browser
   * il server della banca contatterà il negozio Magento inviando una notifica sull'esito del pagamento (solo in live mode). Magento imposterà un nuovo status "Cancellato" (Canceled)

Seguendo quanto detto in precedenza, in tutti i casi su riportati Magento mantiene traccia di ciò che il cliente ha ordinato e sarà possibile conoscere ciò che è successo durante la fase di acquisto attraverso i log del modulo di pagamento (vedi[ Logging, Debug](https://github.com/shinesoftware/consorzio-triveneto/tree/4126f79932ed8ae5131c4cdad2ededcae5304171/logging-debug-ed-errori-comuni.md)).

Il software invia solamente un'email alla conferma della pagina success di Magento con i dettagli dell'ordine.

L'email che conferma il pagamento verrà inviata dalla banca all'esercente ed al cliente al termine della transazione di pagamento. [  <br>](https://docs.setefi.shinesoftware.it/transazioni-con-carta-di-credito.html)


# Servizi Offerti

Consorzio Triveneto offre a tutti i commercianti una soluzione di pagamento completa in ogni suo dettaglio. Si rivolge a tutti i tipi di commercianti, dai semplici e piccoli negozi delle PMI italiane alle grandi multinazionali offrendo una soluzione di pagamento all'avanguardia che spazia dalla semplice Hosted 3D Secure alla versione più completa MO.TO, che consente la richiesta diretta di addebito. Una soluzione su misura per ogni esercente.

## Procedure di sicurezza supportate <a href="#procedure-di-sicurezza-supportate" id="procedure-di-sicurezza-supportate"></a>

* Verify By VISA
* Mastercard SecureCode

## Integrazione con il checkout (Interfacce) <a href="#integrazione-con-il-checkout-interfacce" id="integrazione-con-il-checkout-interfacce"></a>

L'estensione di pagamento si adatta al sistema integrato del carrello del negozio Magento. La comunicazione fra il server dell'esercente e la banca avvengono attraverso il sistema API della Consorzio Triveneto. Il cliente non noterà tale processo. Per i pagamenti con carta di credito, i dati sono trasferiti via API fornite da Consorzio Triveneto attraverso tutta la fase di checkout dell'ordine per controllare e salvare le informazioni sensibili nei server della Consorzio Triveneto con connessione sicura. Lo stato delle transazioni vengono inviate dalla Consorzio Triveneto in un secondo momento, aggiornando lo status corrente dell'ordine mantenendo una sincronia fra i due sistemi (banca/magento).

## Configurazione e gestione delle opzioni dell'estensione <a href="#configurazione-e-gestione-delle-opzioni-dellestensione" id="configurazione-e-gestione-delle-opzioni-dellestensione"></a>

L'estensione offre un nuovo menù Consorzio Triveneto nell'are amministrativa di Magento all'interno del menù Vendite > Metodi di Pagamento > Consorzio Triveneto. Questo contiene l'accesso a tutte le configurazioni ed opzioni del modulo, così come l'impostazione degli account di accesso, dei file di log ed altre informazioni.


# Pagamenti Supportati

Questa estensione supporta i seguenti metodi di pagamento attraverso la piattaforma messa a disposizione da Consorzio Triveneto.

* VISA
* MASTERCARD
* VISA ELECTRON
* JBC
* American Express
* Diners Club
* Maestro


# Caratteristiche

La modalità server to server consente di avere un modulo di inserimento della carta di credito direttamente nella pagina di checkout di Magento e permettere ai clienti di inserire i propri dati sensibili durante la fase di checkout. Il proprietario del negozio Magento dovrà fornire alla propria banca dietro richiesta da parte della Consorzio Triveneto un documento che attesti il rispetto delle regole indicate nel prospetto di sicurezza delle transazioni on line PCI DSS. La banca può in qualsiasi momento interrompere il servizio di POS Virtuale ritenendo responsabile di qualsiasi danno alla banca stessa nonchè alla clientela il proprietario del negozio.

Durante la fase di checkout il negozio Magento dovrà offrire garanzie ai visitatori attraverso una politica di sicurezza di alto livello, offrendo una connessione sicura SSL ed un supporto tecnico ai visitatori/acquirenti.

**Cos’è lo standard PCI-DSS?**

Lo standard PCI-DSS (Payment Card Industry Data Security Standard) è stato elaborato con lo scopo di uniformare le modalità di gestione della sicurezza dei dati delle carte di credito da parte del consorzio PCI creato da American Express, Discover Financial Services, JCB, MasterCard Worldwide e Visa International.

**Chi si deve adeguare?**

Lo standard deve essere rispettato da tutte le entità (esercenti, service provider, banche) coinvolte in una transazione mediante carta di credito che comporti la trasmissione, l’utilizzo o la memorizzazione del Primary Account Number (PAN) della carta. Tutti i settori commerciali ne sono interessati.


# Requisiti Minimi

Negozio **Magento Community Edition**:

* Versione Magento CE 1.9.3.x
* Versione Magento CE > 2.1.8


# Installazione e Aggiornamento

Prima di ogni installazione e modifica strutturale di Magento, **è caldamente consigliato effettuare un backup dei dati e dei files** ed accertarsi di aver effettuato un backup corretto. Solo dopo tale operazione potrete effettuare l'**installazione prima nel vostro ambiente di svilupp**o e successivamente nel vostro ambiente di produzione.

Dopo aver acquistato il modulo di pagamento riceverete il file compresso che contiene il modulo via email. Decomprimete il file ricevuto nel vostro computer ed inviate il contenuto della cartella scompattata, all'infuori del file di pdf, nella cartella di **root del vostro sito internet** via [FTP](https://it.wikipedia.org/wiki/File_Transfer_Protocol). Entrate nell'area amministrativa di Magento (se eravate già dentro l'area amministrativa scollegatevi e ricollegatevi).

* Svuotare la **Cache di Magento**
* Accedete a: **Sistema > Configurazione** > **Metodi di Pagamento** , troverete il nuovo modulo installato oppure a **Vendite** > **Metodi di Pagamento** > **Consorzio Triveneto**
* Se si era già connessi nell'area amministrativa di magento disconnettersi e rieffettuare il login.

## Reset Configurazione

Per effettuare un reset della configurazione del modulo basta eseguire una query nel database oppure semplicemente far click sulla funzione Reset presente nel pannello di controllo del modulo:\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlve50ejTRMkljRcY%2Fconstriv-tools.png?generation=1558364800734603\&alt=media)

## Menu

Il menù amministrativo Magento permette una scorciatoia diretta alla configurazione del modulo. Vedi foto.

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlve9AXbpBaeLrKe9%2Fmenu.png?generation=1558364800619457\&alt=media)


# Magento CE 1.9.3.x

## Installazione in Magento CE 1.9.x <a href="#install" id="install"></a>

Per installare il modulo ufficiale del Consorzio Triveneto, decomprimere il file zip nel desktop, utilizzare un client FTP e copiare nella root di Magento i files.

Entrate nell'area amministrativa di Magento (se eravate già dentro l'area amministrativa scollegatevi e ricollegatevi).

Svuotare la Cache di Magento

Accedete a: **Sistema** > **Configurazione** > **Metodi di Pagamento** , troverete il nuovo modulo installato oppure a **Vendite** > **Metodi di Pagamento** > **Consorzio Triveneto**

Se si era **già connessi nell'area amministrativa di magento** **disconnettersi** e **rieffettuare il login**.

Adesso è possibile iniziare la configurazione del modulo.

## Aggiornamento del modulo <a href="#update" id="update"></a>

Il modulo ufficiale del Consorzio Triveneto salvo in casi di modifica della versione richiede una semplice sostituzione/sovrascrittura dei files presenti nel server web con quelli presenti nel file zip ricevuto. Successivamente bisogna cancellare la cache (obbligatorio), e ricompilare il codice (facoltativo).

* [BACKUP](https://it.wikipedia.org/wiki/Backup) dei files e dei dati
* Caricamento dei file ricevuti via [FTP](http://lmgtfy.com/?q=cosa+è+ftp)
* Cancellazione della cache
* Compilazione del codice
* Disconnessione dall'area amministrativa

Qualora qualcosa non funzioni come aspettato richiedete il servizio di aggiornamento alla Shine Software che **offre un servizio dedicato all'aggiornamento dei moduli Magento**. **Ripristinate il database ed i file all'ultimo backup e chiedete la nostra assistenza.**

La richiesta di assistenza tecnica per qualsiasi errore riscontrato durante la fase di installazione, configurazione, uso del modulo avrà un **costo di un'ora di** [**Assistenza Tecnica Magento**](http://www.shinesoftware.com/programmatore-magento.html) per il controllo, la correzione e la riconfigurazione del modulo. Per qualsiasi richiesta di assistenza usare il gestore delle segnalazioni.

### Permessi di Files e Cartelle <a href="#permessi-di-files-e-cartelle" id="permessi-di-files-e-cartelle"></a>

I permessi dei files e delle cartelle del modulo di pagamento devono seguire lo standard richiesto da Magento. L'utente proprietario dei files e delle cartelle deve essere lo stesso utente usato dal webserver (Apache / nGinx). Quindi, tranne nel caso in cui si effettua l'upload usando delle credenziali differenti da un utente riconosciuto dal sistema come proprietario del progetto del vostro negozio, non si dovranno impostare dei permessi specifici dopo il caricamento del modulo via FTP. Ad ogni modo i permessi da adottare per un progetto Magento sono ampiamente discussi nel sito internet della [Magento](http://devdocs.magento.com/guides/m1x/install/installer-privileges_after.html).

### Compilazione <a href="#compilazione" id="compilazione"></a>

Se il negozio magento ha la funzionalità di compilazione attivata, bisognerà ricompilare il codice e fare attenzione durante la compilazione affinchè tutti i file richiesti dal modulo siano stati correttamente spostati nella cartella /includes

### Configurazione & Cache <a href="#configurazione--cache" id="configurazione--cache"></a>

Durante la fase di configurazione,**Magento potrebbe ripresentare i vecchi dati di configurazione**. Bisogna fare molta attenzione alla Cache di Magento che mantiene tutti i dati di configurazione. Anche se il sistema presenta la gestione Cache disabilitata è consigliato un aggiornamento.


# Aggiornamento Vecchie Versioni

Il nuovo modulo ufficiale del Consorzio Triveneto richiede un'attenta pulizia del sistema dal vecchio modulo presente nel vostro negozio Magento. Per disinstallare il modulo bisogna prima di tutto preparare una **copia di backup** del sito internet (**files/database**) e successivamente cancellare le seguenti cartelle e files ([vecchie versioni](https://gist.githubusercontent.com/shinesoftware/daedf66f417bd08a43c3da3e3e5735f0/raw/fbe368bf7a74e298f68c5d739bc94ec29b7b6d70/consorzio-triveneto-3.8.txt) oppure [>= 2.0.0.2](https://gist.githubusercontent.com/shinesoftware/daedf66f417bd08a43c3da3e3e5735f0/raw/fbe368bf7a74e298f68c5d739bc94ec29b7b6d70/consorzio-triveneto-2.0.0.2.txt)) e cancellare all'interno della tabella core\_config\_data i records legati al modulo. Bisogna fare attenzione al prefisso delle cartelle di Magento usato in fase di installazione del software e modificare la query proposta di seguito con il proprio prefisso.

Ecco la query per comodità:

> DELETE from core\_config\_data where path like '%trivenetobanks\_cc%';

Se non si aggiornano anche i records collegati al metodo di pagamento si rischia un errore nella griglia ordini. Per far conoscere a Magento che il modulo è stato modificato eseguire la seguente query:

> UPDATE sales\_flat\_order\_payment set method = 'constriv\_hosted' WHERE method = 'trivenetobanks\_cc';

La Shine Software **offre un servizio dedicato all'aggiornamento dei dati e dei moduli Magento**. Se qualcosa non dovesse andare per il verso giusto, ripristinate il database ed i file all'ultimo backup e chiedete la nostra assistenza.

La richiesta di assistenza tecnica per qualsiasi errore riscontrato durante la fase di installazione, configurazione, uso del modulo avrà un **costo di un'ora di** [**Assistenza Tecnica Magento**](http://www.shinesoftware.com/programmatore-magento.html) per il controllo, la correzione e la riconfigurazione del modulo. Per qualsiasi richiesta di assistenza usare il gestore delle segnalazioni.


# Magento CE 2.x

{% hint style="info" %}
Prima di ogni installazione e modifica strutturale di Magento, **è caldamente consigliato effettuare un backup dei dati e dei files** ed accertarsi di aver effettuato un backup corretto. Solo dopo tale operazione potrete effettuare l'**installazione prima nel vostro ambiente di sviluppo** e successivamente nel vostro ambiente di produzione.
{% endhint %}

### Installazione via Shell

Se si desidera installare il modulo via shell bisogna eseguire il seguente comando dalla root di Magento.

```
composer config repositories.core vcs git@bitbucket.org:shinesoftware/core.git
composer config repositories.constriv vcs git@bitbucket.org:shinesoftware/constriv.git
composer require shinesoftware/core:dev-master
composer require shinesoftware/constriv:dev-master
```

All'esecuzione del comando il software *composer* avvierà la procedura di recupero del *repository* presso bitbucket.org.&#x20;

{% hint style="info" %}
Per poter installare il modulo bisogna avere la licenza attiva per ogni dominio configurato in Magento.&#x20;
{% endhint %}

**Per poter connettere il vostro composer al repository ufficiale serve una chiave SSH valida che permetterà al sistema Bitbucket.org di inviarvi il pacchetto.**

{% hint style="info" %}
Per poter recuperare la chiave pubblica in un server unix-like dovrete eseguire il seguente comando nel terminale linux:

cat \~/.ssh/id\_rsa.pub
{% endhint %}

> Dopo aver copiato la chiave pubblica dovrete aprire una segnalazione su <https://shinesoftware.it/> e richiederne la registrazione per il dominio indicato in fase di acquisto.


# Disinstallazione

La disinstallazione di un modulo dentro Magento 2.x è molto semplice: basta cancellare i le righe che sono state inserite dentro il file composer.json oppure eseguire i seguenti comandi:

```
composer remove shinesoftware/mercury
composer config --unset repositories.constriv
```

Bisogna anche pulire il proprio database e per poterlo fare eseguite quanto riportato qua in basso.

{% hint style="info" %}
Aprire il proprio database collegato a Magento e cancellare le occorrenze legate alla configurazione del modulo dentro la cartella **core\_config\_data** per rendere il proprio archivio pulito.
{% endhint %}


# Lingue e Traduzioni

per modificare la lingua in un negozio multiview dovreste impostare le varie view alle lingue presenti in Magento.

Ad esempio:

* Store A
  * Italiano (View)
    * Locale Italiano (Italia)
  * Inglese (View)&#x20;
    * Locale English (United States)

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvdMJrI7dJHutZ5I%2Fmagento-stores.png?generation=1558364799398220\&alt=media)In questo modo quando gli utenti selezioneranno la versione italiana o inglese il modulo riconoscerà la lingua assegnata alla view.

Ecco un esempio relativo all'impostazione della lingua inglese per la view dedicata alla versione inglese del negozio.![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvdO3swJ2zF2lVGo%2Fmagento-locale.png?generation=1558364799648398\&alt=media)

## Come tradurre il testo contenuto dentro il modulo?

Il modulo offre una traduzione in Italiano ed in Inglese utilizzando un file csv contenuto dentro la cartella app/locale/it\_IT/Shinesoftware\_NomeModulo.csv (magento 1.9.x) e app/code/Shinesoftware/NOME-MODULO/i18n/en\_US.csv (versione inglese per Magento 2.x).

Per aggiungere una lingua e/o aggiungere delle traduzioni basta creare/modificare i seguenti files:

* app/code/Shinesoftware/NOME-MODULO/i18n/**it\_IT**.csv (magento 2.x)
* app/locale/**it\_**\_**IT**/Shinesoftware\_\_NomeModulo.csv (Magento 1.9.x)

Per creare il file serve un semplice editor di testo come il blocco note di Windows o TextWrangler per Mac. Il file deve essere caricato sul server nella posizione su indicata. Il testo da tradurre deve essere così composto:

> "This text must be translated", "Questo testo deve essere tradotto"

Bisogna fare attenzione alle virgolette ed alla virgola separatrice. Ogni frase deve essere racchiusa fra le virgolette e separata con la virgola. Ogni frase deve essere su inserita in una linea differente.

Al termine dell'operazione bisogna aggiornare la cache di Magento.

Il testo da tradurre si trova sempre dentro i files .phtml a vostra disposizione dentro le seguenti percorsi:

* app/code/Shinesoftware/NOMEMODULO/view/frontend/templates/...
* app/design/frontend/base/default/template/NOMEMODULO/...

Aprire i file con un editor di testo e recuperare il testo da tradurre copiandolo nel file csv che avete precedentemente creato. Ad esempio, in un file \*.phtml di un modulo per Magento 1.9.x potreste trovare:

> \<?php echo Mage::helper('NOMEMODULO')->\_\_("If you are the store owner check the log files in your Magento store and contact the bank helpdesk") ?>

e nella versione Magento 2.x potreste trovare:

> \<?php echo $this->\_\_("If you are the store owner check the log files in your Magento store and contact the bank helpdesk.") ?>

Per tradurre le suddette frasi bisogna recuperare solamente ciò che appare fra le virgolette:

* If you are the store owner check the log files in your Magento store and contact the bank helpdesk

e riportare la frase nel file csv precedentemente creato:

> "If you are the store owner check the log files in your Magento store and contact the bank helpdesk.", "Se sei il proprietario del negozio controlla i file di log nel tuo negozio Magento e contatta il supporto della banca"

Come detto in precedenza, dopo aver caricato il file nella stessa posizione sul server, bisogna aggiornare la cache di magento e la traduzione apparirà.

Qualora non doveste riuscire a tradurre qualcosa, potete richiedere il servizio [Programmatore Magento](https://shinesoftware.it/programmatore-magento.html), ed un nostro tecnico creerà l'integrazione per voi.


# Template Personalizzato

I file di stile ed i file di layout standard del modulo sono posizionati nella cartella

* /app/design/frontend/base
* /app/design/adminhtml/default

Qualora il template installato nel negozio non rispetti la gerarchia del Core di Magento il modulo potrebbe non mostrare le interfacce grafiche non generando un errore visibile. Controllare i file system.log ed exception.log per comprendere dove il vostro template si aspetta di trovare i files.

Il modulo ha in sè alcune porzioni di template presenti dentro la cartella /app/design/frontend/**base** come indicato sopra. La path base indica che se Magento non dovesse trovare i file dentro al template personalizzato risalirebbe al "**template base**" nel quale vi sono tutti i files di template del core di Magento compresi anche i files del modulo.

*I file template di successo e di fallimento vengono sovrascritti. Qualora vi fossero delle funzionalità integrate direttamente nei file di template delle suddette pagine, bisogna controllare se il metodo di "innesto" del codice personalizzato rispetti il sistema di layout di Magento. Se, ad esempio, un codice javascript **è stato "incollato" all'interno del template** della pagina di successo e/o fallimento del proprio tema/template, bisogna correggerne il metodo di inserimento via blocchi creando un'apposita estensione, così come indicato dalle linee guida di innesto dei blocchi statici di Magento.*

In questi casi basterebbe un controllo approfondito del template Magento accertandosi della correttezza delle path usate nel caricamento del layout.

## Personalizzazione del Redirect

E' possibile conoscere tutti i blocchi generati dal modulo dal file di layout che si trova in */app/design/frontend/base/default/layout/nomemodulo.xml*&#x20;

Le pagine di redirect sono definite sotto l'elemento: "**\[nomemodulo]\_\[metododipagamento]\_redirect**". E' possibile creare un blocco statico ed aggiungerlo usando un innesto del blocco nel file xml.

Quindi ricapitolando:

1. Creare il blocco statico in Magento
2. Modificare il file di layout precedentemente creato inserendo il blocco statico con il comando indicato di seguito
3. Aggiornare la cache di Magento

> \<reference name="root">\
> \<action method="setTemplate">\<template>page/1column.phtml\</template>\</action>\
> **\<block type="cms/block" name="your\_block\_id\_1\_name" after="-">**\
> **\<action method="setBlockId">**\
> **\<block\_id>your\_block\_id\_1\</block\_id>**\
> **\</action>**\
> **\</block>**\
> \</reference>

In questo modo durante la creazione della pagina di redirect magento intercetterà che bisognerà includere il nuovo blocco statico.

## Cache System

Prima di ogni operazione sui files di template di Magento bisogna accertarsi che nel negozio non sia attiva alcun tipo di cache. Quindi disabilitare tutte le cache attive come ad esempio:

* Cache interna di Magento
* Cache APC o Varnish, xCache, ecc...
* Compilazione del codice sorgente di Magento

E' possibile richiedere assistenza all'installazione del modulo ai tecnici della Shine Software scegliendo il servizio di Assistenza Tecnica Programmatore Magento presente al link: [Assistenza Magento](https://github.com/shinesoftware/consorzio-triveneto/tree/4126f79932ed8ae5131c4cdad2ededcae5304171/www.shinesoftware.com/programmatore-magento.html)


# Soluzioni di Pagamento

Per semplificare le attività di realizzazione dell’interfaccia al “**Payment Gateway**”, Consorzio Triveneto ha studiato degli specifici plug-in che vengono forniti al Merchant e che consentono una rapida integrazione delle funzioni di pagamento all’interno del proprio sistema.Sfruttando il modulo di pagamento della Shine Software l'esercente potrà integrare velocemente il metodo di pagamento in pochi minuti e disporre di un POS Virtuale.

## Terminali Abilitati

L'istituto Consorzio Triveneto attiva i servizi di pagamento Server to Server a tutte le Banche, le quali ne richiedano l'attivazione per conto dell'esercente. Il codice di accesso ai servizi viene chiamato Terminale. Più avanti durante la configurazione del modulo si noterà un parametro da impostare chiamato **Terminal ID**.

Il parametro Terminal ID è il codice identificativo del terminale attivato nei server della Consorzio Triveneto. Alla sottoscrizione del servizio POS Virtuale potrebbe capitare che un terminale non sia stato attivato oppure il codice inserito non presente negli archivi generando un codice di errore durante la transazione.

Il servizio Server to Server è un profilo che offre la diretta connessione con i server della banca. Tutte le comunicazioni inviate al server della banca vengono elaborate dal modulo di pagamento di Magento generandone un log (vedi [Logging & Debug](/logging-and-debug)).

Il modulo Magento della Shine Software rende disponibile un completo sistema di **Back office** in cui è possibile visualizzare la propria operatività ed effettuare la gestione amministrativa delle transazioni, ad esempio la richiesta di addebito del Titolare della carta al momento dell’evasione dell’ordine o di riaccredito in caso di reso.\
Le funzioni amministrative sono automatizzate interfacciando il sistema Magento al “Payment Gateway”, con l’interfacciamento diretto.


# 3D Secure Server to Server

La modalità **server to server** prevede l’autorizzazione on line della richiesta di pagamento, con invio da parte dell’Azienda venditrice dei dati relativi alla carta di credito. Questa modalità è utilizzata anche per la richiesta dei pagamenti relativi ad ordini ricevuti tramite gli altri canali di vendita (ad esempio corrispondenza o telefono, m-commerce, etc.).

La soluzione **server to server** sfruttata dal modulo Magento permette al cliente di effettuare il pagamento immediato inserendo i dati della propria carta di credito direttamente nella pagina protetta del negozio Magento.

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvtOGqmHrqOedsa0%2Fcheckout-standard.png?generation=1558364815396270\&alt=media)

Ecco un esempio di visualizzazione della sezione del metodo di pagamento direttamente all'interno di uno dei moduli Magento più famosi: "[Lotus Breath One Step Checkout](https://store.lotusbreath.com/lotusbreath-one-step-checkout.html)". Compatibile con la versione > 4.2.0.

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvtQEVYELkEI1rbf%2Fonestepcheckout-S2S.png?generation=1558364801576398\&alt=media)

## Modulo di Pagamento <a href="#configurazione" id="configurazione"></a>

Osservando il modulo di pagamento in dettaglio possiamo scoprirne alcune utili funzionalità come la selezione automatizzata della carta di credito ed ai suggerimenti relativi al codice di verifica. La grafica standard è perfettamente integrata allo stile di Magento ed al modulo One Step Checkout.

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvtSS10tLOEH9YSl%2Fcredit-card-moto.png?generation=1558364799697299\&alt=media)

## Integrazione <a href="#configurazione" id="configurazione"></a>

Il metodo di pagamento si integra in Magento sfruttando tutte le funzionalità del CORE del software eCommerce al fine di eseguire i pagamenti onsite.


# Configurazione Server to Server & Moto

Dopo aver avuto accesso nel pannello di controllo amministrativo di Magento bisogna far click nella voce di menu Consorzio Triveneto > Configuration > eCommerce 3D Secure - Server to Server > Settings. Il pannello di controllo del metodo si presenterà come da foto.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvUNwS47Ib6Ay409%2Fconfiguration.png?generation=1558364800933887\&alt=media)

Nel pannello di controllo del metodo di pagamento selezionato vi è una sezione che consente una configurazione più semplice delle opzioni consentite.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvvVDw43muLFIwSq%2Fconstriv-s2s-configuration.png?generation=1558364800610617\&alt=media)

L'opzione principale si trova proprio sotto tutte le opzioni:

* **Abilitato**

Per attivare il modulo l'opzione "Abilitato" deve essere attiva.

Il pannello di configurazione del metodo di pagamento è diviso in tre sotto sezioni:

* Required Settings
* Base Settings

Per poter utilizzare il metodo di pagamento nella propria installazione Magento bisogna disporre delle credenziali fornite dalla banca di test e/o di produzione. Senza tali informazioni non sarà possibile attivare il metodo di pagamento. Per delle credenziali di test generiche è possibile utilizzare le credenziali della Shine Software presenti nel documento.

## Required Settings <a href="#required-settings" id="required-settings"></a>

Le impostazioni richieste minime si trovano in questo pannello. Configurando questo pannello, il modulo sarà funzionante sia nell'area amministrativa di Magento che nell'area pubblica. Di seguito una foto della sezione.

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvvYr7yfDdPf01SS%2Frequired-settings.png?generation=1558364800730610\&alt=media)

|                      | PARAMETRI                                                      |
| -------------------- | -------------------------------------------------------------- |
| Use CVV Verification | Controllo formale del codice CVV inserito dal cliente          |
| Credit Card Types    | Lista delle carte di credito attivabili. Vedi contratto banca. |
| Password             | Credenziali fornite dalla banca                                |
| Tranportal ID        | Credenziali fornite dalla banca                                |
| Title                | Titolo visibile nell'area di checkout dalla clientela          |

## Base Settings <a href="#base-settings" id="base-settings"></a>

La sotto sezione "Impostazioni di Base" offre una serie di parametri che permetteranno all'esercente di personalizzare il comportamento del modulo durante le fasi operative.

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvv_A6vh1doue6H6%2Fconsorzio-triveneto-base-settings.png?generation=1558364800629694\&alt=media)

|                                 |                                                                               |
| ------------------------------- | ----------------------------------------------------------------------------- |
| Sort Order                      | Impostazione dell'ordine di visualizzazione pubblica del metodo di pagamento. |
| Payment to applicable countries | Paesi di provenienza nel quale il metodo di pagamento sarà visibile           |
| Auto Invoice                    | Fatturazione automatizzata e cattura diretta dell'importo .                   |


# Mo.To - Mail Order & Telephone Order

Con la parola MO.TO. (Mail Order/Telephone Order) indichiamo i pagamenti effettuati in modalità Server to Server, nei quali **non viene richiesta l’autenticazione 3DSecure** del titolare.

In questi casi, la fase di pagamento si esaurisce con l’invio verso Consorzio Triveneto di una richiesta di pagamento contenente tutti i dati necessari per effettuare il pagamento e la ricezione di una risposta in modalità sincrona contenente l’esito del pagamento stesso. Nei casi in cui è previsto che il titolare sottoponga i dati relativi alla propria carta di credito direttamente al sistema del Commerciante, **lo stesso è soggetto alle normative PCI-DSS**; Consorzio Triveneto e le banche ad essa collegate si riservano la possibilità di richiedere un documento che ne attesti la certificazione.

## Creazione Ordine Amministrazione MO.TO <a href="#creazione-ordine-amministrazione-moto" id="creazione-ordine-amministrazione-moto"></a>

Nell'area amministrativa degli ordini di Magento è possibile realizzare un ordine usando in combinazione al metodo MO.TO al fine di effettuare un pagamento diretto sfruttando la tecnologia Magento ed il POS Virtuale della Consorzio Triveneto. Tale funzionalità è prevista solamente per contratti in cui l'esercente potrà effettuare Autorizzazioni dirette senza il sistema 3D Secure. Contattare la propria banca per ulteriori dettagli.

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvYWfL7WN8IhtS0y%2Fadmin-payment-form.png?generation=1558364800172209\&alt=media)


# Hosted 3D - HPP

La soluzione Hosted 3D Secure offre agli esercenti **un modo semplice, veloce e sicuro per ricevere i pagamenti con carta di credito, e digital wallet**, dai loro clienti utilizzando un redirect durante la fase di pagamento al sito sicuro della banca.

Tale soluzione **non richiede alcuna certificazione di sicurezza PCI-DSS** poichè la sicurezza della transazione di pagamento viene delegata all'istituto Consorzio Triveneto. Il cliente si troverà in **un sito internet protetto e sicuro** in cui potrà indicare le informazioni sensibili quali carta di credito e/o password ai servizi Digital Wallet.

La pagina visualizzata dal cliente viene chiamata "**Hosted Payment Page**", il cui cliente dovrà **selezionare la modalità di pagamento preferita**. Le soluzioni offerte della Consorzio Trivento sono disponibili alla pagina "[Pagamenti Supportati](/pagamenti-supportati)".

## Compatibilità

Il modulo è compatibile con le vecchie piattaforme Consorzio Triveneto che con le nuove IPG rilasciate alla fine del 2016.

## Magento Checkout

Durante la fase di checkout del carrello in Magento, ed in particolare durante la selezione del metodo di pagamento attivo nel negozio, il cliente visualizzerà il nome del metodo di pagamento, una descrizione scelta dall'esercente ed un avviso di reindirizzamento alla conferma dell'ordine.

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvfXOgMe1XKlCN5v%2Fhosted3d-secure.png?generation=1558364799048714\&alt=media)

Durante il reindirizzamento al server della banca, il cliente visualizzerà temporaneamente una pagina personalizzabile in cui verrà avvisato del reindirizzamento.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvfZBBf-pD1maKFa%2Fconstriv-redirection-page.png?generation=1558364799352500\&alt=media)Il reindirizzamento avverrà automaticamente e qualora vi fosse un'impostazione differente del browser che non consente l'uso di javascript, il cliente potrà manualmente accedere alla pagina di pagamento effettuando un click al link indicato nella pagina.

Al caricamento dell'interfaccia semplice e sicura della banca, l'utente dovrà selezionare il metodo di pagamento desiderato.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvfaB7WHimULdPkp%2Fconstriv-selection-page.png?generation=1558364800873981\&alt=media)Le opzioni poste in questa pagina di selezione sono attivabili solamente dalla Consorzio Triveneto, in base al contratto stipulato con la banca. Il cliente sceglierà il metodo di pagamento desiderato facendo un semplice click, ad esempio su Credit Card ed apparirà la pagina dedicata.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvfcZBdUO2slRqVQ%2Fconstriv-cc-page.png?generation=1558364814960243\&alt=media)Dopo aver inserito le informazioni richieste dalla banca come i dettagli della carta di credito da usare per effettuare il pagamento della merce desiderata, il cliente dovrà far click sul bottone PAY presente nella pagina ed attendere il completamento della transazione di pagamento.

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvfe2tb-SvxJGUvY%2Fconstriv-processing.png?generation=1558364801321144\&alt=media)

*Durante il controllo della carta di credito da parte della banca, i server di quest'ultima tenteranno di accedere al negozio dell'esercente per effettuare un controllo dei dati inviati alla richiesta di pagamento iniziale. A tal punto bisogna fare molta attenzione durante l'installazione del modulo poichè il negozio deve essere raggiungibile dall'esterno e senza alcun blocco di sicurezza (password e/o firewall). **Se il negozio risultasse inaccessibile, la banca potrebbe confermare il pagamento via notifica email ma il cliente verrebbe comunque reindirizzato alla pagina di fallimento di Magento.***

Al termine del pagamento il server della banca reindirizzerà l'utente nella pagina di conferma del negozio Magento solamente se la transazione è avvenuta correttamente. In tutti gli altri casi il cliente verrà avvisato dell'avvenuto fallimento della transazione offrendo la possibilità di ritentare il pagamento.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvfgnrFK9atA22bO%2Fconstriv-payment-unsuccessful.png?generation=1558364799369172\&alt=media)Se tutte le operazioni di installazione e configurazione del modulo sono state effettuate correttamente, al termine del pagamento del cliente, quest'ultimo verrebbe reindirizzato al sito dell'esercente nella pagina di successo. Il cliente riceverà via email la notifica di avvenuta creazione dell'ordine ed il carrello verrebbe correttamente svuotato.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvfiUtPPDbYbF9e6%2Fconstriv-payment-successful.png?generation=1558364799304087\&alt=media)

Tutte le operazioni vengono registrate dal modulo nel proprio file di LOG (vedi [Logging & Debug](https://github.com/shinesoftware/consorzio-triveneto/tree/4126f79932ed8ae5131c4cdad2ededcae5304171/logging-and-debug.md\)\)\)).


# Configurazione HPP

Dopo aver avuto accesso nel pannello di controllo amministrativo di Magento bisogna far click nella voce di menu Consorzio Triveneto > Configuration > Hosted 3D Secure > Settings. Il pannello di controllo del metodo si presenterà come da foto.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvT53k9nIa-YYz7j%2Fconstriv-hosted-configuration.png?generation=1558364800320451\&alt=media)

Nel pannello di controllo del metodo di pagamento selezionato vi è una sezione che consente una configurazione più semplice delle opzioni consentite.

L'opzione principale si trova proprio sotto tutte le opzioni:

* **Abilitato**

Per attivare il modulo l'opzione "Abilitato" deve essere attiva.

Il pannello di configurazione del metodo di pagamento è diviso in tre sotto sezioni:

* Required Settings
* Base Settings

Per poter utilizzare il metodo di pagamento nella propria installazione Magento bisogna disporre delle credenziali fornite dalla banca di test e/o di produzione. Senza tali informazioni non sarà possibile attivare il metodo di pagamento. Per delle credenziali di test generiche è possibile utilizzare le credenziali della Shine Software presenti nel documento.

## Required Settings <a href="#required-settings" id="required-settings"></a>

Le impostazioni richieste minime si trovano in questo pannello. Configurando questo pannello, il modulo sarà funzionante sia nell'area amministrativa di Magento che nell'area pubblica. Di seguito una foto della sezione.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvT7cM0C2rC40LR-%2Fconstriv-hpp-required-configuration.png?generation=1558364801230309\&alt=media)

|                  | PARAMETRI                                                                                                         |
| ---------------- | ----------------------------------------------------------------------------------------------------------------- |
| Endpoint URI     | Piattaforma di destinazione in base alle profilo esercente.                                                       |
| Debug            | Impostazione della modalità da utilizzare durante le transaz.                                                     |
| New Order Status | Status dell'ordine prima del reindirizzamento del cliente                                                         |
| Transaction Type | Tipologia di transazione da richiedere alla banca                                                                 |
| Tranportal ID    | Codice identificativo del terminale esercente rilasciato dallabanca alla sottoscrizione del servizio POS VIRTUALE |
| Password         | Chiave di accesso fornita dalla banca                                                                             |
| Title            | Titolo visibile nell'area di checkout dalla clientela                                                             |

## Base Settings <a href="#base-settings" id="base-settings"></a>

La sotto sezione "Impostazioni di Base" offre una serie di parametri che permetteranno all'esercente di personalizzare il comportamento del modulo durante le fasi operative.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvT9akhx5mLo9JDZ%2Fconstriv-hpp-base-configuration.png?generation=1558364799613998\&alt=media)

|                                 | PARAMETRI                                                                                                         |
| ------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| Sort order                      | Posizione metodo di pagamento nella pagina di checkout                                                            |
| Payment to applicable countries | Paesi di provenienza nel quale il metodo di pagamento saràvisibile                                                |
| Checkout option description     | Descrizione personalizzata visibile nel checkout al cliente                                                       |
| Transaction Type                | Tipologia di transazione da richiedere alla banca                                                                 |
| Tranportal ID                   | Codice identificativo del terminale esercente rilasciato dallabanca alla sottoscrizione del servizio POS VIRTUALE |
| Password                        | Chiave di accesso fornita dalla banca                                                                             |
| Title                           | Titolo visibile nell'area di checkout dalla clientela                                                             |

## Custom Hosted Page Style

Questa sezione di configurazione del modulo **non è indispensabile al fine di ricevere i pagamenti** dalla clientela ma aiuta nella **configurazione della richiesta da effettuare alla banca** per la **personalizzazione della pagina HPP** nei loro server.

In assenza di personalizzazione, la HPP viene proposta con il Layout e la grafica standard predisposti dalla banca. Il Merchant può applicare la personalizzazione in totale autonomia utilizzando apposite funzionalità presenti nel sito di Back Office.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvTBOFooV6Mhzbhg%2Fconstriv-hpp-customization-configuration.png?generation=1558364814723984\&alt=media)

|                           | PARAMETRI                                                                           |
| ------------------------- | ----------------------------------------------------------------------------------- |
| Header                    | Blocco statico da applicare alla pagina HPP                                         |
| Footer                    | Blocco statico da applicare alla pagina HPP                                         |
| Body                      | Stile CSS da applicare al corpo della pagina                                        |
| Page                      | Pagina da personalizzare (hosted, mybank, selection page)                           |
| Enable                    | Attivazione della funzionalità                                                      |
| Send Custom Style Request | Invio di una richiesta ben descritta al servizio helpdesk dellaConsorzio Triveneto. |


# Fatturazione Automatizzata

Automatismi per velocizzare il workflow aziendale

Il modulo ha un cronjob (operazione pianificata) che consente di controllare gli ordini con status "**processing**" che devono essere ancora fatturati.

{% hint style="info" %}
Tutti gli ordini autorizzati dalla banca hanno lo status "processing".
{% endhint %}

La funzionalità permette di far generare la fattura automaticamente per tutti gli ordini con transazione autorizzata e confermata.

Per poter attivare l'auto-fatturazione basta accedere come amministratore nel pannello di controllo del modulo sotto la voce AutoInvoice ed impostare il campo su Yes.


# Test & Live Mode

## Test & Live Mode <a href="#credenziali--carte-di-credito-di-test" id="credenziali--carte-di-credito-di-test"></a>

La Consorzio Triveneto mette a disposizione degli esercenti un accesso diretto ai metodi di pagamento offerti usando delle credenziali di test che permettono di controllare il corretto funzionamento delle varie soluzioni. E' possibile inoltre simulare le transazioni di pagamento in un ambiente protetto ed identico all'ambiente di produzione usando alcune carte di credito di test. Vi sono degli accorgimenti da adottare durante le fasi di test:

* non si può testare un modulo se si è in fase di produzione. La fase di produzione viene impostata dalla banca con un nuovo profilo esercente.
* non si può testare il modulo se la banca non riesce a connettersi al dominio in cui è installato il modulo. Il dominio deve essere accessibile pubblicamente. Quindi non è possibile testare le funzionalità in localhost. Vedi sezione Testing di seguito.
* il negozio Magento deve essere accessibile (frontend) senza password (vedi htpasswd).&#x20;

Alla sottoscrizione dei servizi POS Virtuali, la banca rilascerà le credenziali di test per effettuare alcuni test direttamente nel vostro negozio usando il modulo della Shine Software.

**Attenzione**! Se la password risulta scaduta, l'accesso al servizio POS verrà inibito generando un errore di **Invalid Tranportal ID** vedi capitolo: [Logging, Debug, Errori Comuni](/logging-and-debug)

## Testing & Licenza

Per effettuare un testing completo del modulo rispettando le regole indicate in precedenza, bisogna creare un negozio di sviluppo in un sottodominio per il dominio licenziato. Ad esempio, dev.miodominio.it dove miodominio.it è il dominio licenziato. In caso venga installato un modulo licenziato per un altro dominio si riceverà un errore bloccante.

## Pannello di Controllo

Per poter visualizzare i dettagli del profilo UFFICIALE creato dalla Consorzio Triveneto basta accedere al link <https://ipg.constriv.com/IPGWeb/app/mps/login/Merchant>

## Configurazione per la modalità di TEST

Per impostare il negozio Magento in modalità di test bisogna impostare i seguenti parametri necessari per la connessione corretta al server di test:

1. Tranportal ID:  **89027777**
2. Password: **test**
3. **Debug: YES**

## Configurazione per la modalità LIVE

Per impostare il negozio Magento in modalità di LIVE bisogna impostare i seguenti parametri necessari per la connessione corretta al server LIVE:

1. Tranportal ID (Ufficiale)
2. Password (Ufficiale)
3. **Debug: NO**

## Test Credit Cards

Qui di seguito una lista di carte di credito di prova che permetteranno all'esercente di testare il proprio negozio durante la fase di pagamento delle merci o dei servizi.

1. VISA **4012001038443335** 01/2020 206 Transazione con carta non 3-D Secure - esito positivo
2. VISA **4539990000000020** 01/2020 206 Transazione con carta 3-D Secure - esito negativo
3. VISA **4012001037141112** 01/2020 206 Transazione con carta 3-D Secure - esito positivo
4. VISA **4012001037461114** 01/2020 206 Transazione con carta 3-D Secure – fallita autenticazione
5. VISA **7777666655554444** 01/2020 206 Transazione non elaborata per dati non corretti
6. AMEX **375987000000005** 01/2020 5678 Transazione con carta 3-D Secure - esito positivo - PASS: test09pass

### Avvertenze

Alcune volte i **server di test** degli istituti di credito (VISA, MASTERCARD, AMERICAN EXPRESS) possono subire delle **modifiche dovute ad aggiornamenti e/o a verifiche** che comportano ad un temporaneo disservizio. Questi comportamenti non devono allarmare l'esercente che potrà in ogni caso rivolgersi per assistenza al servizio tecnico di helpdesk della Consorzio Triveneto al numero fisso 848800605 presentando il proprio ID o partita iva.[  <br>](https://docs.setefi.shinesoftware.it/download--installazione.html)


# Transazioni Magento

Il modulo di pagamento per Magento offre un completo supporto alle transazioni di pagamento connesse al sistema IPG del Consorzio Triveneto.

L'amministratore del negozio Magento potrà, attraverso il pannello di controllo ordini, gestire tutte le transazioni di pagamento come:

* Autorizzazione
* Cattura
* Storno (anche parziale di una fattura)
* Annullamento dell'Autorizzazione

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvur6G2Rl_WQf8rG%2Ftransaction-list.png?generation=1558364800659581\&alt=media)

E' possibile conoscere l'esito dell'operazione immediatamente dopo l'esecuzione stessa. L'amministratore non dovrà accedere al pannello di backoffice del Consorzio Triveneto per conoscere gli esiti, ma far click semplicemente nella singola transazione e visualizzare la risposta della richiesta "Server to Server".

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvut14bYCQrtosw7%2Ftransaction-panel.png?generation=1558364801443744\&alt=media)


# Notifica Email Ordine

Magento 1 e 2 utilizzano un evento diverso per l'invio dell'email di conferma dell'ordine. Il modulo POS consente di gestire il momento di invio del messaggio di notifica. Nel caso di Magento 2, la notifica dell'ordine viene inviata al click sul pulsante "Ordina Adesso" presente nella pagina di checkout.

Per posticipare l'invio dell'email solamente al completamento dell'ordine, è possibile disabilitarne l'invio automatizzato e permettere al modulo di stabilire il momento del suo invio impostando via shell per Magento 2 il seguente comando usando il tool n98-magerun2.phar

> n98-magerun2.phar config:store:set sales\_email/order/enabled 0

Per quanto riguarda Magento 1.9.x tale problematica non appare poichè Magento invia la notifica ad avvenuta conferma.


# Status Ordini

Magento ha un sistema complesso per gli status degli ordini consentendo all'esercente di creare degli status sulla base dei preesistenti offrendo una vasta gamma di opportunità. Il modulo di pagamento Magento consente di impostare uno status iniziale all'ordine creato dal cliente quando conferma al checkout il carrello con la lista dei prodotti scelti.

Lo status iniziale viene considerato il primo status che l'ordine assumerà al click di conferma.

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvnCzYTMKDxuhMmL%2Fconsorio-triveneto-first-status.png?generation=1558364801089773\&alt=media)

Nel caso indicato dall'immagine su riportata, l'ordine verrà posto **in attesa** appena il cliente confermerà il suo carrello facendo click sul bottone di conferma dell'ordine nella pagina di checkout.

Se il modulo è impostato per utilizzare il redirect l'ordine verrà posto nello status **Pagamento in attesa** finchè il cliente non effettua il pagamento.

* Pagamento confermato
  * Ordine in Elaborazione
* Pagamento fallito
  * Ordine Annullato
  * Carrello mantiene i prodotti aggiunti
* Pagamento annullato&#x20;
  * Ordine Annullato
  * Carrello mantiene i prodotti aggiunti

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvnEADJg1zEzqPa-%2Fconsorio-triveneto-first-status-2.png?generation=1558364799964742\&alt=media)

Potrebbe succedere che il cliente torni indietro nel sito dell'esercente o abbandoni il sito della banca per accedere nuovamente nel internet dell'esercente per aggiungere e/o modificare il proprio carrello. Il modulo creerà un nuovo ordine abbandonando il vecchio ordine nello status in attesa e lasciando l'amministratore la libertà di scegliere se annullare l'ordine. In questo ultimo caso le risorse presenti nell'inventario saranno bloccate finché l'amministratore sceglierà l'operazione da compiere.


# Sicurezza & PCI DSS

## Payment Card Industry Data Security Standard (PCI DSS) <a href="#payment-card-industry-data-security-standard-pci-dss" id="payment-card-industry-data-security-standard-pci-dss"></a>

La sicurezza è uno degli elementi fondamentali per le vendite a distanza e, in particolare, su Internet, considerata la criticità dei dati trattati. Consorzio Triveneto ha da sempre posto una particolare attenzione alla sicurezza nell’erogazione dei propri servizi, come attestato dalle importanti certificazioni ottenute (**PCI-DSS e ISO27001**), e dalla costante attenzione alle normative di sicurezza proposte dai circuiti di pagamento.

Quando viene utilizzata l'estensione di pagamento Consorzio Triveneto per Magento, potrebbe essere necessario fornire la certificazione PCI DSS. Le informazioni che vengono trasmesse con tecnologia AJAX, utilizzata dal client API della Consorzio Triveneto assicura che il negozio Magento non sia a diretto contatto con i dati relativi alla carta di credito, perchè il cliente trasferirà i dati relativi alla carta di credito direttamente dal suo client a Consorzio Triveneto.

## Sicurezza

La piattaforma “Payment Gateway” rende disponibili alle Aziende operanti in Internet, i più aggiornati protocolli di autenticazione proposti dai circuiti internazionali: **Verified by VISA** e **MasterCard SecureCode**, uniti alla verifica del codice di controllo presente sulla carta. L’utilizzo di questi protocolli tutela l’Azienda venditrice dal disconoscimento delle transazioni da parte del titolare della carta di credito o prepagata, garantendo, nella maggior parte dei casi, il buon esito del pagamento.

## SSL <a href="#ssl" id="ssl"></a>

Molti negozi Magento hanno implementato un certificato di sicurezza SSL acquistato dai provider internazionali per incrementare la fiducia durante le transazioni di pagamento. **Il modulo di pagamento Consorzio Triveneto utilizza una connessione sicura con i server della banca sfruttando la cifratura dei certificati installati nei due server (banca/esercente)**.

Durante una transazione di pagamento Hosted o Server to Server, i software comunicano con il protocollo di sicurezza adottato. *Non tutti i protocolli di sicurezza sono adatti* e per esser certi, la banca mette a disposizione dei tecnici una **lista di certificati adottati**.

La lista è disponibile nel documento di integrazione **TVB\_IPG\_Elenco\_CA\_autorizzate\_\<x.y.z>.pdf** offerto dalla banca direttamente nel portale. Alle volte, questi certificati SSL devono essere caricati all'interno del server della banca per essere riconosciuti durante le transazioni con il proprio negozio Magento. Per far ciò bisogna inviare alla banca dei files particolari chiamati:

* **Root CA Certificate**
* **Intermediate CA Certificate**

## Cosa è un Root CA Certificate? <a href="#ssl" id="ssl"></a>

Un certificato SSL di root o di origine è un certificato rilasciato da un'autorità di certificazione (CA) attendibile. Nel mondo dei certificati SSL, chiunque può generare una chiave SSL e firmare un nuovo certificato con quella firma. Tuttavia, tale certificato non è considerato valido a meno che non sia stato firmato direttamente o indirettamente da una CA attendibile.

Un'autorità di certificazione attendibile è un'entità che ha il diritto di verificare che qualcuno sia effettivamente chi dichiara di essere. Affinché questo modello funzioni, tutti i partecipanti al gioco devono concordare un insieme di CA di cui hanno fiducia. Tutti i sistemi operativi e la maggior parte dei browser web vengono forniti con una serie di CA attendibili.

Il sistema SSL si basa su un modello di rapporto di fiducia, chiamato anche "catena di fiducia". Quando un dispositivo convalida un certificato, confronta l'emittente del certificato con l'elenco delle CA attendibili. Se non viene trovata una corrispondenza, il client verifica se il certificato della CA di emissione è stato rilasciato da una CA attendibile e così via fino alla fine della catena del certificato. La parte superiore della catena, il certificato principale, deve essere rilasciata da un'autorità di certificazione attendibile.

L'estensione di tali certificati è .crt da non confondere con i file rilasciati durante l'acquisto.

## Dove posso scaricare i certificati di root?

Questi due file sono a disposizione del tecnico direttamente dal portale nel quale ha acquistato il certificato. Qualora non fosse presente nel portale dell'azienda dal quale ha acquistato il certificato, può richiederlo direttamente via segnalazione o via helpdesk all'azienda emettritrice.


# Logging, Debug, Errori Comuni

## Logging, Debug ed Errori Comuni <a href="#logging--debug" id="logging--debug"></a>

Qualsiasi comunicazione con Consorzio Triveneto viene registrata in un file di log e può essere utilizzato per il supporto, il test e operazioni di debug dai tecnici del negozio Magento. Le richieste di status delle transazioni di pagamento inviate via API a Consorzio Triveneto ed i dati dei processi di pagamento integrati in cui viene richiesta la carta di credito sono esclusi da questo log.

### Magento Log

Per attivare il sistema di registrazione log di Magento bisogna accedere alla sezione amministrativa di Magento e dal menù:

Sistema > Configurazione > Avanzate > Sviluppatore > Impostazioni Log > Abilitato > Si\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvOcmyVWjygA9AG_%2Fmagento-log.png?generation=1558364799009091\&alt=media)

Dopo aver attivato il sistema di log e salvato la configurazione, il software magento creerà uno o più file di testo con estensione .log all'interno della cartella del progetto /var/log. La cartella /var/log deve avere i permessi di scrittura per poter creare i file. Per ulteriori informazioni contattare il servizio assistenza del piano hosting.

### Payment Log

Per scaricare il file di Log, crearne una copia di backup basta effettuare un semplice click sul bottone creato appositamente nel pannello di controllo del modulo: **Download Log file**.![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvOekfW9i0eJP_Bz%2Fconstriv-tools.png?generation=1558364814576617\&alt=media)Per generare un file di log pulito e con una sola transazione basta eseguire queste operazioni:

1. Fare click su Clear Log file
2. Eseguire un test di acquisto su Magento
3. Fare click su Download Log file

In questo modo il file precedentemente creato verrà conservato in una copia di backup dentro la cartella dei log di Magento e verrà creato un file pulito. Questa operazione è possibile usarla quando si desidera inviare un file di log alla banca per un supporto tecnico (vedi capitolo [Helpdesk Support](/helpdesk-support)).

## Errori Comuni

Durante la connessione ai servizi potrebbe capitare di visualizzare i seguenti codici di errore. I codici di errore sono inviati dal server della Consorzio Triveneto al vostro negozio e non provengono dal modulo. Il modulo li interpreta, li trascrive nel file di log ed attraverso il file di log i tecnici della Consorzio Triveneto potranno il motivo dell'errore. Prima di contattare i tecnici della Consorzio Triveneto con l'opzione "[Helpdesk Support](/helpdesk-support)", di seguito descritto, è bene effettuare un controllo semplice utilizzando le informazioni riportate di seguito.

1. **!ERROR!-PY20010-Invalid Merchant URL**
   1. Il dominio del negozio non è raggiungibile dai server della banca
   2. il vostro certificato SSL non è stato confermato dalla banca. (contattare la consorzio triveneto)
   3. Il modulo non è stato installato e/o configurato correttamente (richiedere il servizio programmatore magento alla Shine Software)
2. **cURL v. x.xx.x error: SSL connect error**
   1. Il componente cURL ed il server necessita di un aggiornamento necessario per la connessione sicura ai servizi SSL. Spesso il problema risiede in sistemi Linux RedHat non aggiornati. Per coloro che necessitano di un aiuto **google** offre diversi [siti internet](https://access.redhat.com/solutions/2595511).&#x20;
3. Unknown SSL protocol error in connection to ipg-test4.constriv.com:443 oppure [CURLOPT\_SSLVERSION](https://curl.haxx.se/libcurl/c/CURLOPT_SSLVERSION.html) SSL routines:SSL\_CTX\_new:null ssl method passed\
   1\. Il server della banca non riconosce corretta la richiesta effettuata dal server dell'esercente poichè inviata con una versione obsoleta del componente cURL o con un'impostazione standard. Controllare le impostazioni globali del componente cURL.
4. **Redirect the user at the magento failure page!**
   1. Dopo la transazione e dopo l'avvenuto pagamento il server della Consorzio Triveneto controllerà se il server richiedente risponde ad alcune richieste e possono verificarsi delle anomalie di connessione. L'utente vedrà il pagamento effettuato correttamente ma l'**ordine impostato come cancellato**!
      1. Di seguito le cause che scatenano il problema:
         1. Dominio non pubblico. Il dominio deve essere online non è possibile testare il modulo in locale.
         2. La ResponseURL richiamata dal server della banca *vostrodominio.it/constriv/hosted/response* non è accessibile da remoto.
         3. La ResponseURL richiamata dal server della banca non restituisce la stringa richiesta dalla banca: "REDIRECT=...." in una pagina totalmente vuota.
         4. Il certificato SSL installato nel negozio non è presente nella lista dei certificati riconosciuti dalla banca. Contattare la banca inviando il certificato installato via email.
5. **Credit card type is not allowed for this payment method.**
   1. Il problema riguarda l'assegnazione del numero di carta di credito alla tipologia della carta. Questa operazione avviene attraverso un riconoscimento del formato del numero inserito usando il Javascript ed alle volte per via del template tale javascript non viene caricato e/o ha generato un errore. Controllare la console di Firefox e/o Chrome per capirne il motivo del funzionamento. Se non si ha a disposizione un programmatore potete richiedere il servizio programmatore magento alla Shine Software.
6. **MAGENTO 2:** **CRITICAL: Missing required argument $name of ShineSoftware\Constriv\Model\Logger\Constrivlog.**
   1. Se si usa nGinx come server web oppure Apache e durante il checkout il modulo genera l'errore indicato è da imputarsi alla configurazione del Server e del VirtualHost. Il bug riconosciuto da Magento con ID #5908 ([https://github.com/magento/magento2/issues/5908\\](https://github.com/magento/magento2/issues/5908\)\\). Il modulo è stato testato in **PRODUCTION MODE** in moltissime versioni Magento. Vedi [Versioni & Changelog](/changelog). Se la compilazione del codice sorgente va a buon fine e non appaiono errori relativi alla mancanza di un parametro, il problema risiede nel compilatore usato. Per aver un'evidenza di quanto indicato effettuate una prova in **DEVELOPER MODE** ed il modulo non mostrerà alcun problema.
7. Errore durante l'apertura della pagina della configurazione del modulo:
   1. **Class Shinesoftware\Constriv\Observer\System does not exist**
      1. Il messaggio di errore è legato alla mancanza di un file presente nell'archivio da noi inviato ma non caricato nel server. Spesso questo problema appare quando il software di gestione del Server Hosting ha un antivirus. L'antivirus non riconosce il file e genera un'eccezione inserendo il suddetto file in quarantena cancellandolo dalla locazione nel quale è stato caricato. Il file mancante sarebbe System.php che gestisce la licenza. Senza tale file il modulo non funziona correttamente e bisogna caricarlo sul server come tutti gli altri file. Per risolvere il problema dovreste semplicemente indicare all'hosting provider di creare un'eccezione nel software antivirus per il file System.php così non verrà più cancellato.
8. **Il pagamento va a buon fine ma l'ordine risulta cancellato in Magento**
   1. Quando i server della banca inviano la notifica registrano l'errore "Send merchant notice error javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated" ... probabilmente il modulo TLS1.1 non è attivo e ci potrebbero essere dei problemi con le curve ellittiche e di conseguenza l'handshake non avviene.

      Suggerimento: finchè il sistema TLS1.1 non sarà "deprecated" (obsoleto), vi invitiamo ad abilitarlo.
9. **GW00456-Invalid TranPortal ID**
   1. Errato endpoint impostato nell'area amministrativa
   2. Errato Tranportal ID per l'endpoint selezionato
   3. Password **scaduta del terminale** presente nel pannello della banca
   4. Tranportal ID non ancora attivo


# Versioni & Changelog

In questa pagina racchiudiamo tutte le modifiche effettuate al modulo e dei suoi sottomoduli ed i loro rilasci. La versione del proprio modulo è visibile nella sezione in alto del pannello di configurazione dei metodi di pagamento:

> Are you ready to use the Consorzio Triveneto payment **v.2.0.0.0**method? Click here to learn more.

La versione del sotto-modulo si trova al fianco del nome. Ecco uno screenshot della sezione precedentemente indicata:\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvUNwS47Ib6Ay409%2Fconfiguration.png?generation=1558364800933887\&alt=media)

**Attenzione**: Il modulo è in continua evoluzione e per questo motivo vi invitiamo a seguirci su Twitter <https://goo.gl/KvbP5A> ed a pubblicare una recensione al primo utilizzo per ricevere oltretutto uno sconto alla scadenza dell'assistenza tecnica direttamente al link: <https://goo.gl/N0vzzo>.

## Versioni

Magento è in continua evoluzione così come le estensioni realizzate dalla Shine Software. Le funzionalità vengono analizzate, programmate, sviluppate e testate. Di seguito le funzionalità esposte dal metodo di pagamento ed integrate nelle versioni di Magento.

| Funzionalità     | Magento 1.9.x | Magento > 2.1.x | Magento > 2.2.x |
| ---------------- | ------------- | --------------- | --------------- |
| Hosted 3D Secure | Incluso       | Incluso         | Incluso         |
| Server to Server | Incluso       |                 |                 |
| MyBank           | Incluso       | Incluso         | Incluso         |
| Masterpass       | Incluso       | Incluso         | Incluso         |

### Changelog

```
4de80cb Minor bug has been fixed
b593039 Icons have been added
6e0ed26 Payment module rule has been fixed
600ece6 Redirect secure path has been fixed Minor bug hava been fixed
67a3d0a Redirect secure path has been fixed Minor bug hava been fixed
2494c72 Now order selection filter method has been improved for huge database
074a196 Store views configuration has been improved in order to use the module per storeview too Consorzio Triveneto Logos have been updated Response action has been improved
8966889 Orders will be filtered by paymentId a the response action and the error text will be set as comment of the order
094d5ab language option has been improved landing page log the bank reply currency codes have been included into the source code log file download bug has been solved
46c18c3 Consorzio Triveneto Payment mark logo in the ckout page Minor bugs fixed
fb823c9 Mark image in the checkout cart Helpdesk system has been updated Reset tool has been created Asset files have been updated minor bugs have been fixed
1ab8ec7 Hosted method has been updated Default values as correctly set
22e34e6 Hosted version has been fixed Helpdesk message has been updated
15f55b0 Helpdesk system has been upgraded IPG as default system minor bug sha been solved
6be5512 Helpdesk system has been upgraded Payment module options (clear cache and backup, download log file)
26d282f MoTo form application for the frontend has been upgraded
b3c63a9 magento module folder structure has been fixed
25462be wrong introduction pdf file
96c491b First release of the module Server to Server Docs: https://docs.constriv.shinesoftware.it
```


# Helpdesk Support

Il modulo di pagamento Consorzio Triveneto registra all'interno di un file di log tutte le informazioni necessarie per effettuare una transazione di pagamento utilizzando i server della Consorzio Triveneto. Oltre alle richieste di inizializzazione delle richieste vengono registrate anche tutti i parametri di risposta del server, consentendo di effettuare un controllo approfondito del funzionamento del modulo di pagamento.

Al fine di velocizzare qualsiasi operazione di supporto tecnico, nell'area amministrativa del modulo Sistema > Consorzio Triveneto > Configurazione > General Options > Helpdesk è possibile inviare una richiesta completa agli operatori della Consorzio Triveneto ed ai tecnici della Shine Software via email automaticamente con un semplice click sul bottone **Request Helpdesk Support**.

## Email di Supporto Tecnico

Per poter usare la funzione di Helpdesk bisogna creare un template personalizzato partendo dal nostro template di base seguendo i seguenti passi:

1. Accedere su Sistema > Email Transazionali&#x20;
2. Fare click su Aggiungi Nuovo Template
3. Caricare il template realizzato "Consorzio Triveneto - Helpdesk Email Template"
4. Impostare un nome al proprio template ad esempio: "Consorzio Triveneto Helpdesk Request"
5. Assegnare il nuovo template nella sezione General Options > Consorzio Triveneto Helpdesk > Template&#x20;
6. Salvare la configurazione

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvl6TDLapeaOSO6d%2Fconstriv-helpdesk-template-email-request.png?generation=1558364799709644\&alt=media)

Tale opzione permette di inviare un'email contenente tutte le informazioni necessarie per un "debug" veloce da parte dello staff tecnico della Consorzio Triveneto e da parte della Shine Software.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvl8dbWPj1jg8R--%2Fconstriv-helpdesk.png?generation=1558364815066195\&alt=media)

Il file di log inviato all'helpdesk si trova nella cartella di Magento /var/log/shinesoftware\_constriv.log

Di seguito un estratto del file di log:

![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvlAGu5KAtSvv1EZ%2Flog.png?generation=1558364799484733\&alt=media)

### Cosa fare se si riscontra un problema?

Prima di inviare alla Consorzio Triveneto una richiesta di assistenza si consiglia di svuotare il file di log attraverso la funzione "Clear Logs" presente nel pannello di controllo del modulo nella sezione "Payment module options". Il file originale verrà duplicato come file di backup ed il file originale verrà svuotato.\
![](https://2124482222-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LfKlq0EiERpd5DOt0A5%2F-LfKlubHgs2HW_QL6xSg%2F-LfKlvlCwGM5-bFq53fN%2Fconsorzio-triveneto-options.png?generation=1558364801063137\&alt=media) Dopo aver pulito il file di log, eseguite l'operazione di acquisto di un prodotto fino a riprodurre il problema riscontrato durante il pagamento. A questo punto, il file di log ha registrato le operazioni eseguite ed è pronto per essere inviato all'helpdesk della Consorzio Triveneto e della Shine Software. vedi capitolo [Logging, Debug ed Errori Comuni.](/logging-and-debug)

### Assistenza Tecnica

Il modulo ha superato centinaia di controlli ed è installato in moltissimi negozi Magento sparsi nel territorio nazionale. Viene aggiornato costantemente per mantenere uno standard alto di qualità del servizio offerto dalla Shine Software. La richiesta di assistenza tecnica per qualsiasi errore riscontrato durante la fase di installazione, configurazione, uso del modulo avrà un **costo di un'ora di** [**Assistenza Tecnica Magento**](http://www.shinesoftware.com/programmatore-magento.html) per il controllo, la correzione e la riconfigurazione del modulo. Per qualsiasi richiesta di assistenza usare il gestore delle segnalazioni allegando il file di log generato dal modulo.


# Copyright

## Copyright <a href="#sicurezza--copyright" id="sicurezza--copyright"></a>

L'importanza della sicurezza in ambito informatico commerciale è fondamentale in questi contesti poichè i moduli di pagamento trasmettono dati sensibili dal negozio verso il server della banca e viceversa. **A tal fine tutti il codice del modulo Consorzio Triveneto è leggibile ed alcune parti criptate e per non ledere la proprietà intellettuale e la licenza commerciale ed incorrere a malfunzionamenti imprevisti si vieta espressamente la decodifica del codice di controllo licenza**. A tal fine la Shine Software si impegna a supportare tecnicamente gli esercenti ed i tecnici per eventuali nuovi aggiornamenti e/o nuove funzionalità.

Il Cliente si impegna a difendere, risarcire e tenere indenni la Shine Software, i suoi impiegati, sub-contraenti, agenti ed associali, da qualunque ed ogni responsabilità, costi e spese, comprese ragionevoli spese legali, inerenti o dovuti a:

* qualunque inadempimento da parte del Cliente;
* uso improprio del servizio di POS Virtuale;
* atti o omissioni del Cliente (o di terzi usati dal Cliente) in rapporto all'installazione, manutenzione, presenza, uso o rimozione del modulo di pagamento;
* qualunque rivendicazione da parte di terzi che comunque derivi dai servizi che saranno forniti dal Cliente a terzi;&#x20;
* azioni per violazione di qualunque diritto di proprietà appartenente a terzi, compresi diritti d'autore, brevetti, segreti industriali e marchi, causata dall'uso di qualunque servizio, apparecchiatura e software non forniti da Shine Software oppure dall'uso scorretto di servizi, di apparecchiature o software forniti da Shine Software;&#x20;
* qualunque perdita o danno a qualunque proprietà, o lesione personale o morte di qualunque persona, dovuti ad atto  volontario o omissione del Cliente, di suoi impiegati, sub-contraenti o agenti.

## Istanza dei Moduli Magento

Tutti i moduli di Magento vengono eseguiti all'avvio del "Core", in cui vengono ricreate in memoria del server le allocazioni relative alle risorse che il software dovrà utilizzare durante la navigazione da parte degli utenti. I moduli possono essere disattivati ma in realtà vengono solamente nascosti da Magento, quindi vengono comunque caricati in memoria ram dal webserver. Questo risvolto è importante poichè i moduli possono essere totalmente disabilitati e non caricati in memoria solamente se:

* Magento 1.x
  * Il file xml di dichiarazione in /app/etc/modules/azienda\_modulo.xml viene cancellato o impostato come non attivo modificandone il parametro interno.
* Magento 2.x
  * Il modulo viene disattivato totalmente attraverso la riga di comando: bin/magento module:disable azienda\_nomemodulo

Bisogna fare attenzione alla gestione della licenza ed al dominio collegato. Poniamo il caso che il modulo venga utilizzato in un'installazione multidominio, configurato per un negozio (store) o per una vista (storeview) e vi siano tre domini configurati in Magento: dominio1.it, dominio2.it e dominio3.it. Il modulo è licenziato per il solo dominio1.it. Anche se si desiderasse usare il modulo in un solo store, ad esempio dominio1.it, il modulo NON può essere utilizzato nella configurazione indicata precedentemente poichè all'avvio dello store legato al dominio2.it o dominio3.it il modulo bloccherà il sistema poichè verrà comunque chiamato all'avvio del Core di Magento eseguendo il controllo del dominio attivato.


