Skip to content

Formato e requisiti del catalogo

Definizione

Un catalogo prodotti rappresenta l'intera collezione di prodotti disponibili per l'acquisto su un negozio di e-commerce.

Ogni voce del catalogo è rappresentata come un oggetto JSON con la seguente struttura:

javascript
{
  "id": "805371A",
  "itemGroupId": "805371",
  "categoryHierarchies": [
    { "categories": ["Women", "Shoes"] },
    { "categories": ["Sports & Fitness", "Shoes"] }
  ],
  "title": "Red Shoes",
  "description": "Fancy red shoes",
  "brand": "Designer Brand",
  "languageCode": "en",
  "productMetadata": {
    "stockState": "IN_STOCK",
    "availableQuantity": 30,
    "exactPrice": {
      "originalPrice": 119.99,
      "displayPrice": 89.99
    },
    "currencyCode": "USD",
    "canonicalProductUri": "https://www.store.com/shoes/red-shoes",
    "images": [
      {
        "uri": "https://www.store.com/images/805371.jpg",
        "width": 500,
        "height": 500
      }
    ]
  }
}

INFO

Nota: L'esempio sopra include interruzioni di riga per leggibilità, tuttavia il file di catalogo che crei deve includere una voce di catalogo codificata in JSON per riga. Il file deve anche essere codificato in UTF-8.

javascript
{"id":"805371","categoryHierarchies":[{"categories":["Women","Shoes"]}],"title":"Red Shoes","description":"Fancy red shoes","languageCode":"en","productMetadata":{"exactPrice":{"originalPrice":119.99,"displayPrice":89.99},"currencyCode":"USD","canonicalProductUri":"https://www.store.com/shoes/red-shoes","images":[{"uri":"https://www.store.com/images/805371.jpg","width":500,"height":500}]}}
{"id":"805372","categoryHierarchies":[{"categories":["Women","Shoes"]}],"title":"Green Shoes","description":"Fancy green shoes","languageCode":"en","productMetadata":{"exactPrice":{"originalPrice":148.99,"displayPrice":129.99},"currencyCode":"USD","canonicalProductUri":"https://www.store.com/shoes/green-shoes","images":[{"uri":"https://www.store.com/images/805372.jpg","width":500,"height":500}]}}

Proprietà

id

  • Tipo: Stringa
  • Obbligatorio
  • Dimensione massima: 128 byte

Questo ID deve essere univoco tra tutte le voci del catalogo all'interno dello stesso catalogo. Deve essere lo stesso ID tracciato con le visualizzazioni delle pagine del prodotto nella tua integrazione Fanplayr.

itemGroupId

  • Tipo: Stringa
  • Obbligatorio (a seconda della configurazione del livello del catalogo)
  • Dimensione massima: 128 byte

Identificatore del gruppo di varianti di prodotto, noto anche come identificatore del prodotto "master". Questo collega tutte le varianti di prodotto correlate per i risultati di previsione.

O tutte le voci del tuo catalogo devono avere un valore per itemGroupId oppure nessuna di esse può averlo. Non è possibile importare dati di catalogo con itemGroupId impostato per alcuni articoli ma non per altri. Questo campo è obbligatorio quando si utilizza il livello del catalogo Master/Master o Variant/Master.

categoryHierarchies

  • Tipo: Array
  • Obbligatorio (è richiesta almeno una voce di gerarchia di categorie)
  • Dimensione massima: 1000 byte (quando codificato come JSON)

Categorie della voce del catalogo. Questo campo viene ripetuto per supportare una voce del catalogo che appartiene a diverse gerarchie di categorie parallele. Deve essere presente almeno una categoria.

Ad esempio, se un prodotto di scarpe appartiene sia a Donne > Scarpe che a Sport & Fitness > Scarpe, potrebbe essere rappresentato come:

javascript
"categoryHierarchies": [
  { "categories": ["Women", "Shoes"] },
  { "categories": ["Sports & Fitness", "Shoes"] }
]

title

  • Tipo: Stringa
  • Obbligatorio
  • Dimensione massima: 500 byte

Titolo della voce del catalogo.

description

  • Tipo: Stringa
  • Dimensione massima: 500 byte

Descrizione della voce del catalogo. Questo valore non può essere visualizzato nei widget ma può aiutare a migliorare il modello di raccomandazione.

brand

  • Tipo: Stringa
  • Dimensione massima: 100 byte

Il marchio o produttore associato al prodotto.

languageCode

  • Tipo: Stringa
  • Obbligatorio

La lingua del titolo/descrizione. Utilizzare i tag di lingua definiti da BCP 47. https://www.rfc-editor.org/rfc/bcp/bcp47.txt. I nostri codici lingua supportati includono "en", "es", "fr", "de", "ar", "fa", "zh", "ja", "ko", "sv", "ro", "nl".

productMetadata

  • Tipo: Oggetto
  • Obbligatorio

Contiene le proprietà stockState, availableQuantity, exactPrice, currencyCode, canonicalProductUri e images.

stockState

  • Tipo: ENUM
  • Annidato sotto: productMetadata
  • Obbligatorio

Deve essere uguale a uno dei seguenti valori:

  • IN_STOCK - Articolo disponibile.
  • OUT_OF_STOCK - Articolo esaurito.
  • PREORDER - Articolo in stato di pre-ordine.
  • BACKORDER - Articolo in arretrato (cioè temporaneamente esaurito).

availableQuantity

  • Tipo: Numero
  • Annidato sotto: productMetadata

La quantità rimanente dell'articolo disponibile per l'acquisto.

exactPrice

  • Tipo: Oggetto
  • Obbligatorio:

Contiene le proprietà originalPrice e displayPrice.

originalPrice

  • Tipo: Float
  • Annidato sotto: productMetadata.exactPrice
  • Obbligatorio

Il prezzo originale dell'articolo prima degli sconti, come i prezzi di vendita.

displayPrice

  • Tipo: Float
  • Annidato sotto: productMetadata.exactPrice
  • Obbligatorio

Il prezzo attuale dell'articolo dopo gli sconti, come i prezzi di vendita.

currencyCode

  • Tipo: Stringa
  • Obbligatorio

Il codice valuta per i prezzi degli articoli. Utilizzare il codice ISO-4217 a tre caratteri.

canonicalProductUri

  • Tipo: Stringa
  • Obbligatorio

L'URI base del prodotto. Se il tuo prodotto ha URI diversi per colori o taglie diverse, se possibile fornisci l'URI che punta al prodotto base senza varianti.

images

  • Tipo: Array
  • Obbligatorio (è richiesta almeno un'immagine)

Un array di immagini del prodotto. Solo la prima immagine viene visualizzata nel componente di Raccomandazione. È richiesta almeno un'immagine.

Ogni immagine dovrebbe essere un oggetto con la seguente struttura:

javascript
{
  // Obbligatorio. URL dell'immagine.
  // Dimensione massima: 1000 byte
  "uri": "https://www.store.com/images/805371.jpg",
  // Opzionale. Larghezza dell'immagine in pixel.
  "width": 500,
  // Opzionale. Altezza dell'immagine in pixel.
  "height": 500
}

tags

  • Tipo: Array di Stringhe
  • Dimensione massima: 500 byte (combinati)

Tag opzionali da associare alla voce del catalogo. Ciascuno dovrebbe essere una stringa codificata in UTF-8. La lunghezza totale di tutti i tag per una singola voce del catalogo non deve superare i 500 byte.

itemAttributes

  • Tipo: Oggetto
  • Dimensione massima: 1000 byte (combinati)

Opzionale. Attributi aggiuntivi dell'articolo da includere nel modello di raccomandazione. Ad esempio, per i prodotti al dettaglio questo potrebbe includere lo stile del prodotto, il colore, ecc. Questi attributi possono aggiungere segnali aggiuntivi per i modelli di raccomandazione.

Gli attributi dell'articolo dovrebbero essere divisi in set categoriali e numerici con la seguente struttura:

json
"itemAttributes": {
  "categoricalFeatures": {
    "colors": {
      "value": ["red", "blue"]
    },
    "sizes": {
      "value": ["S", "M", "L"]
    }
  },
  "numericalFeatures": {
    "lengths_cm": {
      "value": [2.3, 15.4]
    },
    "heights_cm": {
      "value":[8.1, 6.4]
    }
  }
}

customData

È possibile aggiungere dati personalizzati a un prodotto e utilizzarli per funzionalità extra.

Ad esempio, per impostare parole chiave e campioni di colore in Personal Shopper o Product Tag Explorers è possibile aggiungere quanto segue:

json
"customData": {
  "keywords": [
    { "text": "ON SALE", "bg": "#ff0000", "fg": "#fff" },
    { "text": "Special Brand" }
  ],
  "colors": ["red", "#00ff00"]
}

Il formato del file del catalogo prodotti ha i seguenti requisiti:

  • Ogni voce del catalogo deve essere formattata utilizzando la struttura JSON descritta sopra.
  • Ogni voce del catalogo deve essere contenuta su una singola riga.
  • La dimensione totale del file del catalogo non deve superare i 50 MB non compressi. Se il tuo catalogo supera questa dimensione, puoi dividerlo e importarlo più volte.
  • Tutti gli articoli devono utilizzare la stessa lingua e valuta. Non è possibile mescolare lingue e valute diverse nello stesso catalogo a causa di limitazioni durante l'addestramento dei modelli di IA. Dovrai gestire cataloghi e progetti separati se il tuo negozio di e-commerce contiene più viste del negozio con lingue e/o valute diverse.

Di seguito è riportato un esempio di file di catalogo con 2 articoli:

javascript
{"id":"PRODUCT_1","categoryHierarchies":[{"categories":["Women","Shoes"]},{"categories":["Sports & Fitness","Shoes"]}],"title":"Red Shoes","description":"Fancy red shoes","languageCode":"en","productMetadata":{"stockState":"IN_STOCK","availableQuantity":30,"exactPrice":{"originalPrice":119.99},"currencyCode":"USD","canonicalProductUri":"https://www.store.com/shoes/red-shoes","images":[{"uri":"https://www.store.com/images/PRODUCT_1.jpg","width":500,"height":500}]}}
{"id":"PRODUCT_2","categoryHierarchies":[{"categories":["Men","Shoes"]},{"categories":["Sports & Fitness","Shoes"]}],"title":"Blue Shoes","description":"Fast blue shoes","languageCode":"en","productMetadata":{"stockState":"IN_STOCK","availableQuantity":17,"exactPrice":{"originalPrice":119.99},"currencyCode":"USD","canonicalProductUri":"https://www.store.com/shoes/blue-shoes","images":[{"uri":"https://www.store.com/images/PRODUCT_2.jpg","width":500,"height":500}]}}

Prima di importare il tuo catalogo per la prima volta, devi determinare se desideri tracciare gli articoli master o le varianti con i tuoi eventi utente sul sito e se desideri che gli articoli master o le varianti vengano restituiti con le tue previsioni. Fanplayr ti assisterà nella configurazione della tua integrazione.

Gli articoli master rappresentano un gruppo di articoli simili (in altre parole, un gruppo SKU). Un esempio di articolo master potrebbe essere "Maglietta con scollo a V", con varianti come "Maglietta marrone con scollo a V, taglia XL" e "Maglietta bianca con scollo a V, taglia S". Master e varianti sono talvolta descritti come articoli "padre" e "figlio".

Le possibili combinazioni per il Livello del Catalogo sono:

  • Variante/Variante: Acquisisci le varianti con gli eventi utente e restituisci le varianti con le previsioni.
  • Master/Master: Acquisisci gli articoli master con gli eventi utente e restituisci gli articoli master con le previsioni.
  • Variante/Master: Acquisisci le varianti con gli eventi utente e restituisci gli articoli master con le previsioni.