מעקב אחר מסחר אלקטרוני - Android SDK

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

סקירה

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

העסקאות כוללות את השדות הבאים:

שם השדה שדה מעקב סוג חובה תיאור
מזהה עסקה Fields.TRANSACTION_ID String כן מזהה ייחודי שמייצג את העסקה. המזהה הזה לא יכול להתנגש עם מזהי עסקאות אחרים.
נתונים משויכים Fields.TRANSACTION_AFFILIATION String כן הישות שאליה העסקה צריכה להיות משויכת (למשל, חנות מסוימת)
הכנסה Fields.TRANSACTION_REVENUE Double כן ההכנסה הכוללת מעסקה, כולל מס ודמי משלוח
מס Fields.TRANSACTION_TAX Double כן המס הכולל על עסקה
משלוח Fields.TRANSACTION_SHIPPING Double כן העלות הכוללת של משלוח לעסקה
קוד מטבע Fields.CURRENCY_CODE String לא המטבע המקומי של העסקה. ערך ברירת המחדל הוא המטבע של התצוגה המפורטת (הפרופיל) שבה מוצגות העסקאות.

הפריטים כוללים את השדות הבאים:

שם השדה שדה מעקב סוג חובה תיאור
מזהה עסקה Fields.TRANSACTION_ID String כן מזהה העסקה שאליו הפריט צריך להיות משויך
שם Fields.ITEM_NAME String כן שם המוצר
מק"ט Fields.ITEM_SKU String כן המק"ט של מוצר
קטגוריה Fields.ITEM_CATEGORY String לא הקטגוריה שהמוצר שייך אליה
מחיר Fields.ITEM_PRICE Double כן מחיר של מוצר
כמות Fields.ITEM_QUANTITY Long כן כמות של מוצר
קוד מטבע Fields.CURRENCY_CODE String לא המטבע המקומי של העסקה. ערך ברירת המחדל הוא המטבע של התצוגה המפורטת (הפרופיל) שבה מדווחות העסקאות.

נתוני מסחר אלקטרוני משמשים בעיקר בדוחות הרגילים הבאים:

  • סקירה כללית על מסחר אלקטרוני
  • ביצועי מוצרים
  • ביצועי מכירות
  • טרנזקציות
  • זמן לביצוע רכישה

הטמעה

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

import android.app.Activity;

import com.google.analytics.tracking.android.EasyTracker;
import com.google.analytics.tracking.android.MapBuilder;

public class CheckoutActivity extends Activity {

  /*
   * Called when a purchase is processed and verified.
   */
  public void onPurchaseCompleted() {

    // May return null if EasyTracker has not yet been initialized with a
    // property ID.
    EasyTracker easyTracker = EasyTracker.getInstance(this);

    easyTracker.send(MapBuilder
        .createTransaction("0_123456",       // (String) Transaction ID
                           "In-app Store",   // (String) Affiliation
                           2.16d,            // (Double) Order revenue
                           0.17d,            // (Double) Tax
                           0.0d,             // (Double) Shipping
                           "USD")            // (String) Currency code
        .build()
    );

    easyTracker.send(MapBuilder
        .createItem("0_123456",               // (String) Transaction ID
                    "Level Pack: Space",      // (String) Product name
                    "L_789",                  // (String) Product SKU
                    "Game expansions",        // (String) Product category
                    1.99d,                    // (Double) Product price
                    1L,                       // (Long) Product quantity
                    "USD")                    // (String) Currency code
        .build()
    );
  }

  // ... Rest of the Activity definition
}

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

ציון מטבעות

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

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

import android.app.Activity;

import com.google.analytics.tracking.android.EasyTracker;
import com.google.analytics.tracking.android.MapBuilder;

public class CheckoutActivity extends Activity {
  /**
   * In this example, the currency of the transaction is set to Euros. The
   * currency values will appear in reports using the global currency
   * type of the view (profile).
   */
  public void onPurchaseCompleted() {

    // Assumes a tracker has already been initialized with a property ID, otherwise
    // this call returns null.
    EasyTracker easyTracker = EasyTracker.getInstance(this);

    easyTracker.send(MapBuilder
        .createTransaction("0_123456",       // (String) Transaction ID, should be unique among transactions.
                           "In-app Store",   // (String) Affiliation
                           (long) 2.16,      // (long) Order revenue (includes tax and shipping)
                           (long) 0.17,      // (long) Tax
                           0.0,              // (long) Shipping cost
                           "EUR")            // (String) Currency code
        .build();

  }
  // ... Rest of the Activity definition.
}