L'intégration des données d'achat hors ligne (telles que les achats physiques en magasin) à Dynamic Yield vous permet de proposer des expériences personnalisées à vos visiteurs (ou aux abonnés par e-mail) sur la base de leur activité hors ligne. Vous pouvez intégrer des achats avec un identifiant d'utilisateur, ou ils peuvent être anonymes (uniquement les informations de transaction).
L'intégration des données d'achat hors ligne vous permet de :
- Utiliser des algorithmes de recommandation qui tiennent compte du comportement hors ligne, y compris :
- Popularité : recommande les produits les plus populaires sur la base des achats hors ligne et en ligne.
- Achetés ensemble hors ligne : recommande des articles qui ont été achetés hors ligne, nonobstant le fait qu'ils soient maintenant achetés en ligne.
- Achetés ensemble hors ligne ou en ligne : recommande des articles achetés ensemble hors ligne ou en ligne.
- Affinité : recommande des produits basés sur le comportement précédent de l'utilisateur (pour les achats hors ligne qui incluent des identifiants).
- Achetés récemment : recommande des produits basés sur les achats récents du visiteur.
- Dernier achat : recommande des produits basés sur le dernier achat du visiteur.
- Créez des audiences ou ciblez les utilisateurs en fonction de leurs achats hors ligne, en utilisant la condition Produit acheté hors ligne.
Transférez le flux hors ligne au moins une fois par semaine afin que les recommandations de produits soient basées sur des données de transactions récentes.
Pour activer ces fonctionnalités, contactez votre Customer Success Manager.
Transfert des transactions hors ligne identifiées
Vous pouvez synchroniser un flux contenant des transactions hors ligne d'utilisateurs identifiés : Créez un fichier CSV contenant les transactions et synchronisez-le en tant que flux de données Dynamic Yield de type Achats hors ligne identifiés.
Pour faire correspondre les achats hors ligne identifiés avec les utilisateurs en ligne, un identifiant unique commun est requis. Ceci est accompli en envoyant des événements omnicanaux tels que Connexion, Inscription et Identifier l'utilisateur, puis en incluant le même identifiant lorsque vous transférez les transactions hors ligne, comme décrit :
- Créez un fichier CSV qui contient les colonnes décrites dans le tableau suivant, en utilisant des virgules comme séparateurs. Vous pouvez télécharger un exemple de fichier CSV ici. Aucune convention de dénomination spécifique n'est requise. Chaque fichier peut contenir un maximum de 1,5 million de lignes.
Propriété Description Type cuidType Le type d'identifiant utilisé pour identifier l'utilisateur. La valeur doit être l'une des suivantes :
- « he » si vous utilisez un e-mail haché
- « email » si des e-mails en texte brut sont utilisés
- « dyid » si DYID est l'identifiant
- Le même type personnalisé que vous avez précédemment synchronisé avec Dynamic Yield sur le site Web.
Chaîne
(Jusqu'à 64 caractères)cuid L'identifiant unique de l'utilisateur qui a effectué l'achat. Chaîne
(Jusqu'à 64 caractères)transactionId L'identifiant de la transaction d'achat. Chaque ligne contient un maximum d'un SKU. Si plusieurs articles ont été achetés ensemble, créez plusieurs lignes avec le même transactionId.
L'identifiant de transaction doit être unique pour chaque transaction, y compris les achats en ligne).
Une transaction avec le même identifiant qu'une autre transaction précédemment ingérée au cours de la dernière journée est ignorée.
Chaîne
(Jusqu'à 64 caractères)transactionSource
(optionnel)La source où la transaction a eu lieu, généralement l'identifiant physique du magasin. Chaîne transactionDatetime La date et l'heure de l'achat au format combiné ISO 8601 date et heure. Par exemple, 2018-09-23T07:29:51+00:00. Chaîne value Valeur totale du panier dans la devise de paiement actuelle. Requis si transactionItemValue n'est pas défini. Sinon, c'est facultatif. Flottant
(dollars.cents, valeurs positives uniquement)currency Si la transaction n'est pas dans votre devise par défaut, spécifiez la devise ici. Pour plus d’informations, reportez-vous à la saction Prise en charge multilingue Chaîne productId SKU exactement tel qu'il s'affiche dans le flux du produit. Si le SKU n'est pas dans le flux de produits, l'achat n'est pas transféré. Chaîne quantité Combien d'articles spécifiques sont inclus dans l'achat. Nombre
(positif, pas de décimales)itemPrice Prix catalogue pour chaque article (quantité d'un). Il peut être différent de la valeur transactionItemValue en raison des remises, des taxes, etc. Flottant
(dollars.cents, valeurs positives uniquement)transactionItemValue Valeur de l'article dans la devise de paiement réelle.
La valeur est le produit de itemPrice par la quantité, après la remise et les taxes.
Les valeurs négatives sont ignorées.
Obligatoire si la propriété « value » n'est pas définie. Dans le cas contraire, c'est facultatif.Flottant
(dollars.cents, valeurs positives uniquement)size
(optionnel)La taille de l'article. Chaîne
- Dans la console Experience OS, accédez à Assets (Ressources) Data Feeds (Flux de données).
- Cliquez sur Add New (Ajouter nouveau) et sélectionnez Identified Offline Purchases (Achats hors ligne identifiés).
- Sélectionnez CSV comme méthode de synchronisation.
- Notez les informations d'identification S3 affichées.
- Enregistrer et activer le flux de données.
- À tout moment, transférez un nouveau fichier de flux dans un dossier de votre bucket S3, comme suit : /AAAA-MM-JJ/
Le fichier de flux peut avoir n'importe quel nom, mais ne peut pas inclure le caractère « - » (tiret).
Un nouveau dossier doit être créé pour chaque jour où vous synchronisez le fichier. Chaque fois qu'un nouveau fichier est transféré, Dynamic Yield l'ingère immédiatement. - Vous pouvez vérifier l'état de la synchronisation et les erreurs en consultant la liste Data Feed (Flux de données) et en téléchargeant le journal. Pour plus de détails, consultez Gestion des erreurs de fichier ci-dessous.
Remarque : cela peut prendre jusqu'à 24 heures pour que les profils d'utilisateurs identifiés se mettent à jour avec les informations d'achat hors ligne que vous avez importées dans le compte.
Transfert de transactions anonymes hors ligne
Pour synchroniser des achats hors ligne sans identifiants d'utilisateur, procédez comme suit :
Préparer le fichier
Télécharger un exemple de fichier |
- Type de fichier : CSV
- Nom du fichier : anonymousofflinepurchases.csv (recommandé. Les caractères spéciaux peuvent ne pas être pris en charge)
- Nombre maximum de rangées : 1,5 M
- Chaque ligne doit inclure un SKU d'un achat hors ligne :
- Si un achat comprend 3 SKU, utilisez 3 lignes (1 SKU par ligne).
- Si un achat comprend 1 SKU qui a été acheté 3 fois, utilisez une seule rangée ainsi que l'attribut « quantity ».
Format :
Propriété | Description | Type |
---|---|---|
transactionId | Identifiant de transaction unique pour un achat comprenant un ou plusieurs articles. Si plus d'un type d'article a été acheté, il devrait y avoir une ligne dans le CSV pour chaque SKU unique inclus dans l'achat. Pour plus de détails, voir l'exemple ci-dessous. | Chaîne (Jusqu'à 64 caractères) |
transactionSource Optionnel |
La source où la transaction a eu lieu, généralement l'identifiant du magasin physique. | String |
transactionDatetime | La date et l'heure de l'achat en format date et heure combinée ISO 8601 (par exemple, 2018-09-23T07:29:51+00:00). | Chaîne |
value |
Valeur totale de l'achat (avec tout son contenu). |
Flottant (dollars.cents, valeurs positives uniquement) |
currency | La devise sur laquelle se base la colonne value de l'achat spécifique. | Chaîne Afficher les devises prises en charge |
productId | Le SKU de l'article exactement tel qu'il apparaît dans le flux du produit. Si le SKU n'est pas dans le flux de produits, l'achat n'est pas transféré. | Chaîne |
quantity | Le nombre d'articles spécifiques que contient l'achat. | Nombre (positif, pas de décimale) |
itemPrice | Prix catalogue pour chaque article (quantité d'un). Cette valeur peut être différente de celle de transactionItemValue en raison de remises, de taxes, etc. | Flottant (dollars.cents, valeurs positives uniquement) |
transactionItemValue |
Valeur de l'article dans la devise de paiement réelle. La valeur est le produit de itemPrice par la quantité, après remise et taxes. |
Flottant |
size (Optionnel) |
La taille de l'article. Par exemple, L, M, ou toute autre manière que vous souhaitez pour décrire la taille de vos produits. |
Chaîne |
Le fichier ne doit pas inclure de lignes en double et doit être trié par transactionId. Chaque ligne représente un SKU acheté. Une seule transaction comprenant 2 chemises identiques pour 20 dollars chacune (avec remise à partir du prix catalogue de 25 $ ), et une veste pour 100 $ , il y aurait deux lignes dans votre CSV avec les valeurs suivantes :
transactionId | transactionDateTime | value | currency | productId | quantity | itemPrice | transactionItemValue |
---|---|---|---|---|---|---|---|
101 | 2018-09-23T07:29:51+00:00 | 140,00 | USD | 12345 | 2 | 25,00 | 40,00 |
101 | 2018-09-23T07:29:51+00:00 | 140,00 | USD | 12789 | 1 | 100,00 | 100,00 |
- Dans Dynamic Yield, accédez à Assets (Ressources) Data Feeds (Flux de données).
- Cliquez sur Add New (Ajouter nouveau) et sélectionnez Anonymous Offline Purchases (Achats anonymes hors ligne).
- Sélectionnez CSV comme méthode de synchronisation.
- Notez les informations d'identification S3 affichées.
- Enregistrez et activez le flux de données.
- Transférez un nouveau fichier de flux à tout moment dans un dossier de votre bucket S3 comme suit : /AAAA-MM-JJ/
Le fichier de flux peut avoir n'importe quel nom, mais ne peut pas utiliser le caractère « - » (tiret).
Un nouveau dossier doit être créé pour chaque jour où vous synchronisez le fichier. Chaque fois qu'un nouveau fichier est travsféré, Dynamic Yield l'ingérera immédiatement. - Vous pouvez vérifier l'état de la synchronisation et les erreurs en consultant la liste Data Feed (Flux de données) et en téléchargeant le journal. Pour plus de détails, consultez Gestion des erreurs de fichier ci-dessous.
Si vous avez plus d'un site Dynamic Yield, nous vous recommandons de télécharger les données d'achat hors ligne pour le site le plus pertinent et de partager l'audience avec tous vos autres sites. Alternativement, vous pouvez également transférer les données d'achat hors ligne vers chacun de vos sites individuellement.
Transfert de fichier à l'aide de CLI
Cette procédure est la même pour les flux de données d'achat identifiées et anonymes :
- Exécutez la configuration AWS dans le répertoire souhaité : aws configure
- Utilisez votre identifiant de clé d'accès
- Utilisez votre clé d'accès secrète
- Sous région, entrez us-east-1 si vous utilisez le datacenter américain ou eu-central-1 pour le datacenter dans l'UE.
- Format de sortie par défaut : vous pouvez laisser ce champ vide (appuyez simplement sur Entrée).
- Exécutez la commande suivante pour transférer votre fichier :
aws s3 cp local file .csv <s3 bucket URL>/YYYY-MM-DD/feedName.csv - Vérifiez que le fichier est dans S3 :
aws s3 ls <s3 bucket URL>/YYYY-MM-DD/
Remarque : assurez-vous d'utiliser la barre oblique ( / ) à la fin de cette adresse, pour éviter une erreur d'accès.
Gestion des erreurs de fichier
Plusieurs validations sont effectuées lorsqu'un fichier est synchronisé, et un fichier d'erreurs est créé qui comporte toutes les lignes avec des erreurs, ainsi qu'une colonne supplémentaire avec les messages d'erreur pertinents. Vous pouvez télécharger le journal des erreurs directement dans la liste Data Feeds (Flux de données). Pour plus de détails, consultez Validation de votre implémentation Web. Les validations vérifient que ce qui suit est vrai :
- Le fichier n'est pas vide.
- Les colonnes obligatoires (par exemple, transactionId, productId) ne sont pas absentes du fichier.
- Aucune valeur négative pour certains champs (value, transactionItemValue, Item Price, quantity).
- La TRANSACTION_DATE est une date valide.
Le fichier d'erreurs est transféré dans le même dossier que le fichier que vous synchronisez. Il est nommé <Nom du flux>-Feed-Log-MM-JJ-AAAA-HH-MM-SS.
Si plus de 20 % des lignes contiennent des erreurs, le fichier n'est pas synchronisé et sera marqué avec l'erreur : « synchronisé avec erreur ». Les fichiers avec moins de 20 % d'erreurs sont synchronisés avec l'état « synchronisé avec avertissements ».
transactionId en doublon
Si deux fichiers sont importés et contiennent le même transactionId au cours des mêmes 24 heures, les achats associés du second fichier sont ignorés. Après cela, les événements d'achat sont stockés.
Validation
Après avoir importé les achats hors ligne, accédez à l'Audience Explorer et filtrez les utilisateurs selon le critère « Produits achetés hors ligne ». Assurez-vous que les utilisateurs sont affichés.
Si vous ne voyez aucun utilisateur, assurez-vous que les événements suivants se sont produits :
- Le flux d'achats hors ligne a été synchronisé avec succès.
- L'identifiant utilisé dans le flux d'achat hors ligne est le même que celui que vous utilisez sur votre site.
Que pouvez-vous faire avec les données d'achat hors ligne ?
- Créer des audiences basées sur des achats hors ligne et les ciblez dans des campagnes pertinentes.
- Présenter des recommandations personnalisées en utilisant l'algorithme d'« Affinité de l'utilisateur », qui prend en considération les achats hors ligne également.
- Utiliser Achetés ensemble - Hors ligne ou Achetés ensemble - Hors ligne et en ligne pour exploiter vos données hors ligne, au cas où vous en auriez une grande quantité.
- Éviter de recommander des produits que l'utilisateur a déjà achetés hors ligne.
- Pour chaque article acheté hors ligne, un événement d'achat hors ligne est déclenché. Vous pouvez interroger ces événements dans le module Audience Explorer.
Limitations connues
- Chaque fichier peut inclure un maximum de 1,5 M de lignes.
- Si vous avez besoin de plus de 1,5 M de lignes, vous pouvez transférer plusieurs fichiers par jour, mais assurez-vous d'attendre que le transfert précédent soit terminé (cela peut prendre plusieurs heures, selon la taille du fichier).