ई-कॉमर्स मेज़रमेंट

इस गाइड में, analytics.js का इस्तेमाल करके ई-कॉमर्स डेटा इकट्ठा करने का तरीका बताया गया है.

खास जानकारी

ई-कॉमर्स मेज़रमेंट की मदद से, आपकी वेबसाइट पर जनरेट होने वाले लेन-देन और रेवेन्यू मेज़र किए जा सकते हैं. किसी सामान्य ई-कॉमर्स साइट पर, जब कोई उपयोगकर्ता ब्राउज़र में मौजूद "खरीदें" बटन पर क्लिक करता है, तब उसकी खरीदारी की जानकारी उस वेब सर्वर पर भेजी जाती है जिस पर लेन-देन किया जाता है. अगर कार्रवाई पूरी हो जाती है, तो सर्वर उपयोगकर्ता को "धन्यवाद" या खरीदारी की रसीद वाले पेज पर रीडायरेक्ट कर देता है. इस पेज पर लेन-देन की जानकारी और खरीदारी की रसीद होती है. analytics.js लाइब्रेरी का इस्तेमाल करके, "धन्यवाद" पेज से ई-कॉमर्स डेटा Google Analytics को भेजा जा सकता है.

analytics.js का इस्तेमाल करके दो तरह का ई-कॉमर्स डेटा भेजा जा सकता है: transaction और item डेटा.

लेन-देन का डेटा

ट्रांज़ैक्शन, आपकी साइट पर होने वाले पूरे ट्रांज़ैक्शन की जानकारी देता है. साथ ही, इसमें ये वैल्यू शामिल होती हैं:

सुरक्षा कुंजी वैल्यू टाइप ज़रूरी है ब्यौरा
id टेक्स्ट हां ट्रांज़ैक्शन आईडी. (उदाहरण के लिए, 1234)
affiliation टेक्स्ट नहीं वह स्टोर या उससे जुड़ी इकाई जहां से यह ट्रांज़ैक्शन हुआ था (उदाहरण के लिए, Acme Clothing).
revenue currency नहीं ट्रांज़ैक्शन से जुड़ा कुल रेवेन्यू या कुल योग दिखाता है (उदाहरण, 11.99). इस वैल्यू में शिपिंग, टैक्स की लागतें या कुल रेवेन्यू में किए गए ऐसे अन्य अडजस्टमेंट शामिल हो सकते हैं जिन्हें आपको अपने रेवेन्यू का हिसाब लगाते समय शामिल करना है.
shipping currency नहीं इससे, ट्रांज़ैक्शन की कुल शिपिंग के लिए खरीदार से लिया जाने वाला शुल्क पता चलता है. (उदाहरण के लिए, 5)
tax currency नहीं ट्रांज़ैक्शन पर लागू होने वाला कुल टैक्स दिखाता है. (उदाहरण के लिए, 1.29)

आइटम डेटा

आइटम उन अलग-अलग प्रॉडक्ट को दिखाता है जो शॉपिंग कार्ट में थे और उसमें ये वैल्यू शामिल हैं:

सुरक्षा कुंजी वैल्यू टाइप ज़रूरी है ब्यौरा
id टेक्स्ट हां ट्रांज़ैक्शन आईडी. यह आईडी, आइटम को उन लेन-देन से जोड़ता है जिनसे वे जुड़े हैं. (उदाहरण के लिए, 1234)
name टेक्स्ट हां आइटम का नाम. (उदाहरण, गुलाबी गुदगुदे बनी)
sku टेक्स्ट नहीं SKU या आइटम कोड के बारे में बताता है. (उदाहरण, SKU47)
category टेक्स्ट नहीं इससे पता चलता है कि आइटम किस कैटगरी से जुड़ा है (उदाहरण, पार्टी के खिलौने)
price currency नहीं हर आइटम के लिए अलग-अलग, इकाई, कीमत. (उदाहरण, 11.99)
quantity पूर्णांक नहीं लेन-देन में खरीदी गई इकाइयों की संख्या. अगर इस फ़ील्ड में कोई ऐसी वैल्यू डाली जाती है जो पूर्णांक न हो (जैसे कि 1.5), तो उसे सबसे करीब वाली पूरी संख्या (राउंड फ़िगर करके) में बदल दिया जाएगा.

लागू करने का तरीका

आम तौर पर, ई-कॉमर्स मेज़रमेंट तब लागू किया जाता है, जब उपयोगकर्ता चेकआउट की प्रोसेस पूरी कर लेता है. आम तौर पर, ऐसा "धन्यवाद" पेज पर दिखता है. जब आपके पास ई-कॉमर्स डेटा हो और आप Google Analytics को ई-कॉमर्स डेटा भेजने के लिए तैयार हों, तब आपको इन चरणों को पूरा करना होगा:

ई-कॉमर्स प्लग इन लोड करें

analytics.js लाइब्रेरी का साइज़ छोटा करने के लिए, डिफ़ॉल्ट लाइब्रेरी में ई-कॉमर्स मेज़रमेंट की सुविधा नहीं दी गई है. इसके बजाय, इसे प्लगिन मॉड्यूल के तौर पर दिया जाता है. इसे इस्तेमाल करने से पहले लोड करना ज़रूरी होता है.

ई-कॉमर्स प्लग इन लोड करने के लिए, नीचे दिए गए निर्देश का इस्तेमाल करें:

ga('require', 'ecommerce');

यह निर्देश, ट्रैकर ऑब्जेक्ट बनाने के बाद और किसी ई-कॉमर्स से जुड़े खास फ़ंक्शन का इस्तेमाल करने से पहले आना चाहिए.

लोड होने के बाद, ई-कॉमर्स मेज़रमेंट के लिए कुछ नए निर्देश, डिफ़ॉल्ट ट्रैकर में जोड़ दिए जाएंगे.

कोई लेन-देन जोड़ना

प्लगिन लोड होने के बाद, यह एक पारदर्शी शॉपिंग कार्ट ऑब्जेक्ट बनाता है. शॉपिंग कार्ट में ट्रांज़ैक्शन और आइटम का डेटा जोड़ा जा सकता है. साथ ही, पूरी तरह से कॉन्फ़िगर हो जाने के बाद, आपको पूरा डेटा एक साथ भेजना होगा.

आपने ecommerce:addTransaction कमांड का इस्तेमाल करके, शॉपिंग कार्ट में लेन-देन का डेटा जोड़ा है:

ga('ecommerce:addTransaction', {
  'id': '1234',                     // Transaction ID. Required.
  'affiliation': 'Acme Clothing',   // Affiliation or store name.
  'revenue': '11.99',               // Grand Total.
  'shipping': '5',                  // Shipping.
  'tax': '1.29'                     // Tax.
});

आइटम जोड़ना

इसके बाद, शॉपिंग कार्ट में आइटम जोड़ने के लिए, ecommerce:addItem निर्देश का इस्तेमाल किया जाता है:

ga('ecommerce:addItem', {
  'id': '1234',                     // Transaction ID. Required.
  'name': 'Fluffy Pink Bunnies',    // Product name. Required.
  'sku': 'DD23444',                 // SKU/code.
  'category': 'Party Toys',         // Category or variation.
  'price': '11.99',                 // Unit price.
  'quantity': '1'                   // Quantity.
});

डेटा भेजा जा रहा है

आखिर में, शॉपिंग कार्ट में अपना पूरा ई-कॉमर्स डेटा कॉन्फ़िगर करने के बाद, ecommerce:send कमांड का इस्तेमाल करके Google Analytics को डेटा भेजा जाता है:

ga('ecommerce:send');

यह निर्देश, शॉपिंग कार्ट के हर लेन-देन और आइटम की जांच करेगा और उससे जुड़ा डेटा Google Analytics को भेजेगा. यह प्रोसेस पूरी होने के बाद, शॉपिंग कार्ट मिट जाता है. इसके बाद, वह नए लेन-देन के लिए डेटा भेजने के लिए तैयार हो जाता है. अगर पिछला ecommerce:send निर्देश जारी किया गया था, तो सिर्फ़ नया लेन-देन और आइटम का डेटा भेजा जाएगा.

डेटा मिटाया जा रहा है

अगर आपको मैन्युअल रूप से सभी लेन-देन और आइटम के शॉपिंग कार्ट को हटाना है, तो इस निर्देश का इस्तेमाल करें:

ga('ecommerce:clear');

स्थानीय मुद्राएं तय करना

डिफ़ॉल्ट रूप से, Google Analytics मैनेजमेंट वेब इंटरफ़ेस से सभी लेन-देन और आइटम के लिए एक सामान्य, ग्लोबल, और मुद्रा कॉन्फ़िगर की जा सकती है. डिफ़ॉल्ट रूप से, सभी आइटम और लेन-देन के लिए वैश्विक मुद्रा का इस्तेमाल किया जाता है. कई मुद्राओं में लेन-देन करने वाली वेबसाइटों के लिए, ई-कॉमर्स प्लग इन की मदद से, लेन-देन की स्थानीय मुद्रा के साथ-साथ अलग-अलग प्रॉडक्ट की जानकारी भी तय की जा सकती है.

स्थानीय मुद्रा, ISO 4217 स्टैंडर्ड के मुताबिक होनी चाहिए. इस्तेमाल की जा सकने वाली कन्वर्ज़न मुद्राओं की पूरी सूची के लिए, मुद्रा कोड की जानकारी वाला दस्तावेज़ पढ़ें.

किसी खास ट्रांज़ैक्शन की स्थानीय मुद्रा और उसके सभी आइटम सेट करने के लिए, आपको सिर्फ़ ट्रांज़ैक्शन के लिए मुद्रा बतानी होगी:

ga('ecommerce:addTransaction', {
  'id': '1234',
  'affiliation': 'Acme Clothing',
  'revenue': '11.99',
  'shipping': '5',
  'tax': '1.29',
  'currency': 'EUR'  // local currency code.
});

आखिर में, हर सामान के लिए मुद्रा भी तय की जा सकती है:

  ga('ecommerce:addItem', {
    'id': '1234',
    'name': 'Fluffy Pink Bunnies',
    'sku': 'DD23444',
    'category': 'Party Toys',
    'price': '11.99',
    'quantity': '1',
    'currency': 'GBP' // local currency code.
  });

एक से ज़्यादा ट्रैकर की सुविधा

अगर आपने अपने पेज पर कई नाम वाले ट्रैकर लागू किए हैं, तो ई-कॉमर्स प्लग इन का भी इस्तेमाल किया जा सकता है. यह प्लग इन, डिफ़ॉल्ट ट्रैकर की तरह ही काम करता है. हालांकि, इसका फ़ॉर्मैट trackerName.pluginName:method है. उदाहरण के लिए, अगर आपने myTracker नाम का ट्रैकर बनाया है, तो:

ga('create', 'UA-XXXXX-Y', 'auto', {'name': 'myTracker'});

इसके बाद, नाम वाले ट्रैकर के लिए ई-कॉमर्स प्लगिन को लोड करने के लिए, इनका इस्तेमाल करें:

ga('myTracker.require', 'ecommerce');

ट्रांज़ैक्शन भेजने के लिए, ट्रांज़ैक्शन ऑब्जेक्ट बनाया जा सकता है और नाम वाले ट्रैकर में इस तरह पास किया जा सकता है:

var transaction = {
  'id': '1234',                    // Transaction ID.
  'affiliation': 'Acme Clothing',  // Affiliation or store name.
  'revenue': '11.99',              // Grand Total.
  'shipping': '5' ,                // Shipping.
  'tax': '1.29'                    // Tax.
};

ga('myTracker.ecommerce:addTransaction', transaction);

इस सिंटैक्स का इस्तेमाल करके, ट्रांज़ैक्शन ऑब्जेक्ट का इस्तेमाल कई ट्रैकर पर किया जा सकता है.

आखिर में, आपको लेन-देन का डेटा इस तरह भेजना होगा:

ga('myTracker.ecommerce:send');

उदाहरण

ज़्यादातर ई-कॉमर्स साइटें, सर्वर पर लेन-देन करती हैं, जबकि analytics.js लाइब्रेरी, Google Analytics को ब्राउज़र से डेटा भेजती है. इसलिए, Google Analytics में ई-कॉमर्स डेटा सही तरीके से भेजने के लिए, सर्वर और क्लाइंट के बीच थोड़ा तालमेल होना ज़रूरी है.

ज़्यादातर ई-कॉमर्स साइटें, अपने "धन्यवाद" पेज को रेंडर करने के लिए सर्वर साइड टेंप्लेटिंग इंजन का इस्तेमाल करती हैं. इस मामले में, ई-कॉमर्स मेज़रमेंट कोड को सर्वर साइड टेंप्लेट में जोड़ना होगा. साथ ही, सर्वर लॉजिक का इस्तेमाल करके, ई-कॉमर्स डेटा की वैल्यू को फ़ाइनल पेज पर डाइनैमिक तरीके से लिखना होगा. यहां उदाहरण में बताया गया है कि यह PHP में कैसा दिखेगा.

PHP में, आम तौर पर आपको ई-कॉमर्स डेटा कुछ दिखाई देगा. इस उदाहरण में, डेटा को असोसिएटर कलेक्शन में सेव किया गया है:

<?php
// Transaction Data
$trans = array('id'=>'1234', 'affiliation'=>'Acme Clothing',
               'revenue'=>'11.99', 'shipping'=>'5', 'tax'=>'1.29');

// List of Items Purchased.
$items = array(
  array('sku'=>'SDFSDF', 'name'=>'Shoes', 'category'=>'Footwear', 'price'=>'100', 'quantity'=>'1'),
  array('sku'=>'123DSW', 'name'=>'Sandals', 'category'=>'Footwear', 'price'=>'87', 'quantity'=>'1'),
  array('sku'=>'UHDF93', 'name'=>'Socks', 'category'=>'Footwear', 'price'=>'5.99', 'quantity'=>'2')
);
?>

सबसे पहले, ई-कॉमर्स डेटा को analytics.js के लिए ज़रूरी JavaScript स्ट्रिंग में बदलने के लिए कोई लॉजिक लिखा जाए:

<?php
// Function to return the JavaScript representation of a TransactionData object.
function getTransactionJs(&$trans) {
  return <<<HTML
ga('ecommerce:addTransaction', {
  'id': '{$trans['id']}',
  'affiliation': '{$trans['affiliation']}',
  'revenue': '{$trans['revenue']}',
  'shipping': '{$trans['shipping']}',
  'tax': '{$trans['tax']}'
});
HTML;
}

// Function to return the JavaScript representation of an ItemData object.
function getItemJs(&$transId, &$item) {
  return <<<HTML
ga('ecommerce:addItem', {
  'id': '$transId',
  'name': '{$item['name']}',
  'sku': '{$item['sku']}',
  'category': '{$item['category']}',
  'price': '{$item['price']}',
  'quantity': '{$item['quantity']}'
});
HTML;
}
?>

इसके बाद, <script> टैग में आपको ट्रांज़ैक्शन और आइटम डेटा को डाइनैमिक तरीके से आउटपुट करने के लिए, अतिरिक्त PHP लॉजिक जोड़ना होगा:

<!-- Begin HTML -->
<script>
ga('require', 'ecommerce');

<?php
echo getTransactionJs($trans);

foreach ($items as &$item) {
  echo getItemJs($trans['id'], $item);
}
?>

ga('ecommerce:send');
</script>

PHP स्क्रिप्ट का निष्पादन पूरा होने के बाद, analytics.js के लिए ज़रूरी लेन-देन और आइटम डेटा पेज पर प्रिंट कर दिया जाएगा. पेज पर JavaScript को ब्राउज़र में रेंडर करने के बाद, पूरा ई-कॉमर्स डेटा Google Analytics को भेज दिया जाएगा.

मुद्रा के टाइप

डिफ़ॉल्ट मुद्रा प्रकार को प्रबंधन इंटरफ़ेस से कॉन्फ़िगर किया जा सकता है. जब analytics.js का इस्तेमाल करके मुद्रा की वैल्यू भेजी जाती है, तब वैल्यू किसी मुद्रा की कुल वैल्यू दिखाती है.

दशमलव बिंदु का इस्तेमाल, मुद्रा के पूरे और फ़्रैक्शनल हिस्से के बीच डीलिमिटर के तौर पर किया जा सकता है. परिशुद्धता अधिकतम 6 दशमलव स्थानों तक है. नीचे दिया गया नियम, मुद्रा फ़ील्ड के लिए मान्य है:

1000.000001

Google Analytics को वैल्यू भेजने के बाद, पहला अंक, - वर्ण या . (दशमलव) वर्ण तक का पूरा टेक्स्ट हटा दिया जाता है. इसलिए:

$-55.00

यह हो जाएगा:

-55.00