Conductor
Un'API moderna per un gestionale vecchio che tutti usano ma nessuno riesce a collegare
Incasso mensile: 45.652 USD (fonte indicata nella scheda)
Cosa fa
API per sviluppatori che dà accesso in tempo reale ai dati di QuickBooks Desktop (contabilità molto diffusa negli USA), nascondendo la complessità della tecnologia vecchia che usa.
Come guadagna
49 $ al mese per ogni archivio aziendale collegato, piani su misura per le aziende grandi. 306 abbonati e 507.000 $ incassati in totale dal 2022. Incassi verificati con Stripe.
Rendilo tuo
- Per l'Italia: un'API unica per i programmi di fatturazione più usati (Fatture in Cloud, TeamSystem, Danea).
- Collegamento tra gestionale e negozio online, senza copiare a mano.
- Per i commercialisti: dati dei clienti raccolti in automatico.
Le frasi da scrivere all'AI
1. Base del sito e grafica
Crea un'app web in italiano chiamata "Ponte Fatture": un'API unica per sviluppatori italiani che devono leggere e scrivere dati in diversi programmi di fatturazione (clienti, prodotti, fatture), con un unico formato e un'unica chiave. Usa React, Vite, TypeScript e Tailwind CSS.
Pagine da creare:
1. Pagina iniziale per sviluppatori con un esempio di codice e i prezzi
2. Registrazione e chiave API
3. Collegamento dei programmi dei clienti (login ufficiale del programma)
4. Documentazione con esempi
5. Registro delle chiamate ed errori
Stile: da sviluppatori: sfondo bianco, blu #1D4ED8, codice su sfondo #0F172A, carattere "Inter" e "JetBrains Mono". 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:
- "chiavi_api": impronta, sviluppatore
- "collegamenti": sviluppatore, cliente finale, programma, token cifrato, scadenza
- "chiamate": collegamento, operazione, esito, millisecondi, data
Regole di sicurezza obbligatorie:
- ogni sviluppatore vede solo i suoi collegamenti e registri
- i token dei programmi sono cifrati e non tornano mai al browser
- le chiavi API si salvano solo come impronta
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 formato unico, tanti programmi
Per ogni programma di fatturazione c'è un "adattatore" che usa la sua API ufficiale e traduce i dati in un formato unico: cliente (nome, partita IVA, indirizzo), prodotto, fattura (righe, IVA, totale). Lo sviluppatore usa sempre gli stessi indirizzi, per esempio GET /fatture o POST /clienti (codice nei Dettagli tecnici).
Il cliente finale collega il suo programma con il login ufficiale (OAuth): i token si salvano cifrati e si rinnovano da soli.
Errori chiari in italiano e in inglese, con il motivo ("partita IVA non valida", "il programma non risponde, riprova tra 1 minuto").
4. Registro e affidabilità
Registro delle chiamate per collegamento con esito e tempi; nuovo tentativo automatico se il programma è temporaneamente irraggiungibile.
Il valore sta nel fare bene la parte noiosa: ogni programma ha le sue stranezze, e chi usa l'API non deve più preoccuparsene.
5. Pagamenti con Stripe
Aggiungi un abbonamento a 19 € al mese per ogni azienda collegata. Gratis l'utente ha: un collegamento di prova. Con il piano Pro sblocca: collegamenti illimitati, tutti i programmi supportati e registro completo.
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. Formato: crea la stessa fattura tramite l'API in due programmi diversi e controlla che rileggendola esca identica.
Correggi quello che non va e scrivimi cosa hai cambiato.
Dettagli tecnici
Adattatore verso un formato unico
Ogni programma ha il suo adattatore; chi usa l'API vede sempre lo stesso formato di fattura.
export type Fattura = {
numero: string; data: string;
cliente: { nome: string; partitaIva?: string };
righe: { descrizione: string; quantita: number; prezzo: number; aliquotaIva: number }[];
totale: number;
};
export interface Adattatore {
elencoFatture(token: string, dal: string): Promise<Fattura[]>;
creaFattura(token: string, f: Fattura): Promise<string>;
}
// Esempio: traduzione dal formato di un programma a quello unico
export function daProgrammaA(r: any): Fattura {
return {
numero: String(r.number),
data: r.date,
cliente: { nome: r.entity?.name ?? "", partitaIva: r.entity?.vat_number },
righe: (r.items_list ?? []).map((x: any) => ({
descrizione: x.name, quantita: x.qty, prezzo: x.net_price, aliquotaIva: x.vat?.value ?? 22,
})),
totale: r.amount_gross,
};
}
Pezzi comuni a tutti i progetti
Glossario
- API
- Un insieme di indirizzi con cui un programma chiede o manda dati a un altro programma.
- OAuth
- Il login ufficiale di un servizio che dà a un'app un permesso limitato senza farle conoscere la password.
