מעקב אחר מסחר אלקטרוני משופר – iOS SDK

במסמך הזה מפורטת סקירה כללית של אופן המדידה של פעולות וחשיפות שקשורות למסחר אלקטרוני באפליקציה באמצעות ה-SDK של Google Analytics ל-iOS v3.

סקירה

מסחר אלקטרוני משופר מאפשר למדוד אינטראקציות של משתמשים עם מוצרים בחוויית הקנייה של המשתמש, כולל: חשיפות של מוצרים, קליקים על מוצרים, צפייה בפרטי מוצרים, הוספת מוצר לעגלת קניות, התחלת תהליך התשלום, ביצוע עסקאות והחזרים כספיים.

הטמעה

לפני שתטמיע מעקב אחר מסחר אלקטרוני משופר באפליקציה, עליך להוסיף לאפליקציה את ספריית המסחר האלקטרוני המשופר.

לאחר הגדרת האפליקציה לשימוש במסחר אלקטרוני משופר, אתם יכולים:

מדידת פעילויות של מסחר אלקטרוני

הטמעה אופיינית של מסחר אלקטרוני משופר תמדוד חשיפות של מוצרים, וכל אחת מהפעולות הבאות:

  • בחירת מוצר.
  • הצגת פרטי המוצר.
  • חשיפות ובחירה של קידומי מכירות פנימיים.
  • הוספה או הסרה של מוצר מעגלת קניות.
  • התחלת תהליך התשלום על מוצר.
  • רכישות והחזרים כספיים.

מדידת חשיפות

כדי למדוד חשיפה של מוצר, צריך להגדיר את ערכי המוצר והחשיפות ולשלוח אותם עם התאמה:

id tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12345"];
[product setName:@"Android Warhol T-Shirt"];
[product setCategory:@"Apparel/T-Shirts"];
[product setBrand:@"Google"];
[product setVariant:@"Black"];
[product setCustomDimension:1 value:@"Member"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];

// Sets the product impression for the next available slot, starting with 1.
[builder addProductImpression:product
               impressionList:@"Search Results"
             impressionSource:@"From Search"];
[tracker set:kGAIScreenName value:@"My Impression Screen"];
[tracker send:[builder build]];

מוצר חייב לכלול ערך של שם או מזהה. כל שאר הערכים הם אופציונליים ולא חייבים להגדיר אותם.

פעולות מדידת

הפעולות נמדדות על ידי הגדרת ערכי המוצרים, ולאחר מכן הגדרת ערכי הפעולות של המוצר כדי לציין איזו פעולה מתבצעת.

לדוגמה, הקוד הבא מודד את הבחירה במוצר המוצג ברשימה של תוצאות חיפוש:

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12345"];
[product setName:@"Android Warhol T-Shirt"];
[product setCategory:@"Apparel/T-Shirts"];
[product setBrand:@"Google"];
[product setVariant:@"Black"];
[product setCustomDimension:1 value:@"Member"];

GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPAClick];
[action setProductActionList:@"Search Results"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];
[builder setProductAction:action];

// Sets the product for the next available slot, starting with 1
[builder addProduct:product];
[tracker set:kGAIScreenName value:@"My Impression Screen"];
[tracker send:[builder build]];

מוצר חייב לכלול ערך של שם או מזהה. כל שאר הערכים הם אופציונליים ולא חייבים להגדיר אותם.

שילוב של חשיפות ופעולות

במקרים שבהם יש לכם גם חשיפות של מוצר וגם פעולה, אפשר לשלב ולמדוד זאת בהתאמה אחת.

הדוגמה הבאה מראה איך מודדים תצוגה של פרטי מוצר עם קטע מוצרים קשורים:

// The product from the related products section.
id tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12346"];
[product setName:@"Android Warhol T-Shirt"];
[product setCategory:@"Apparel/T-Shirts"];
[product setBrand:@"Google"];
[product setVariant:@"White"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];

// Sets the product impression for the next available slot, starting with 1.
[builder addProductImpression:product
               impressionList:@"Related Products"
             impressionSource:@"From Related"];

// The product being viewed.
product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12345"];
[product setName:@"Android Warhol T-Shirt"];
[product setCategory:@"Apparel/T-Shirts"];
[product setBrand:@"Google"];
[product setVariant:@"Black"];

GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPADetail];
[builder setProductAction:action];
// Sets the product for the next available slot, starting with 1.
[builder addProduct:product];
[tracker set:kGAIScreenName value:@"Related Products Screen"];
[tracker send:[builder build]];

מדידת עסקאות

כדי למדוד טרנזקציה על ידי הגדרת ערכי מוצרים, ולאחר מכן הגדרת ערכי פעולות של המוצר כדי לציין פעולת רכישה. פרטים ברמת העסקה, כמו ההכנסה הכוללת, המס והמשלוח, נקבעים בערכי הפעולות של המוצר.

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12345"];
[product setName:@"Android Warhol T-Shirt"];
[product setCategory:@"Apparel/T-Shirts"];
[product setBrand:@"Google"];
[product setVariant:@"Black"];
[product setPrice:@29.20];
[product setCouponCode:@"APPARELSALE"];
[product setQuantity:@1];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"Purchase"
                                                                        label:nil
                                                                        value:nil];
GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPAPurchase];
[action setTransactionId:@"T12345"];
[action setAffiliation:@"Google Store - Online"];
[action setRevenue:@37.39];
[action setTax:@2.85];
[action setShipping:@5.34];
[action setCouponCode:@"SUMMER2013"];
[builder setProductAction:action];

// Sets the product for the next available slot, starting with 1
[builder addProduct:product];
[tracker send:[builder build]];

ציון מטבע

כברירת מחדל, אפשר להגדיר מטבע גלובלי משותף לכל הטרנזקציות והפריטים דרך ממשק האינטרנט לניהול של Google Analytics.

יש לציין את המטבע המקומי בתקן ISO 4217. קראו את המסמך מסמכי העזר של קודי המטבעות לקבלת רשימה מלאה של מטבעות ההמרה הנתמכים.

המטבעות המקומיים נקבעים על ידי הגדרת ערך קוד המטבע במכשיר המעקב. לדוגמה, כלי המעקב הזה ישלח ערכי מטבע כאירו:

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTracker"];
[tracker set:kGAIScreenName value:@"transaction"];
[tracker set:kGAICurrencyCode value:@"EUR"]; // Set tracker currency to Euros.
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];
[tracker send:[builder build]];

מדידת החזרים כספיים

על מנת לבצע החזר כספי מלא על העסקה, עליכם להגדיר ערכים של פעולת מוצר כך שיציינו את מזהה העסקה ואת סוג פעולת ההחזר הכספי:

// Refund an entire transaction.
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"Refund"
                                                                        label:nil
                                                                        value:nil];
GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPARefund];
[action setTransactionId:@"T12345"];
[builder setProductAction:action];
[tracker send:[builder build]];

אם לא נמצאה עסקה תואמת, ההחזר הכספי לא יעובד.

על מנת למדוד החזר כספי חלקי, יש להגדיר ערכים לפעולות של מוצרים כך שיציינו את מזהה העסקה, מזהי המוצרים וכמויות המוצרים שיקבלו החזר כספי:

// Refund a single product.
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"Refund"
                                                                        label:nil
                                                                        value:nil];
GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12345"]; // Product ID is required for partial refund.
[product setQuantity:@1]; // Quanity is required for partial refund.
[builder addProduct:product];

GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPARefund];
[action setTransactionId:@"T12345"]; // Transaction ID is required for partial refund.
[builder setProductAction:action];
[tracker send:[builder build]];

שימוש באירועים שאינם אינטראקציה לצורך החזרים כספיים

אם אתם צריכים לשלוח נתוני החזר כספי באמצעות אירוע, והאירוע לא נכלל בהתנהגות משתמשים שנמדדת בדרך כלל (כלומר לא ביוזמת המשתמש), מומלץ לשלוח אירוע ללא אינטראקציה. כך תוכלו למנוע ממדדים מסוימים להיות מושפעים מהאירוע. למשל:

// Refund an entire transaction.
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"Refund"
                                                                        label:nil
                                                                        value:nil];

[builder set:@"1" forKey:kGAINonInteraction];

GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPARefund];
[action setTransactionId:@"T12345"];

[builder setProductAction:action];
[tracker send:[builder build]];

מדידת תהליך התשלום

כדי למדוד כל שלב בתהליך התשלום:

  1. להוסיף קוד מעקב כדי למדוד כל שלב בתהליך התשלום בקופה.
  2. אם זה רלוונטי, כדאי להוסיף קוד מעקב כדי למדוד את האפשרויות של סיום הרכישה.
  3. אופציונלי: אתם יכולים להגדיר שמות של שלבים ידידותיים למשתמש בדוח משפך התשלום על ידי קביעת הגדרות למסחר אלקטרוני בקטע האדמין של ממשק האינטרנט.

‫1. מדידת שלבי התשלום

לכל שלב בתהליך התשלום צריך להטמיע את קוד המעקב המתאים כדי לשלוח נתונים אל Google Analytics.

שדה אחד (Step)

לכל שלב בקופה שאתם מודדים צריך לכלול ערך step. הערך הזה משמש למיפוי פעולות התשלום לתוויות שהגדרתם לכל שלב בהגדרות המסחר האלקטרוני.

שדה אחד (Option)

אם יש לכם מידע נוסף על השלב הנתון של התשלום בשלב המדידה, תוכלו להגדיר בשדה של אפשרות התשלום פעולה בקופה כדי לאסוף את המידע הזה. לדוגמה, סוג התשלום שמוגדר כברירת מחדל למשתמש (למשל 'ויזה').

מדידת שלב התשלום

כדי למדוד שלב בקופה, צריך להגדיר ערכי מוצרים ואז להגדיר את ערכי הפעולה של המוצר כך שיציינו פעולה בקופה. אם זה רלוונטי, תוכלו להגדיר בדף התשלום גם שלב של תשלום וערך של אפשרות תשלום.

הדוגמה הבאה מציגה איך למדוד את השלב הראשון בתהליך תשלום, עם מוצר יחיד, וכמה מידע נוסף על סוג התשלום:

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
[product setId:@"P12345"];
[product setName:@"Android Warhol T-Shirt"];
[product setCategory:@"Apparel/T-Shirts"];
[product setBrand:@"Google"];
[product setVariant:@"Black"];
[product setPrice:@29.20];
[product setCouponCode:@"APPARELSALE"];
[product setQuantity:@1];

GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"Checkout"
                                                                        label:nil
                                                                        value:nil];

// Add the step number and additional info about the checkout to the action.
GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPACheckout];
[action setCheckoutStep:@1];
[action setCheckoutOption:@"Visa"];

[builder addProduct:product];
[builder setProductAction:action];
[tracker send:[builder build]];

2. אפשרויות מדידה של תהליך התשלום

אפשרויות התשלום מאפשרות לכם למדוד מידע נוסף על מצב התשלום. האפשרות הזו שימושית במקרים שבהם מדדתם שלב בקופה, אבל מידע נוסף על אותו שלב בקופה זמין לאחר שהוגדרה. לדוגמה, המשתמש בוחר שיטת משלוח.

כדי למדוד אפשרות של תשלום בקופה, צריך להגדיר ערכים של פעולה לגבי המוצר כך שיציינו אפשרות של תשלום, ולכלול את מספר השלב ואת תיאור האפשרות.

סביר להניח שתרצו למדוד את הפעולה הזו אחרי שהמשתמש ביצע פעולה כלשהי, כדי לעבור לשלב הבא בתהליך התשלום. למשל:

// (On "Next" button click.)
id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"CheckoutOption"
                                                                        label:nil
                                                                        value:nil];

GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
[action setAction:kGAIPACheckoutOption];
[action setCheckoutStep:@1];
[action setCheckoutOption:@"Fedex"];

[builder setProductAction:action];
[tracker send:[builder build]];
// Advance to next page.

3. הגדרת משפך התשלום

לכל שלב בתהליך התשלום אפשר לתת שם תיאורי שישמש בדוחות. כדי להגדיר את השמות האלה, נכנסים לקטע ניהול בממשק האינטרנט של Google Analytics, בוחרים את התצוגה המפורטת (פרופיל) ולוחצים על הגדרות מסחר אלקטרוני. בצעו את ההוראות להגדרת מסחר אלקטרוני כדי להוסיף תוויות לכל שלב בקופה שאתם מתכוונים לעקוב אחריו.

הגדרות מסחר אלקטרוני בקטע &#39;ניהול&#39; בממשק האינטרנט של Google Analytics. המסחר האלקטרוני הופעל ונוספו 4 תוויות של שלבים במשפך התשלום: 1. בדיקת עגלת קניות, 2. איסוף פרטי תשלום, 3. מאשרים את פרטי
     הרכישה, 4. קבלה
איור 1: הגדרת מסחר אלקטרוני – משפך תשלום

מדידת קידומי מכירות פנימיים

מסחר אלקטרוני משופר כולל תמיכה במדידת חשיפות ובחירות של קידומי מכירות פנימיים, כמו מודעות באנר שמוצגות לקידום מבצע.

חשיפות של קידום מכירות

בדרך כלל, החשיפות של קידום מכירות פנימי נמדדות במהלך הצפייה הראשונית במסך או באמצעות אירוע, על ידי הגדרה של ערכי המבצע. למשל:

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommercePromotion *promotion = [[GAIEcommercePromotion alloc] init];
[promotion setId:@"PROMO_1234"];
[promotion setName:@"Summer Sale"];
[promotion setCreative:@"summer_banner2"];
[promotion setPosition:@"banner_slot1"];

GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Ecommerce"
                                                                       action:@"Promotion"
                                                                        label:nil
                                                                        value:nil];

[builder addPromotion:promotion];
[tracker send:[builder build]];

קליקים בקידום מכירות

אפשר למדוד קליקים על קידומי מכירות פנימיים באמצעות ערכי מבצעים, ולאחר מכן להגדיר ערכי פעולות על המוצר כדי לציין קליק על מבצע. למשל:

id<GAITracker> tracker = [[GAI sharedInstance] trackerWithTrackingId:@"MyTrackingId"];
GAIEcommercePromotion *promotion = [[GAIEcommercePromotion alloc] init];
[promotion setId:@"PROMO_1234"];
[promotion setName:@"Summer Sale"];
[promotion setCreative:@"summer_banner2"];
[promotion setPosition:@"banner_slot1"];

GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createEventWithCategory:@"Internal Promotions"
                                                                       action:@"click"
                                                                        label:@"Summer Sale"
                                                                        value:nil];

[builder set:kGAIPromotionClick forKey:kGAIPromotionAction];
[builder addPromotion:promotion];
[tracker send:[builder build]];