Vai al contenuto

Guida allo sviluppo di applicazioni Marketplace

  • 5 min read
  • Ultimo aggiornamento 5 novembre 2026
In questa pagina
  1. Modello di lavoro
  2. 1. Definisci la tua applicazione
  3. 2. Permessi
  4. 3. Autenticazione
  5. 4. Ascolto di eventi con webhooks
  6. 5. Rilascio
  7. 6. Checklist di pre-rilascio

Le app Blesium sono componenti aggiuntivi che aggiungono nuove funzionalità a dashboard e prodotti (CRM, ERP, E-Commerce, Mail…), come le app Shopify App Store o Slack. Non applicazioni mobili installate sul telefono.

In breve: il tuo codice viene eseguito sul tuo server. In Blesium memorizzi solo l'identità della tua applicazione, le autorizzazioni richieste e il suo prezzo; quando un tenant installa la tua applicazione, questa funziona tramite l'API di Blesium.

Modello di lavoro

La tua applicazione funziona sul modello "HTTP remoto": il codice non viene caricato in Blesium, ma viene eseguito oltre i confini della rete sul tuo server e comunica con chiamate REST firmate, protette da SSRF e limitate in velocità. Nessun accesso diretto al database.

  • Al Blesium. → L'identità dell'applicazione, la categoria, i prodotti di destinazione, le autorizzazioni richieste, i prezzi e la cronologia delle versioni
  • Ne hai uno. → L’applicazione stessa: logica di business, interfaccia, elaborazione dati
  • Accesso ai dati → Solo tramite API, solo entro i permessi approvati dal tenant

1. Definisci la tua applicazione

Campi da compilare quando si crea una nuova applicazione dalla console:

  • Nome → Nome visualizzato in negozio
  • Lumaca → Allegato indirizzo; solo lettere minuscole, numeri e trattini
  • Categoria → Una delle seguenti liste canoniche
  • Descrizione → Cosa fa l'applicazione
  • Prodotti di destinazione → crm · erp · b2b · posta elettronica · call center · negozio · musavir
  • Permessi richiesti → Scopi per cui la tua applicazione deve funzionare
  • Prezzi → Gratuito · Una tantum · Abbonamento

La categoria deve provenire dalla lista canonica; una chiave al di fuori della lista rifiuterà la presentazione.

  • integrazione → Collega Blesium ad un sistema esterno
  • Relazione → Aggiunge report/indicatore alla dashboard
  • tema → Tema visivo
  • automazione → Automazione del workflow
  • canale_vendite → Canale di vendita
  • Messaggistica → Canale di messaggistica
  • spedizione → Cargo/carico
  • widget → Pannello Widget
  • settore_pacco → Pacchetto settore
  • lingua_pack → Pacchetto linguistico
  • Altro → Altri prodotti

Se sei uno sviluppatore completo di prodotti, puoi selezionare come target solo i prodotti che approvi; un invio selezionato con un prodotto non completo viene rifiutato.

2. Permessi

L'applicazione verrà eseguita solo con le autorizzazioni richieste e approvate dal tenant durante l'installazione. Chiedere meno permessi: i permessi inutilmente ampi perderanno fiducia nell'autorizzazione all'installazione.

Ambito d'applicazioneCosa offreQuando vuoi
core.readLeggere i dati coreLocatari, utenti, abbonamenti.
core.writeScrivere dati del kernelSe creare/aggiorna il record del kernel
crm.read / crm.writeLettura/scrittura CRMSe stai lavorando con i dati dei clienti, delle riunioni e delle richieste,
erp.readLettura ERPSe stai leggendo dati di stock, correnti, fatture
b2b.readLettura B2BSe state leggendo i dati di vendita al dettaglio/all'ingrosso,
negozio.leggiLettura e-commerceSe si leggono i dati del prodotto, dell'ordine, del carrello
mail.sendInvia e-mailSi stanno inviando messaggi di posta elettronica per conto del tenant.
webhooks.subscribeIscriviti agli eventiSe vuoi sapere quando succede

L'installazione registra le autorizzazioni concesse dal tenant; l'applicazione può funzionare solo all'interno di tali autorizzazioni.

3. Autenticazione

Ogni richiesta all'API Blesium è firmata con una chiave API. Il formato della chiave è blsk_{ortam}_{kimlik}_{gizli}, e la parte segreta viene mostrata solo una volta al momento della creazione.

curl https://firmaniz.blescript.com/api/v1/me \
  -H "Authorization: Bearer blsk_live_ab12cd34_gizli-anahtariniz"

Non mettere la chiave sul lato client (browser, app mobile) — conservala solo sul tuo server. Se ha perso, spegnerlo.

4. Ascolto di eventi con webhooks

Invece di fare costantemente domande, mettiti in contatto quando succede. Ogni consegna viene fornita con tre rubriche:

  • x-blesium-evento Il nome dell'evento (o. fattura.pagato)
  • x-blesyum-consegna → ID di consegna; utilizzare per eliminare i duplicati
  • x-blesyum-signature → Firma HMAC-SHA256 del corpo grezzo (esadecimale)

Eventi a cui puoi iscriverti e quando vengono attivati:

  • Fattura. → Creazione di una nuova fattura
  • Fattura.pagata → Fattura pagata
  • Fattura.rimborsata → Fattura restituita
  • Abbonamento. → Abbonamento rinnovato
  • abbonamento.plan_changed → Piano di abbonamento cambiato
  • Abbonamento. → Abbonamento annullato
  • utente.invitato → Utente invitato al team
  • user.joined → Utente invitato si è unito
  • ticket.created → Richiesta di supporto aperta
  • biglietto.risposta → Richiesta di supporto risolta

Verificare la firma rispetto al corpo grezzo, utilizzando un confronto a tempo fisso (non come convertito in JSON — le differenze di spazio interromperanno la firma):

import crypto from "node:crypto";

export function imzaDogrula(rawBody, header, secret) {
  const beklenen = crypto.createHmac("sha256", secret).update(rawBody).digest("hex");
  const a = Buffer.from(beklenen);
  const b = Buffer.from(header ?? "");
  return a.length === b.length && crypto.timingSafeEqual(a, b);
}

Non elaborare richieste di firma non verificate. Lo stesso ID di consegna può tornare nuovamente (retry) — rendere le operazioni resistenti alla ripetizione.

5. Rilascio

Campi da inserire quando si pubblica una versione:

  • Canale → stabile o beta
  • Diffusione → Apertura graduale da 0–100%
  • Stato → Trasmesso o ritirato

Flusso di pubblicazione:

  1. Invia versione — Immettere il numero di versione, il canale e la nota di modifica.
  2. Spacchetta gradualmente — Rilascia prima una piccola fetta con una percentuale di diffusione.
  3. Attendi la revisione: quando l'app supera la revisione, viene rilasciata nello store.
  4. Ripristina se necessario — Ripristina la versione problematica; il record non viene eliminato, ma viene ripristinata la versione precedente.

Mostra lo stato dell'applicazione nella console:

StatoChe cosa intende?Cosa fai?
BozzaNon ancora inviatoCompila i campi e invia
In recensioneLa squadra Blesium sta cercando.Attendere; potrebbero essere necessarie ulteriori informazioni
TrasmissioneE' elencato nel negozio.Puoi rilasciare versioni.
RespintoProposta non accettataRi-invio corretto
In attesaRimuovi dalla trasmissioneRisolvere il problema e ottenere supporto

6. Checklist di pre-rilascio

  • Hai ridotto al minimo le autorizzazioni richieste.
  • Convalidi la firma del webhook, non rielabori la consegna ripetuta.
  • La chiave API è solo sul lato server; il tuo flusso di backup delle perdite è pronto.
  • La tua applicazione non interrompe il lavoro del tenant in caso di guasto (soft drop).
  • La descrizione e le schermate mostrano cosa fa effettivamente l'app.

Apri una richiesta di supporto dove ti trovi bloccato: scrivila con lo slug della tua applicazione per ottenere una risposta più rapida.

Guida allo sviluppo di applicazioni Marketplace | Blesyum Yazılım