← Tutte le idee Strumenti online

Store Stock Checker

Ti avvisa quando l'iPhone che vuoi è disponibile nel negozio vicino

Incasso mensile: 15.900 USD (fonte indicata nella scheda)

Cosa fa

Manda un avviso quando un modello preciso di iPhone (colore e memoria) torna disponibile negli Apple Store scelti. Molto semplice, fatto da un fondatore solo.

Come guadagna

Abbonamenti da 5, 10 e 20 $ al mese, oltre 2.100 abbonati. Lanciato a ottobre 2026, in coincidenza con l'uscita dei nuovi iPhone: ha raggiunto 15.900 $ al mese in poche settimane. Cresciuto con SEO, Reddit e X. Incassi verificati con Stripe.

Rendilo tuo

  • Per le uscite più attese in Italia: console, sneaker in edizione limitata, biglietti dei concerti tornati in vendita.
  • Avvisi su Telegram o WhatsApp invece che per email.
  • Anche il calo di prezzo, non solo la disponibilità.

Le frasi da scrivere all'AI

1. Base del sito e grafica

Crea un'app web in italiano chiamata "Torna Disponibile": un'app che controlla ogni pochi minuti la disponibilità di un prodotto molto richiesto (console, smartphone appena usciti) nei negozi online scelti e manda subito un avviso su Telegram o via email. Usa React, Vite, TypeScript e Tailwind CSS.

Pagine da creare:
1. Pagina iniziale con i prodotti più cercati e i prezzi
2. Registrazione
3. Nuovo avviso: prodotto, variante, negozi, canale di avviso
4. I miei avvisi con l'ultimo controllo e lo stato
5. Collega Telegram

Stile: rapido e chiaro: sfondo bianco, verde #16A34A per "disponibile", grigio per "esaurito", carattere "Inter", stato in grande. Nessuna immagine generica di stock.

Tutto deve funzionare perfettamente da telefono. Tutti i testi in italiano, chiari e senza parole tecniche.

2. Database, account e sicurezza

Collega il progetto a Supabase e attiva la registrazione con email e password.

Crea queste tabelle:
- "prodotti": nome, variante, negozio, indirizzo della pagina o dell'API, ultimo stato, ultimo controllo
- "avvisi": utente, prodotto, canale (email o Telegram), attivo
- "notifiche": avviso, quando, stato trovato

Regole di sicurezza obbligatorie:
- ogni utente vede solo i suoi avvisi
- i prodotti sono un elenco comune: un solo controllo per prodotto anche se lo seguono in mille
- il piano non si modifica dal browser

Usa esattamente il codice SQL che trovi nei "Dettagli tecnici" di questa scheda: eseguilo nel SQL Editor di Supabase prima di continuare, poi collega le pagine alle tabelle.

3. Un controllo per prodotto, mille avvisi

Il trucco che tiene bassi i costi: si controlla ogni prodotto una volta sola, non una volta per utente. Un cron ogni 2 minuti prende i prodotti seguiti da qualcuno e ne controlla la disponibilità (codice nei Dettagli tecnici).

Quando lo stato passa da "esaurito" a "disponibile" si avvisano subito tutti quelli che lo seguono: Telegram (istantaneo e gratis) o email.

Regole: controllare con calma (al massimo una richiesta ogni pochi minuti per negozio), usare le API ufficiali o i feed dei negozi quando ci sono, rispettare i termini d'uso e il file robots.txt. Mai comprare in automatico al posto dell'utente.

4. Avvisi e collegamento a Telegram

Per Telegram: l'utente apre il bot con un link che contiene un codice monouso, e il bot collega la chat al suo account. Da lì riceve gli avvisi con il link diretto al prodotto.

I miei avvisi: per ognuno l'ultimo controllo, lo stato e quante volte è tornato disponibile negli ultimi 30 giorni (utile per capire se vale la pena aspettare).

5. Pagamenti con Stripe

Aggiungi un abbonamento a 2,99 € al mese (3 avvisi) o 5,99 € al mese (illimitati). Gratis l'utente ha: un avviso via email. Con il piano Pro sblocca: più avvisi, Telegram e controlli più frequenti.

A pagamento riuscito il webhook porta l'utente al piano Pro; se l'abbonamento viene disdetto o non rinnovato lo riporta al piano gratuito.

Per la sessione di pagamento e il webhook segui la guida "Pagamenti con Stripe" di Fattibile.

6. Controlli specifici di questo progetto

Oltre ai controlli della guida "Controllo finale", verifica in particolare:
1. Avvisi doppi: simula un prodotto che resta disponibile per un'ora e controlla che l'avviso parta una volta sola, non a ogni controllo.
Correggi quello che non va e scrivimi cosa hai cambiato.

Dettagli tecnici

Avvisare solo quando lo stato cambia

Un trigger sul prodotto: quando passa da esaurito a disponibile crea le notifiche per tutti gli avvisi attivi. Così non parte un avviso a ogni controllo.

create table prodotti (
  id bigint generated always as identity primary key,
  nome text not null,
  negozio text not null,
  indirizzo text not null,
  disponibile boolean not null default false,
  controllato_il timestamptz
);

create table notifiche (
  id bigint generated always as identity primary key,
  avviso_id bigint not null,
  creata_il timestamptz not null default now(),
  inviata boolean not null default false
);

create function tornato_disponibile() returns trigger language plpgsql as $
begin
  if new.disponibile and not old.disponibile then
    insert into notifiche (avviso_id)
    select id from avvisi where prodotto_id = new.id and attivo;
  end if;
  return new;
end $;

create trigger su_cambio after update of disponibile on prodotti
for each row execute function tornato_disponibile();

Mandare l'avviso su Telegram

Un bot di Telegram si crea gratis con @BotFather; il token del bot va solo nei segreti della Edge Function.

export async function avvisaTelegram(chatId: string, prodotto: string, link: string) {
  const token = Deno.env.get("TELEGRAM_TOKEN")!;
  await fetch("https://api.telegram.org/bot" + token + "/sendMessage", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      chat_id: chatId,
      text: "✅ " + prodotto + " è di nuovo disponibile!\n" + link,
      disable_web_page_preview: false,
    }),
  });
}

Pezzi comuni a tutti i progetti

Glossario

Cron
Un'operazione programmata che parte da sola a orari fissi, per esempio ogni lunedì mattina.
robots.txt
Il file in cui un sito dice quali pagine i programmi automatici possono visitare.