DI RECENTE ACCOMAZZI...
CERCA
» Ricerca avanzata
MAILING LIST

Se vuoi iscriverti alla mailing list di Luca Accomazzi inserisci qui la tua mail:

Vuoi ricevere i messaggi immediatamente (50 invii / giorno) o in differita e in gruppo
(due invii / giorno)?

» Vuoi saperne di più?

E-commerce, che pasticcio!

Storia del sito e-commerce panta-rei.com. Ideazione e sviluppo di un sito che venda prodotti gastronomici italiani -- compresa la pasticceria.

Se la pastiera napoletana è famosa nel mondo, perché non venderla in tutto il mondo? È quel che deve aver pensato la giovane imprenditrice avellinese Lucia della Sala, fondatrice di Panta Rei, un sito e-commerce di recente apertura. Ecco la storia “dall’interno” di come è stato realizzato il sito.


Parlo arabo?

Una delle caratteristiche più vistose del sito Panta-Rei è indubitabilmente la disponibilità di una versione in russo del sito (il sito è anche disponibile in inglese, francese, tedesco, spagnolo oltreché, ovviamente, italiano). Anzi, è probabile che venga aggiunta anche una versione in arabo.
Lo sviluppo di un sito in una lingua che usa un alfabeto non latino è decisamente più complessa del normale. Le pagine HTML sono normalmente scritte usando i caratteri dello standard ISO 8859-1. In quell’insieme di caratteri troviamo le lettere usate nell’Europa occidentale (come la ñ usata nello spagnolo, la ç usata nel francese o la ü usata nel tedesco), ma non sono invece disponibili i caratteri degli altri alfabeti (come le lettere che a noi sembrano una “R” o una “N” allo specchio, tipiche del cirillico).
Lo ISO (International Standards Organization) ha creato insiemi di caratteri anche per gli altri alfabeti, ma solo in tempi recenti: quindi questi standard non sono accettati quanto dovrebbero. Un caso esemplare è proprio quello dell’arabo: lo standard ISO è accettato e adottato su Macintosh, Unix e sistemi operativi minori e supportato da Netscape Navigator. Microsoft però ha deciso di utilizzare un suo sistema proprietario sotto Windows: quindi non c’è altra soluzione che sviluppare due volte ogni singola pagina, in modo da offrirne una versione adeguata a ogni visitatore del sito.
Il caso più complesso è proprio quello russo: per il cirillico esistono il non-standard Windows, ma anche Macintosh, Unix, DOS e OS/2 (tutti diversi tra loro), più lo standard ISO 8859-5 che apparentemente non usa nessuno.
Chi voglia trattare con quei Paesi (ma ci sono casi di alfabeti non latini anche vicinissimi a noi, come in Grecia), deve dunque decidere caso per caso quante versioni leggermente differenti del suo sito intende sviluppare. Si partirà con la codifica più popolare e si aggiungeranno quelle via via meno diffuse, sino a tirare la linea quando si è certi di aver raggiunto una percentuale soddisfacente di potenziali visitatori.


Lettura del pensiero

La maledizione dell’Europa, da un punto di vista commerciale, è la babele di linguaggi che divide i suoi abitanti. Il sito Panta-Rei offre tutti i suoi contenuti, come abbiamo visto, in sei lingue differenti: ma la fatica di trovare traduttori madrelingua competenti nel linguaggio di Internet e in quello della gastronimia va sprecata se il visitatore non raggiunge con facilità le pagine nella sua lingua preferita.
Per il sito Panta-Rei abbiamo scelto di implementare multiviews, una tecnologia che riconosce la lingua del visitatore e lo ridirige automaticamente sulla sezione del sito localizzata nella sua lingua madre. Il sistema multiviews è una delle opzione disponibili al server web Apache, oggi il più veloce e sicuro sistema per pubblicare pagine web su Internet. Quando multiviews viene attivato, il sistema Apache interroga il browser di ciascun visitatore e ne consulta le preferenze. Sia Netscape Communicator che Internet Explorer permettono infatti ai loro utenti di selezionare da un elenco la loro lingua madre. Il primo, inoltre, permette anche di aggiungere un elenco di tutte le altre lingue comprese dal visitatore, in ordine di preferenza. Apache può così comparare le preferenze del browser con le lingue a sua disposizione, e servire automaticamente le pagine tradotte nella lingua più adatta.
Naturalmente, abbiamo fornito anche la possibilità per i visitatori di passare ad un altro linguaggio manualmente -- ciò è utile sia per chi ha riconfigurato maldestramente il suo browser, sia per chi non ha indicato nessuna delle sei lingue sin qui disponibili.


Sotto al cofano

Il motore del sito Panta-Rei è scritto in Java. Il linguaggio di Sun oggi gode di una cattiva fama tra molti addetti ai lavori, perché a tutt’oggi non è riuscito a rispettare le sue promesse di disponibilità universale senza problemi. Chi realizza un applet, quelle piccole applicazioni che girano all’interno del browser dei nostri visitatori, scopre spesso che il suo software presenta problemi per almeno una parte del suo pubblico (la versione usata da Internet Explorer 3.0 e quelle inserite in Mac OS sino alla versione 8.1 sono particolarmente problematiche). Noi abbiamo però trovato che Java è una soluzione eccellente per le servlet, cioè le applicazioni che girano sul server. In questo caso, ovviamente, non è necessario testare il nostro software per tutte le piattaforme e per tutte le versioni, ma è sufficiente assicurarsi che esso funzioni bene sul sistema Unix da noi prescelto. Java, inoltre, porta con sé caratteristiche di sicurezza che nessun altro linguaggio offre.
Il motore Java funziona come un parser e utilizza la metodologia SSI, server side includes. In pratica, questo significa che chi realizza le pagine HTML ha a disposizione una sintassi estesa: nel normale HTML si può scrivere “posiziona qui la tale immagine” oppure “scrivi in questo punto il nome «Mozzarella di bufala» in grassetto”. Le estensioni SSI aggiungono altre istruzioni, come “metti in questo punto il prezzo unitario del prodotto” oppure “scrivi qui il costo delle spese di spedizione”. Ci sono anche istruzioni condizionali, del tipo “se il prodotto x è disponibile allora...” oppure “se il prodotto che stiamo mostrando è freschissimo, allora mostra l’icona del prodotto freschissimo, altrimenti mostra il pulsante che permette di selezionare una spedizione lenta ed economica”. La servlet legge la pagina HTML ed interpreta le sole istruzioni SSI: poi invia al browser del visitatore una pagina che a questo punto è in HTML puro.
Il motore Java nasconde anche tutti i dettagli tecnici relativi alla base dati dei prodotti: questo ci permetterà in futuro di rimpiazzare la soluzione attualmente utilizzata con altre soluzioni più performanti (ma anche più costose), man mano che il traffico sul sito crescerà, senza dover toccare le pagine del sito stesso.


Carta di credito e server sicuro

Questa notizia potrà stupire molti tra i nostri lettori, ma quasi nessuna banca in Italia offre una soluzione concreta alle necessità di chi fa commercio elettronico. Ormai tutti i maggiori Istituti bancari offrono ai loro clienti soluzioni per lo e-commerce, ma in pratica la quasi totalità di questi si limita a ricevere in qualche forma i dati sul cliente e a introdurre la transazione in differita a terminale, usando personale umano. Questa soluzione non è professione né particolarmente plausibile: il lato oscuro di Internet offre ai disonesti una valanga di programmini che generano numeri di carta di credito all’apparenza impeccabili ma in realtà invalidi. Eppure un venditore non può attendere i comodi della banca prima di convalidare l’ordine e spedirlo al cliente.
Un minuscolo drappello di banche offre la validazione in tempo reale della carta di credito, verificando non solo l’esistenza della carta ma anche la disponibilità di spesa e il rispetto del plafond. La tendenza, però, è quella di costringere il venditore a inviare il cliente sul server sicuro SSL dell’istituto bancario per concludere l’acquisto. Nel caso di Panta-Rei ciò è inaccettabile, perché nessuna tra queste banche offre tutte e sei le lingue supportate dal sito panta-rei.com.
Solo una banca, alla data di inaugurazione di panta-rei.com (il primo settembre scorso), ci ha dato la possibilità di lavorare come necessario. Un istituto minore ma evidentemente attento, Banca Sella. L’immissione del numero di carta di credito avviene su un server sicuro SSL da noi impiantato. I dati della transazione vengono immediatamente inviati al server sicuro di Banca Sella (e non ne resta traccia nella nostra base dati: questo, tra l’altro, semplifica l’adempimento della normativa europea sulla privacy). Banca Sella risponde immediatamente inviando un pacchetto in risposta con la convalida della transazione (o la sua disdetta), in modo che il sito panta-rei.com possa immediatamente confermare l’acquisto al visitatore.
Il sistema di Banca Sella non manda immediatamente la transazione all’incasso: questo permette al venditore di riscuotere il compenso solo quando il pacco di prodotti viene spedito. Dobbiamo dire che questo dettaglio viene molto apprezzato dai consumatori. Banca Sella, infine, offre su Internet un sistema Bancomat-POS virtuale, che Panta Rei utilizza all’interno del suo negozio fisico per accettare i pagamenti con carta di credito.
Non definiremmo “perfetta” la soluzione di Banca Sella, il cui server basato su Windows NT è caduto per due volte nei primi quattro mesi di operatività; ci sono diverse funzionalità aggiuntive che potrebbero venire realizzate dal sistema bancario per attirare i commercianti sul web, a cominciare dal nuovo sistema WAP per i cellulari. Tuttavia, Banca Sella ci ha permesso di lavorare, bene e da subito.


Il backoffice

Il motore Java e il sito web non sono sufficienti a realizzare una impresa e-commerce funzionale. Per realizzare Panta-Rei.com è stato necessario sviluppare software e applicazioni di corredo che permettano al personale dell’azienda di interrogare il sito, aggiornare il listino ed eseguire altri compiti di ordinaria e straordinaria amministrazione.
La tabella dei prodotti a listino, la tabella dei clienti e la tabella degli acquisti costituiscono una grande base dati relazionale che abbiamo realizzato usando FileMaker Pro, un sistema particolarmente flessibile ed amichevole. Il software, che gira sui personal di Panta-Rei, si collega al motore di e-commerce dietro il clic di un pulsante (usando una connessione FTP protetta, ma questo non è visibile a chi usa il programma). Lo scambio di dati è dunque trasparente. Il flusso dei dati è dunque pienamente automatico dal momento in cui un cliente completa l’ordine sul sito sino all’emissione della fattura: i file scambiati utilizzano un meta-formato che non è nativo né per la base dati del server né per la soluzione FileMaker e che quindi ci permette di cambiare l’implementazione a entrambi i lati se ne nasce l’occasione.
La contabilità di Panta-Rei è in Euro, ma molti tra i clienti vengono dall’esterno della zona Euro, o addirittura dall’esterno della Comunità Europea. Per loro comodità, il nostro sistema mostra tutti i prezzi anche nelle valute locali (in rubli ai russi, in sterline agli inglesi, in franchi svizzeri a chi parla francese, eccetera). Il cambio del giorno viene scaricato da un sito Internet specializzato.


La parola all’avvocato

Mettere in piedi un sito di e-commerce richiede anche una visita dall’avvocato. Una nuova norma comunitaria, recepita in legge dall’Italia, è entrata in vigore il 15 ottobre scorso: richiede ai siti una serie di cautele, menzioni e garanzie perché il loro funzionamento sia legalmente corretto. Ci sono poi questioni relative alla legge sulla privacy, che richiedono la segnalazione al garante. Non bisogna dimenticare il diritto di recesso, che la legge garantisce a chi acquista prodotti trovandosi al di fuori di locali commerciali, e che quindi va tutelato anche nel commercio elettronico. Infine, abbiamo tutta una serie di norme a cui bisogna attenersi normalmente nel commercio internazionale -- per il pagamento dell’IVA, ma anche per rispettare le leggi interne di ciascuna nazione. Per esempio, non si può certo spedire una bottiglia di vino in una nazione in cui è in vigore la legge coranica; in alcune nazioni scandinave esistono monopoli di stato relativamente ad alcune categorie di prodotti e non è possibile spedirne direttamente dall’estero al consumatore locale.

Luca Accomazzi


Questo articolo fa parte di uno dei miei percorsi. Se vuoi saperne di più su questo argomento, visita il resto del percorso cliccando qui.