(fr) Tickets (Orders)

Cet article vous montrera comment préparer des fichiers d’import pour le scope "Orders". Les données de ce périmètre représentent les tickets passés dans des magasins ou le site web, qui sont ensuite complétés avec les données «order items».

Les données dans le scope "Orders" peuvent être mises à jour avec un import ultérieur. Splio rejettera les objets "orderitems" qui sont liés à un "order" qui n'existe pas encore dans la base de données. Si vous importez un "order" qui a la même ID qu'un order existant, le nouvel "order" remplacera l'existant, et tous les orderitems liés à l'order existant seront supprimés.

Pré-requis

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

Préparation d'un fichier de tickets

Modifiez le fichier d'import avec votre éditeur de texte compatible UTF-8 préféré. Si nécessaire, contrôlez le nombre et la position des colonnes avec un tableur. C'est le meilleur outil pour supprimer toutes les colonnes que vous ne souhaitez pas importer.

🚧

  • N'oubliez pas de sauvegarder 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 est appelée l'en-tête (le header). Il doit contenir uniquement le nom des colonnes indiquées dans le tableau ci-dessous.

📘

Si Splio traite 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 "orders" :

ColonneObligatoireType de données / Longueur maxDescription
order_idOuiTexte (max. 50 caractères)L'ID externe de l'order importé (le code unique du ticket). Cette valeur doit être unique pour chaque ticket.
customer_keyOuiTexteColonne spécifique qui permet à Splio d'identifier les contacts dans la base (souvent l'email). Si c'est l'adresse email, elle doit être en minuscules.
card_codeNonTexteCode de la carte Loyalty, créé un lien entre le ticket et la carte Loyalty. Voir “Tickets Loyalty” pour plus de détails.
store_idOuiTexte (max. 50 caractères)ID externe du magasin d'où provient le ticket, qui établit un lien entre les “orders” et les “stores”. Les valeurs dans cette colonne doivent faire référence aux magasins importés.
order_dateNonDateDate du ticket. Voir “Dates” ci-dessous pour plus détails sur le format. Pour éviter les erreurs, ajouter les heures, les minutes et les secondes.
shipping_amountNonDécimalReprésente le montant de la livraison pour le ticket.
discount_amountNonDécimalLe total de remise du ticket.
tax_amountNonDécimalLe total des taxes (TVA, etc.) appliquées au ticket.
total_amountNonDécimalLe total du ticket (livraison comprise), moins la remise.
currencyNonTexte (max. 3 caractères)Le code à trois lettres qui définit la devise du ticket; s'applique à toutes les valeurs numériques du ticket. Si la devise n'est pas donnée, Splio utilisera la devise par défaut de l'univers.
salespersonNonTexte (max. 120 caractères)Le vendeur lié au ticket.
c0NonUne colonne personnalisée définie dans votre univers pour les tickets. Vous pouvez inclure jusqu'à 32 colonnes, de “c0” à “c31”.

📘

  • Notez que les noms de colonnes sont toujours en minuscules.
  • La colonne customer_key identifie les contacts dans la base de données de votre univers Splio.
  • N'oubliez pas que Splio vérifie les fichiers d’import pour les colonnes obligatoires. Vous devez inclure "order_id", "store_id" et "customer_key" pour que l'import réussisse.

Exemple 1 : clé client par défaut

Les premières lignes d'un fichier d'import "orders" utilisant la clé client par défaut (email du contact) peuvent ressembler à ceci :

order_id;customer_key;store_id;order_date;total_amount;currency
"70x1bMhtt-1531745300";"[email protected]";"Internet";"2018-06-22 11:30:00;173.00";"EUR"
"70x1byTRJ-1531778200";"[email protected]";"Internet";"2018-06-21 12:10:00";"244.99";"EUR"
"70xb1KLio-1531723300";"[email protected]";"Internet";"2018-06-20 17:33:00;25.50";"EUR"

Chaque ligne se compose exactement de 6 colonnes. Le "order_id" est utilisé pour distinguer les tickets, la "customer_key" relie le ticket au contact.

Exemple 2 : champ personnalisé comme clé client

Voici un fichier d'import en utilisant une colonne personnalisée comme clé client :

order_id;customer_key;store_id;order_date;total_amount;currency
"70x1bKkUt-1531738300";"PPL000000045732";"MGZOO;2018-06-27 12:17:27;225.00";"EUR"
"70x1bKooY-1531738300";"PPL000000007633";"MGZOO;2018-06-27 12:19:23;17.00";"EUR"
"70x1bu9Gt-1531756600";"PPL000000045661";"MGZOO;2018-06-27 12:22:07;112.50";"EUR"

Cet import est très similaire à celle de l'exemple 1, seul le type de valeurs de la "customer_key" est différent. Vous devez toujours utiliser le type de clé client défini dans votre univers Splio.

Nommez votre fichier

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

myuniverse_orders_zoo_20210225.csv

Ce nom de fichier appartient à l'univers "myuniverse", sous-séquence "zoo" défini pour les tickets, et est daté du 25 février 2021.

Dates

haque date se compose de 4 chiffres pour un an, 2 pour un mois et 2 pour un jour, suivis des heures, des minutes et des secondes, de 2 chiffres chacun. Une date correcte pour le 9 août 2018, 10h00m05s, prendra la forme suivante :

2018-08-09 10:00:05

Le jour et l'heure sont séparés par un espace vide. Vous pouvez omettre la partie heure et utiliser uniquement la date. Si vous le faites, Splio considérera l'heure la plus tôt possible pour la journée (minuit). Donc,

2018-09-09 est traité exactement comme si vous aviez entré 2018-09-09 00:00:00

🚧

  • Il est obligatoire d'utiliser les heures, minutes et secondes pour les dates : 00:00:00 équivaut à minuit et Splio traitera chaque date sans heure comme ceci. Cela peut causer des erreurs et des triggers associés avec des dates échoueront. Toutes les données loyalty sont considérées comme des informations financières. Cela signifie que vous et votre marque êtes responsables de ces données et vous ne devez pas laisser de côté les détails.
    Utiliser des dates complètes présente l'avantage supplémentaire de vous permettre d'effectuer des recherches et de filtrer par date avec beaucoup plus de précision.
  • Lorsque vous importez des dates avec l'heure, veillez à toujours utiliser le fuseau horaire CEST.

Explications : NULL et valeurs de suppression

NULL est une valeur spéciale qui indique à la base de données que le champ qui la contient est vide.

Votre univers Splio peut être configuré pour interpréter les valeurs NULL comme des instructions pour vider les champs. Vous pouvez l'utiliser pour effacer les valeurs stockées dans la base de données. Pour ce faire, assurez-vous que la valeur importée est exactement NULL. Vous devez éviter les espaces de début ou de fin: "NULL " ou " NULL" seront reconnus comme des valeurs de chaîne.

Si cette option n'est pas définie, Splio conservera les valeurs des champs où la valeur importée est NULL.

Différence entre NULL et une chaîne vide

"" est une chaîne vide. Dans la plupart des cas, NULL et "" seront importés en tant que valeur vide.

Plus important encore, la chaîne vide "" n'est jamais considérée comme une valeur NULL, donc elle n'entraînera pas l'effacement d'une valeur existante.