VZCards

Storia di VZCards

Come è nata VZCards e il percorso che ha portato all'app per carte fedeltà, prepagate e ricaricabili fino ad oggi.

È cominciato tutto in un posto qualunque: alla cassa di un supermercato, in coda, un pomeriggio come tanti.
Davanti a me una signora frugava nel telefono, sfogliando schermate di app una dopo l'altra alla ricerca della tessera giusta. La cassiera aspettava paziente. Dietro, la fila si allungava in silenzio. Quando finalmente l'app comparve, chiese una password che la signora non ricordava più. Poi arrivò un banner pubblicitario, e poi un altro. Alla fine, sconfitta, mise via il telefono e pagò senza sconto.
Non era colpa sua. Era colpa di un'idea sbagliata: che ogni negozio dovesse avere la propria app, con la propria registrazione, il proprio piccolo mondo digitale fatto di promozioni, notifiche, password e schermate da attraversare. Le carte fedeltà dovrebbero servire a una cosa sola, essere mostrate al momento giusto, ma intorno a loro era cresciuto un labirinto.
Da quella coda è nata VZCards. L'idea, in sé, non era originale: app che raccolgono le tessere fedeltà ne esistono a decine, basta aprire lo store per trovarle. La sfida era un'altra: non aggiungere un'app a una lista già lunga, ma farne una che meritasse di starci. Senza registrazioni obbligatorie, senza pubblicità, senza notifiche insistenti, certo, ma quello era il punto di partenza, non quello di arrivo. Bisognava ascoltare i piccoli problemi reali che le altre app non risolvono, e costruire qualcosa che si prendesse davvero cura di chi è in coda alla cassa. Apri l'app, trovi la carta, la mostri: questo lo fanno tutti. La differenza stava in tutto ciò che veniva dopo.
E quando un'idea semplice la costruisci davvero, finisce per allungarsi più del previsto. Da quel pomeriggio è iniziato un lavoro paziente fatto di osservazione, di code alla cassa, di dettagli che diventavano chiari uno alla volta. Le funzioni di VZCards che oggi sembrano scontate sono arrivate tutte da lì.

Tre famiglie di carte, una sola filosofia

La prima domanda che la realtà ha posto è stata: che tipi di carte esistono davvero nella vita di una persona? La risposta non era unica. C'erano le tessere fedeltà classiche, quelle che servono solo a essere mostrate. C'erano le carte prepagate, con un credito che si consuma poco alla volta fino a esaurirsi. E c'erano le carte sociali e ricaricabili, quelle che ricevono nuovi importi con cadenza mensile o quando l'utente decide di rimetterle in vita. Tre famiglie diverse, tre comportamenti diversi.
VZCards le accoglie tutte con la stessa naturalezza. Ogni carta può avere un nome, un numero, una nota, una foto reale o una grafica generata dall'app con un effetto vetro che ricorda una vera carta. Si possono scegliere otto colori predefiniti (blu, rosso, verde, arancio, viola, turchese, ambra, grafite), oppure impostarne uno personalizzato. Si può decidere se vederle come elenco ordinato alfabeticamente o come griglia visuale, perché c'è chi cerca con gli occhi e chi cerca con il dito.
I codici sono tutti supportati, dai più comuni ai più rari: EAN-13 ed EAN-8, UPC-E, Code 128, Code 39, Code 93, ITF-14, Codabar per i codici a barre tradizionali; QR Code, PDF417, Aztec e Data Matrix per quelli bidimensionali. Dodici formati in tutto, riconosciuti automaticamente quando si inserisce un numero o si scansiona una tessera. L'utente non deve sapere niente di questo: scrive, fotografa, e l'app sceglie il formato giusto da sola.

Il cuore del problema: ricaricabili e carte sociali

Le carte prepagate non sono tutte uguali, e il bisogno di tenerne sotto controllo il credito non è lo stesso per tutte. Le carte a scalare usa e getta, quelle che nascono con un importo prefissato e non vengono mai più ricaricate, alla cassa non creano grandi difficoltà: le passi al lettore, viene prelevato quello che c'è, e se non basta paghi la differenza in contanti o con un'altra carta. È un consumo un po' cieco, ma funziona, e per queste tessere il tracciamento del saldo è una comodità, non una necessità.
Il vero problema, quello che ha dato origine a tutta la logica del credito residuo dentro VZCards, sono le carte ricaricabili e le carte sociali. Le prime si ricaricano quando l'utente decide; le seconde ricevono un importo a cadenza fissa, di solito in un giorno preciso del mese. In entrambi i casi le piccole spese si accumulano, e dopo un po' nessuno sa più quanto credito ci sia davvero. Eppure su queste tessere sbagliarsi costa: se l'importo della spesa supera il saldo disponibile, il sistema della cassa rifiuta l'intera transazione. Non viene addebitato un centesimo. La carta o copre tutto, o non copre nulla. Mentre la coda dietro di te perde la pazienza, scoprire all'ultimo di non avere abbastanza credito è esattamente il tipo di imbarazzo che si vorrebbe evitare. Per queste tessere, sapere quanto credito è rimasto prima di metterle sul lettore non è una comodità: è una condizione per usarle in tranquillità.

VZCards rende quella conoscenza automatica. Ogni volta che usi una prepagata inserisci l'importo speso e l'app aggiorna in tempo reale il saldo residuo. Una barra colorata mostra a colpo d'occhio quanto credito è rimasto: verde quando si è larghi, arancio quando si scende sotto un quinto, rosso quando arriva a zero. Niente calcoli, niente appunti sul retro dello scontrino, niente sito da consultare con login e password. Quando arriva una nuova ricarica, su una sociale o su una ricaricabile, basta aggiungerla: la cronologia delle spese resta intatta e la carta torna piena, pronta a ricominciare.
Quando invece provi a registrare una spesa più alta del residuo, l'app si comporta in modo diverso a seconda del tipo di carta. Per le ricaricabili e le sociali ti avvisa, ti dice quanto manca e ti invita a ricaricare prima di procedere: la carta resta in lista, perché una ricaricabile a zero non è una carta finita, è solo una carta in attesa. È proprio questo avviso a proteggerti dal rifiuto della transazione alla cassa, permettendoti di accorgertene prima, in un momento qualunque della giornata, e non nell'istante peggiore.
Per le non ricaricabili, invece, la logica è opposta. L'app mostra un avviso semplice, "Carta esaurita", con il dettaglio dell'importo non coperto. Al tocco di OK la carta viene eliminata automaticamente: sparisce dalla lista, viene tolta dalle preferite se lo era, widget e orologio si aggiornano da soli, e tu torni alla schermata principale già pronto per quello che verrà dopo. Una carta a scalare svuotata non serve più a niente, e tenerla in lista sarebbe solo un piccolo rumore visivo che si accumula nel tempo: farla sparire nel momento esatto in cui smette di avere senso è il modo più rispettoso di chiudere quella storia.
A completare il quadro, ogni carta prepagata può avere il proprio simbolo di valuta, dall'euro al dollaro alla sterlina: una piccola cosa che cambia molto per chi viaggia o gestisce tessere acquistate all'estero. Ogni transazione viene poi conservata in uno storico chiaro, con data, importo e saldo residuo dopo ogni movimento, etichette amichevoli come "Oggi" e "Ieri", possibilità di cancellare un movimento se è stato registrato per errore. La storia di una carta diventa, in piccolo, una storia leggibile.

Trovare la carta in un secondo

Una carta serve quando serve, e quando serve non c'è tempo. Per questo l'intera app è stata pensata attorno a una promessa: arrivare alla tessera giusta in non più di due gesti.
La ricerca filtra in tempo reale per nome del negozio o per numero, ignorando maiuscole e minuscole. La lista è ordinata alfabeticamente, sempre uguale a se stessa, perché la memoria muscolare conta: sapere dove sarà una tessera prima ancora di guardarla è metà del lavoro. C'è poi la preferita, segnalata da una stella: la carta che usi più spesso vive un po' più in alto, nelle scorciatoie, sui widget, sull'orologio.
Quando apri il dettaglio di una tessera, lo schermo dell'iPhone porta automaticamente la luminosità al massimo, perché i lettori della cassa leggono meglio uno schermo brillante; appena esci, torna com'era. E se l'app dovesse essere chiusa di colpo mentre stai mostrando una carta, la prossima volta che la riapri tutto si rimette a posto: un dettaglio invisibile finché non serve, e che al momento giusto fa la differenza. Per le situazioni più ostili (luce diretta, lettori vecchi, codici sbiaditi) c'è anche una modalità alto contrasto per i codici bidimensionali, che li rende quasi impossibili da non leggere.

Sulla Home, al polso, sul quadrante

Con il tempo VZCards ha smesso di vivere solo dentro l'app: oggi le tessere ti seguono ovunque, senza dover ogni volta sbloccare il telefono e cercare un'icona.
Sulla schermata Home dell'iPhone c'è un widget, disponibile in due dimensioni (piccola e media), che mostra direttamente la carta preferita, con il suo barcode pronto per essere avvicinato a un lettore. Tenendo premuto sul widget si può scegliere cosa accade al tocco: aprire solo quella carta oppure aprire l'intera lista. È una scelta piccola, ma rispetta due modi reali di vivere le tessere: chi alla cassa ha quasi sempre la stessa in mano, e chi invece preferisce decidere all'ultimo.
Lo stesso pensiero si è esteso ad Apple Watch. VZCards include un'app nativa per l'orologio: le carte si sincronizzano automaticamente dall'iPhone, in modo silenzioso e intelligente, senza consumare batteria e senza inviare due volte gli stessi dati. Sul polso il QR viene rigenerato in alto contrasto per essere sempre leggibile dai lettori della cassa, e per le carte prepagate compare anche il saldo residuo, evidenziato in verde se c'è credito o in rosso se la carta è esaurita. Il gesto, alla fine, è quello che si era immaginato fin dal primo giorno: avvicini il polso, paghi, esci.
Sul quadrante dell'orologio vivono le complicazioni di VZCards: una versione circolare con l'icona della carta, una rettangolare con titolo e sottotitolo, una in linea con un'etichetta breve. Tre formati per tre stili di quadrante, tutti con la stessa funzione: un tocco per aprire l'app, e da lì la tessera è a un passo.

Cinque lingue, un solo modo

VZCards parla italiano, inglese, francese, spagnolo e tedesco. Segue la lingua del dispositivo, ma se preferisci puoi forzarne una specifica nelle impostazioni: utile per chi vive a cavallo tra due lingue, o per chi ne sta imparando una e vuole circondarsene anche nei gesti quotidiani. Allo stesso modo, l'aspetto dell'app può seguire il sistema oppure essere fissato in chiaro o scuro: dettagli personali, perché un'app che vive nelle tasche deve poter assomigliare a chi la usa.

Backup, importazioni, fiducia

Le carte sono dati personali, e i dati personali si proteggono in due modi: tenendoli al sicuro e dando alla persona il pieno controllo. VZCards permette di esportare le tessere semplici in un file con estensione .vzc, che può essere condiviso via Mail, AirDrop, iCloud Drive, o salvato come backup personale. Le carte prepagate, per scelta precisa, restano sempre sul dispositivo: sono soldi, e non si esportano via per sbaglio. L'importazione da un file .vzc è altrettanto immediata: l'app riconosce i duplicati e non li sovrascrive, segnala le tessere malformate, conserva le immagini quando possibile.
Niente di tutto questo viaggia su Internet. VZCards non comunica con server esterni, non invia dati di tracciamento, non raccoglie statistiche d'uso. Non c'è registrazione, non c'è account, non c'è password. Le tue tessere stanno sul tuo telefono e sul tuo orologio, e basta.

L'ossessione per i dettagli che non si vedono

C'è una parte di VZCards che nessuno vedrà mai, e che però fa la differenza ogni volta che l'app si apre: i test. Ogni volta che aggiungo una funzione o ne sistemo una, faccio passare l'app attraverso una serie di prove automatiche che ne verificano il comportamento in decine di scenari. Provano la ricerca, l'ordinamento, il calcolo del residuo, la generazione dei codici, il riconoscimento del formato giusto, l'esportazione e l'importazione, la sincronizzazione con l'orologio, le traduzioni nelle cinque lingue. Provano persino i casi limite (la virgola al posto del punto, gli spazi inattesi, i colori scritti male), perché un'app che gestisce le tue carte non può permettersi di sorprenderti nel modo sbagliato proprio quando sei alla cassa.
Non sono test che servono a colpire qualcuno: sono una promessa silenziosa che faccio a chi userà l'app domani. Ogni volta che li lancio e diventano tutti verdi, sento di poter spedire un aggiornamento con la coscienza tranquilla.

Una storia che continua

VZCards è un'app viva, e come tutte le cose vive cresce ascoltando. Molte delle funzioni che oggi sembrano scontate non c'erano all'inizio: ci sono arrivate perché qualcuno, in coda da qualche parte, ha vissuto un piccolo problema e me l'ha raccontato. Per questo, se usi VZCards e ti viene un'idea, una richiesta, un suggerimento, anche piccolo, anche apparentemente sciocco, scrivimelo: leggo tutto, e dove posso lo trasformo in codice.
Se VZCards ti ha tolto un fastidio dalle giornate, anche solo una volta, la cosa più utile che puoi fare è lasciare una recensione sull'App Store. È così che le app indipendenti, fatte da una sola persona e senza pubblicità dietro, riescono a farsi conoscere e a sopravvivere.
Grazie per essere arrivato fin qui. La prossima volta che sarai in coda alla cassa, e vedrai qualcuno sfogliare app inutilmente, sorridi: forse stai per assistere all'inizio della prossima funzione di VZCards.

Vittorio.