(fr) Lignes de tickets (order items)

Cet article vous montrera comment préparer des fichiers à importer dans le scope "lignes de ticket". Représentant des produits dans des tickets de caisse ou des paniers abandonnés, les lignes de tickets sont utilisés pour détailler le contenu des tickets et des paniers abandonnés.

Les enregistrements du scope "lignes de tickets" ne sont pas mis à jour. Au lieu de cela, vous devez être prêt à réimporter toutes les lignes de tickets pour chaque «order_id» que vous mettez à jour dans le scope «tickets» ou «paniers abandonnés». Les mises à jour de ces deux scopes entraînent toujours la purge de toutes les lignes de tickets associés par Splio (il s'agit de l'une des premières étapes de l'import).

Si vous importez un nouveau fichier lignes de ticket lié à un ticket existant, il ajoutera les lignes aux lignes de ticket existantes (s'il y en a).

Pré-requis

  • Connaissance de base du format CSV et du codage UTF-8.
  • Un éditeur de texte compatible UTF-8.
  • Un tableur Excel.
  • La sous-séquence doit être définie dans le fichier de configuration sous le scope "orders".

Préparer un fichier de lignes de tickets

Utilisez votre tableur préféré ou un éditeur de texte compatible UTF-8 pour préparer et modifier le fichier. La feuille de calcul est l'outil recommandé chaque fois que vous devez couper ou déplacer des colonnes.

🚧

  • N'oubliez pas d'enregistrer votre fichier au format CSV en utilisant l’encodage UTF-8 sans BOM.
  • Veuillez limiter la taille de votre fichier à 200K lignes.

En-tête et colonnes

La première ligne du fichier, appelée en-tête, est utilisée pour déterminer le contenu des lignes suivantes. Par conséquent, elle doit être construite uniquement à partir des noms des colonnes.

🚧

N'oubliez pas que si Splio rencontre un nom de colonne qu'il ne peut pas reconnaître, il n’importera pas le fichier.

Les colonnes suivantes sont disponibles dans le scope "tickets" :

ColonneObligatoireType de champ / longueur maxDescription
order_idOuiTexte (max. 50 caractères)ID externe d'un order, cette colonne lie les “ordersitems” à des “orders” spécifiques (ou à des “abandonedcarts”); cette colonne est obligatoire et doit faire référence à un order existant, sans quoi un order vide sera créé.
product_idOuiTexteID externe du produit dans le ticket ou le panier. Cette colonne est obligatoire. Si le produit n'existe pas dans la base, Splio créera un produit vide. La mise à jour des produits ne supprime pas les orders items associés.
unit_priceNonDécimalLe prix d'un produit unique. Ce champ sera celui pris en compte pour tout règle Loyalty incluant une condition sur un montant.
discount_amountNonDécimalLa remise totale.
tax_amountNonDécimalLe total des taxes.
total_line_amountNonDécimalLe montant total de cette ligne de ticket.
currencyOuiTexte (max. 3 caractères)Code à trois lettres ISO de la devise dans laquelle tous les prix sont donnés. Si absente, la devise de l'univers est appliquée.
quantityNonEntier non signéLa quantité de produits. Ce champ sera celui pris en compte pour tout règle Loyalty incluant une condition sur la quantité de produits.
card_codeNonTexteLe code d'une carte Loyalty, créée un lien entre l'order item et la carte de fidélité du client.
c0NonTexte (max. 255 caractères)Une colonne personnalisée définie dans votre univers pour les orders items. Vous pouvez en inclure jusqu'à 32, de “c0” à “c31”.

📘

  • Notez que tous les noms de colonnes sont toujours en minuscules.
  • N'oubliez pas que Splio vérifie les fichiers d'import pour les colonnes obligatoires. Vous devez inclure à la fois "orderid" et "productid" pour que l'import réussisse.
  • La colonne “card_code” permet de lier un order item à un membre d'un programme Loyalty. Vous pouvez l'insérer soit dans les fichiers “orders” ou dans les fichiers “ordersitems” pour créer des évènements Loyalty. Toutefois, vous devez importer les card code dans les "ordersitems" si vous souhaitez utiliser des règles de Loyalty qui ciblent des produits spécifiques.
  • Pour les chiffres avec une décimale, vous pouvez utiliser “.” comme séparateur.

🚧

Important : veuillez noter que lors du téléchargement des prix de vos produits, vous devez saisir deux décimales après le point (soit 10,99).

Exemple d'un fichier Ordersitems

Voici un exemple de fichier avec 3 items qui appartiennent au même ticket :

order_id;product_id;unit_price;quantity;tax_amount;total_line_amount;currency;c3
"70x1bMhtt-1531745300";"00131300020004";"182.49";"1";"36.50";"218.99";"EUR";"Accessories"
"70x1bMhtt-1531745300";"0027011018374";"9.16";"5";"9.16";"54.96";"EUR";"Food"
"70x1bMhtt-1531745300";"0077890206324";"154.50";"2";"61.80";"370.80";"Accessories"

Les champs représentent l'ID unique du ticket, l'ID du produit, son prix net, sa quantité, les taxes, les sommes de chaque ligne, et un champ personnalisé de catégorie.

Nommez votre fichier

Lors de l'enregistrement de votre fichier, utilisez un nom composé du nom de l'univers, du scope ("orderitems"), de la sous-séquence et de la date actuelle. Par exemple :

myuniverse_ordersitems_pets_20180712.csv

Ce nom de fichier appartient à l'univers "myunivers", sous-séquence "pets" défini pour les tickets, et est daté du 12 juillet 2018. Cette date marque le fichier, il ne doit pas nécessairement correspondre aux produits.

Si vous voulez en savoir plus sur les conventions de nommage, consultez notre article “File Naming guidelines” de la section Overview.

Vous pouvez maintenant télécharger le fichier sur SFTP / FTPS.