Salta al contenuto

Ti risponde Salvatore, di persona: niente centralini, niente ticket.

App Shopify personalizzata: quando serve davvero e come la sviluppo

Copertina: app Shopify personalizzata, quando serve e come si sviluppa, con blocchi del tema, Admin API e webhook

Paghi cinque o sei app in abbonamento, ognuna fa metà di quello che ti serve, e l’altra metà la fai a mano: copi ordini nel gestionale, aggiorni giacenze, mandi email. A un certo punto ti chiedi se non convenga farsi fare un’app tutta tua.

Un’app Shopify personalizzata serve quando hai bisogno di dati, integrazioni o regole che non coprono né le impostazioni di Shopify, né Shopify Flow, né un’app dell’App Store: per esempio collegare il negozio al tuo gestionale o automatizzare passaggi tra sistemi diversi. Negli altri casi è uno spreco, perché un’app va anche ospitata e mantenuta.

Ti spiego come decido, cosa può fare un’app su misura, come la sviluppo in pratica, dove gira, chi la mantiene e cosa deve rispettare per la privacy. Se sei agli inizi con la piattaforma, parti da cos’è Shopify e come funziona.

App pubblica, app personalizzata o nessuna app?

Prima di scrivere una riga di codice, faccio sempre questo percorso. Ci si ferma al primo gradino che risolve il problema.

Schema per decidere tra impostazioni di Shopify e Flow, app pubblica, modifica al tema e app personalizzata
Il percorso che seguo prima di proporre un’app su misura.

Prima prova Shopify Flow e le impostazioni

Molte automazioni non hanno bisogno di un’app. Shopify Flow è gratuito sui piani Basic, Grow, Advanced e Plus, secondo l’help center di Shopify su Flow: ragiona per “quando succede questo, se vale questa condizione, fai quest’altro”. Per esempio: metti un tag ai clienti che hanno fatto tre ordini, avvisami quando un prodotto sta finendo, nascondi i prodotti esauriti.

Dal piano Grow in su Flow può anche mandare richieste ad altri sistemi. Per collegamenti semplici a volte basta questo.

Quando un’app dell’App Store basta

Se il tuo bisogno è comune (recensioni, abbonamenti, traduzioni), quasi sicuramente esiste un’app pubblica, mantenuta da altri e già provata su migliaia di negozi. Prima di installarla guardo tre cose: quali permessi chiede sui dati, quanto costa ogni mese e se carica codice nel negozio. Ai costi delle app si sommano quelli del piano, che trovi nella guida ai costi di Shopify.

E se il problema riguarda solo cosa si vede nelle pagine, spesso basta una sezione del tema e qualche metafield, senza nessuna app.

Cosa può fare un’app su misura

Un’app personalizzata è un programma che parla con il tuo negozio attraverso le API di Shopify, con i permessi che le dai tu. Ecco i casi in cui ha davvero senso.

Integrare un gestionale o un magazzino

È il caso più frequente: il gestionale o il magazzino ha i suoi dati, Shopify i suoi, e qualcuno li allinea a mano. Un’app può leggere gli ordini appena arrivano e mandarli al gestionale, e riportare su Shopify giacenze e stati di spedizione.

Automatizzare ordini e clienti

Regole che Flow non sa esprimere, o che richiedono dati esterni: assegnare gli ordini a chi li prepara secondo criteri tuoi, creare documenti in un altro sistema, sincronizzare i clienti con il CRM. Tutto quello che oggi fai copiando e incollando è un candidato.

Aggiungere blocchi al tema o al checkout

Un’app può portare con sé delle estensioni: blocchi da inserire nel tema dall’editor (che Shopify toglie da solo se disinstalli l’app), estensioni del checkout e Shopify Functions per sconti, spedizioni e pagamenti su misura.

Attenzione ai piani: secondo la documentazione di Shopify sulle Functions, solo i negozi Plus possono usare app personalizzate che contengono Functions. Sugli altri piani le Functions arrivano solo da app pubbliche dell’App Store.

Come la sviluppo, in pratica

Dal 1° gennaio 2026 le nuove app personalizzate non si creano più dall’admin del negozio: si creano dal Dev Dashboard e poi si installano sul negozio, come spiega l’help center sulle app personalizzate. Le app create prima di quella data continuano a funzionare.

Un’app personalizzata usa la distribuzione “custom”: si installa su un solo negozio, oppure su più negozi della stessa organizzazione Plus. È proprio quello che serve per un’app fatta per te.

Shopify CLI e struttura del progetto

Lavoro con Shopify CLI, lo strumento a riga di comando di Shopify, che richiede Node.js 22.12 o successivo. I comandi principali sono quattro:

terminale

npm install -g @shopify/cli@latest
shopify app init     # crea il progetto (modello React Router)
shopify app dev      # lo prova su un negozio di sviluppo
shopify app deploy   # pubblica configurazione ed estensioni

Il progetto ha un file shopify.app.toml con la configurazione dell’app, una cartella app/ con le pagine e la gestione dei webhook e una cartella extensions/ per le estensioni. Un dettaglio che conta: shopify app deploy pubblica configurazione ed estensioni, ma non la parte web dell’app, che va messa su un hosting a parte. Tutti i comandi sono nel riferimento di Shopify CLI per le app.

Permessi (scope) e Admin GraphQL API

Ogni app chiede solo i permessi che le servono, dichiarati in shopify.app.toml. Un’app che legge ordini e prodotti, per esempio:

shopify.app.toml

[access_scopes]
scopes = "read_orders,read_products"

Un dettaglio che sorprende molti: con read_orders l’app vede solo gli ordini degli ultimi 60 giorni. Per lo storico completo serve anche read_all_orders.

Con i dati del negozio l’app parla attraverso l’Admin GraphQL API. La vecchia API REST è considerata “legacy” da ottobre 2024 e dall’aprile 2025 le nuove app pubbliche devono usare solo GraphQL: io uso GraphQL anche per quelle personalizzate. Ecco una query che legge gli ultimi cinque ordini con numero, data e totale:

Esempio di query GraphQL all'Admin API di Shopify per leggere gli ultimi cinque ordini con numero, data e totale
Una query all’Admin API: gli ultimi cinque ordini.

ultimi-ordini.graphql

query UltimiOrdini {
  orders(first: 5, reverse: true, sortKey: CREATED_AT) {
    nodes {
      id
      name
      createdAt
      totalPriceSet {
        shopMoney {
          amount
          currencyCode
        }
      }
    }
  }
}

Campi e parametri sono quelli della query orders nell’Admin GraphQL API, versione 2026-10.

Webhook e dati dei clienti

Invece di chiedere ogni minuto “ci sono ordini nuovi?”, l’app si fa avvisare da Shopify con i webhook: quando succede qualcosa, Shopify chiama un indirizzo dell’app. Anche questi si dichiarano in shopify.app.toml:

shopify.app.toml

[webhooks]
api_version = "2026-10"

  [[webhooks.subscriptions]]
  topics = ["orders/create"]
  uri = "https://app.tuodominio.it/webhooks/ordini"

Ogni chiamata arriva firmata (intestazione X-Shopify-Hmac-SHA256, calcolata con il segreto dell’app): l’app deve verificare la firma prima di fidarsi dei dati. Il modello di progetto di Shopify lo fa già in automatico.

Dove gira l’app e chi la mantiene

Questa è la parte che nei preventivi spesso manca, e che invece decide quanto ti costerà l’app negli anni.

Hosting

Shopify non ospita la parte web delle app: serve un servizio di hosting, e la guida di Shopify al deploy ne cita diversi. Le estensioni e le Functions invece si pubblicano su Shopify con il comando di deploy.

Il modello di progetto parte con un piccolo database SQLite per le sessioni: va bene per provare, ma in produzione lo sostituisco con un database vero, con copie di sicurezza.

Versioni dell’API e aggiornamenti

Shopify pubblica una nuova versione delle API ogni tre mesi, e ogni versione stabile è supportata per almeno 12 mesi, come spiega la documentazione sulle versioni delle API. In pratica almeno una volta l’anno l’app va aggiornata alla versione nuova e ricontrollata. A questo si aggiungono gli aggiornamenti delle librerie e del server.

Per questo un’app personalizzata la propongo sempre insieme a un piano di assistenza e manutenzione: un’app lasciata a sé stessa prima o poi smette di funzionare.

Privacy: cosa deve rispettare un’app

Un’app che legge ordini e clienti tratta dati personali, quindi vale il GDPR. Ti spiego la parte tecnica: per i testi legali e le scelte sui dati confrontati con il tuo consulente privacy o avvocato.

Shopify chiama questi dati “protected customer data” e chiede alle app requisiti precisi: trattare solo i dati che servono, cifrarli, non tenerli più del necessario, registrare chi vi accede. Per nome, indirizzo, telefono ed email i requisiti aumentano.

Le app dell’App Store devono anche rispondere a tre webhook obbligatori (customers/data_request, customers/redact, shop/redact) per le richieste di accesso e cancellazione dei dati, come spiega la pagina di Shopify sulla conformità alle leggi privacy. Per un’app personalizzata li implemento comunque: è il modo più semplice per gestire queste richieste.

Se l’app gira su un server di terzi, chi lo gestisce tratta dati per conto tuo: è un responsabile del trattamento ai sensi dell’art. 28 del Regolamento (UE) 2016/679. Il quadro completo del negozio è nella mia checklist GDPR per Shopify.

Domande frequenti

Un’app personalizzata si può pubblicare sull’App Store?

No, non la stessa app. Secondo la documentazione di Shopify il metodo di distribuzione, personalizzata o pubblica, si sceglie all’inizio e non si può cambiare dopo. Se un giorno volessi vendere la tua app ad altri negozi, bisognerebbe creare una nuova app pubblica, adattarla ai requisiti dell’App Store e passare la revisione di Shopify.

Serve un server per un’app Shopify?

Quasi sempre sì. La parte web dell’app (pannello nell’admin, ricezione dei webhook, collegamento al gestionale) va ospitata su un servizio di hosting, che Shopify non fornisce. Estensioni del tema, estensioni del checkout e Functions invece si pubblicano su Shopify. Il costo dell’hosting va messo in conto fin dal preventivo, insieme alla manutenzione.

Ogni quanto va aggiornata un’app?

Shopify pubblica una nuova versione delle API ogni tre mesi e supporta ogni versione stabile per almeno 12 mesi. Quindi almeno una volta l’anno l’app va portata alla versione nuova e ricontrollata. In più vanno aggiornate librerie e server per motivi di sicurezza. Un’app senza manutenzione prima o poi smette di funzionare.

Meglio un’app o una modifica al tema?

Se il problema riguarda solo cosa si vede nelle pagine (un campo in più nella scheda prodotto, una sezione nuova), basta una modifica al tema, che costa meno e non va ospitata. Se servono dati che il tema non ha, integrazioni con altri sistemi o automazioni che lavorano anche quando nessuno visita il negozio, serve un’app.

Conclusione

Un’app su misura non è un traguardo da raggiungere: è l’ultimo gradino, dopo impostazioni, Flow, app pubbliche e tema. Quando serve davvero, però, può sostituire più abbonamenti e ore di lavoro a mano, a patto di metterla su un hosting serio e di mantenerla nel tempo.

Come la progetto e la consegno lo trovi nella pagina su sviluppo e migrazione dei negozi Shopify.

Hai quattro o cinque app che fanno metà di quello che ti serve? Scrivimi l’elenco dalla pagina contatti: ti dico se una sola app su misura conviene. Ti rispondo io.

Scritto da

Salvatore Pitone

Sviluppatore web, realizzo siti WordPress ed e-commerce per professionisti e piccole imprese. Sul blog condivido quello che imparo ogni giorno lavorando sui siti dei miei clienti.

Richiedi un preventivo

Preventivo gratuito

Partiamo dal tuo progetto, con calma e chiarezza.

Scrivimi cosa ti serve. Ti richiamo io, ti faccio qualche domanda e ti mando un preventivo chiaro, senza sorprese e senza tecnicismi.

Salvatore Pitone, sviluppatore web, sorridente con le braccia incrociate
Ti rispondo io, Salvatore. Niente call center: leggo personalmente ogni richiesta e ti rispondo entro 24 ore lavorative.

Raccontami il tuo progetto

Ti rispondo personalmente entro 24 ore lavorative.