# Data Layer digtalData Object Documentation

On the front end we collect all information into a JSON object, which is assigned to the global variable digitalData. This JSON object will include all the analytics parameters and values that describe the current page or interaction. Below is the detailed description of all the properties that we have implemented, what they track and under what circumstances. The properties are organized in alphabetical order for ease of finding.

# Table of contents

# Details

  • # digitalData.cart

    This object is used for setting information about viewed, added, and removed products only. Once the cart is set, the digitalData.transaction object is used.

    • digitalData.cart.addProduct Records details of a product added to the cart. In use on donation tip-up products, as of August 2019 used in all products as a standard.

      Example:

      {
        "productID": 1189,
        "productcategory": "All Products",
        "productQty": 1,
        "productname": "2 Goats"
      }
      
    • digitalData.cart.removeChild Records details of a child that is being removed from the cart. Gets set only on the cart page.

      Example:

      {
        "productcategory": "Sponsorship",
        "productQty": 1,
        "productname": "Sponsorship",
        "daysWaiting": 117,
        "country": "Bangladesh",
        "gender": "Female",
        "age": 7,
        "childID": "0bcc0cb7-da64-411a-8e9f-1ac1fbd4298a",
        "hasupcomingbirthday": true,
        "frequency": "monthly",
        "productID": 1242
      }
      
    • digitalData.cart.removeProduct Records details of a product or a child that is being removed from the cart. Gets set only on the cart page.

      Example:

      {
        "productID": 1189,
        "productcategory": "All Products",
        "productQty": 1,
        "productname": "2 Goats"
      }
      
    • digitalData.cart.viewProduct Records product data on product view pages. On June 2021, it was updated to also include the list of products on gift catalog category pages and on the sponsorship list pages for better integration with third-party marketing pixels.

      Examples:

      item: [
        {
          "price": {
            "basePrice": 120,
            "totalPrice": 120,
          },
          "productInfo": {
            "fundName": "undes/des/br/emer",
            "productID": 'donation-1640-monthly',
            "productcategory": "Donation: Form: undes/Donation: Form/P2P: undes",
            "productname": "Donation: " + appealName + ": monthly",
            "productQty": 1,
            "renewalFrequency": "one-time/monthly/quarterly/yearly",
          }
        }
      ]
      
      "item": [
        {
          "price": {
            "basePrice": "",
            "totalPrice": ""
          },
          "productInfo": {
            "productID": "1242",
            "productQty": 1,
            "productname": "Sponsorship",
            "productcategory": "Sponsorship",
            "age": 14,
            "childID": "4b10ab53-7907-4522-8ea5-ad23dd04c261",
            "country": "Nepal",
            "daysWaiting": 1038,
            "gender": "Female"
          }
        }
      ]
      
  • # digitalData.ChildSearchparameters

    Records information about child sponsorship search and navigation. Gets set on the Children List page, a page where the user sees a list of children & a Child Profile page, a page where the user sees details about one child. The parameters childnumberclicked and childnumberviewed are shown on Children List, Child Profile and all checkout pages. Example:

      {
        childnumberviewed: 66,
        childnumberclicked: 1,
        childage: "14",
        childbirthmonth: "January",
        childbirthday: "1",
        childid: "e67eb98b-b9d5-432b-b42f-1981f2a8144f",
        childgender: "Female",
        childregion: "Ethiopia"
      }
    
    • digitalData.ChildSearchparameters.childage

      Age of the child that the user has searched for on the Children List page. Age of the child on the Child Profile page, a page user sees when they click on Learn more about me link.

    • digitalData.ChildSearchparameters.childbirthday

      A birthday that the user has searched for on the Children List page. A birthday of the child on the Child Profile page.

    • digitalData.ChildSearchparameters.childbirthmonth

      A birth month of the child that the user has searched for on the Children List page. A birth month of the child on the Child Profile page.

    • digitalData.ChildSearchparameters.childgender

      A gender of the child that the user has searched for on the Children List page. A gender of the child on the Child Profile page.

    • digitalData.ChildSearchparameters.childhasupcomingbirthday

      Boolean value indicating whether or not a child has an upcoming birthday. This is set only on the Child Profile page.

    • digitalData.ChildSearchparameters.childid

      Child's unique identification number. This gets set only on the Child Profile page.

    • digitalData.ChildSearchparameters.childnumberclicked

      How many individual children's profiles a user has clicked/viewed. This is set on the Children List, Child Profile page and in all checkout steps.

    • digitalData.ChildSearchparameters.childnumberviewed

      How many children in a list a user has seen. This is set on the Children List, Child Profile page and in all checkout steps.

    • digitalData.ChildSearchparameters.childregion

      A country that the user has searched for on the Children List page. Country of the child on the Child Profile page.

  • # digitalData.donation

    Records information about the donation. Gets set anytime we may have a donation, namely on donation, Teamraiser, sponsorship and gift catalog pages. This is not recorded as a product object due to the original bad implementation and was never rewritten as a standard product string due to time constraints. Example:

      {
        "donortype": "member:donor",
        "recurringdonationamount": 0,
        "recurringdonationfrequency": "monthly",
        "singledonationamount": 15,
        "userjourneyname": "Donation",
      }
    
    • digtalData.donation.donortype

      Deprecated and not used by DTM. It will be removed in phase 2 of the project. Sets information about the logged-in user. Note: This is the same information that is presented in digitalData.user object, except it's structured in a different format. Possible values are concatenated together by a semicolon : separator based on user's profile settings member, donor, faf, sponsor, partner. Gets set only when the user is logged-in and a page has a donation transaction on it.

    • # digitalData.donation.pledge

      Part of the data used to be tracked in page.pageInfo.memberCenterIncrease, however it is has been moved here for logical consistency as it's no longer used just in the member center and records generic donation pledges. As of November 2019, member center and TeamRaiser participant center set values here.

      {
        "amount": "10|25|15",
        "type": "Member Center Donation Upgrade",
        "paymentType": "credit"
      }
      
      • digitalData.donation.pledge.amount

        Tracks the donation pledge amount in the format ${currentAmount}|${newAmount}|${difference}, where ${currentAmount} is the existing donation amount, ${newAmount} is the newly pledged amount and ${difference} is the difference between the new amount and the current amount.

      • digitalData.donation.pledge.type

        Tracks the type of donation pledge that was made. Common values are Member Center Donation Upgrade & P2P PC Donation.

      • digitalData.donation.pledge.paymentType

        Tracks the payment type that was used. The possible values are credit, check, cash, pay-later.

    • digitalData.donation.recurringdonationamount

      Sets the amount of money a user has chosen to donate as a recurring payment. Gets set with a valid value on donation, sponsorship and gift catalog pages, as those are the only places where a user can donate a recurring payment. On Teamraiser pages the value is set to 0.

    • digitalData.donation.recurringdonationamount

      Sets the amount of money a user has donated as a recurring payment. Gets set with a valid value on donation, sponsorship checkout and gift catalog checkout pages, as those are the only places where a user can donate a recurring payment. On Teamraiser pages the value is set to 0.

    • digitalData.donation.recurringdonationfrequency

      Sets the cycle of payment recurring a user has selected. The possible values can are one-time, monthly, quarterly, yearly based on the donation form configuration. Is always set on donation, sponsorship checkout and gift catalog checkout pages.

    • digitalData.donation.singledonationamount

      Sets the amount of money a user has chosen to donate as a one-time payment. Gets set with a valid value on donation, sponsorship, gift catalog and Teamraiser pages.

    • digitalData.donation.userjourneyname

      Records the user's journey through the process. Currently, it doesn't not provide much accuracy on each donation and Teamraiser pages. However, all sponsorship and gift catalog processes will have this value accurately set. Possible values are: Donation:Start, Donation:Complete, TeamRaiser:Registration:Start:Create a Team, TeamRaiser:Registration:Start:Join a Team, TeamRaiser:Registration:Start:Register Individual/Participation Options, TeamRaiser:Registration:Participation Options, TeamRaiser:Registration:Sign in, TeamRaiser:Registration:Provide Details, TeamRaiser:Registration:Register Another, TeamRaiser:Registration:Review', TeamRaiser:Registration:Make Payment, TeamRaiser:Registration:Waiver, TeamRaiser:Registration:Thank You, TeamRaiser:Participant/Team Search, eCommerce:Cart, eCommerce:Billing, eCommerce:Shipping, eCommerce:Review, eCommerce:Thank You.

  • # digitalData.error

    Records information about the error on the page. The error can be either a form validation error or a server error like a declined transaction. Gets set on all pages with form and on the sponsorship child search page. The pages are donation page, gift catalog checkout pages, request gift catalog page, sponsorship Child List page, sponsorship checkout pages, ecard pages, Teamraiser registration pages, any page with an email sign up form. Example:

      {
        "errorCode": "422",
        "description": "email: Please enter an email address.",
        "type": "validation error"
      }
    
    • digitalData.error.errorCode An error code. Gets set on every error.

    • digitalData.error.description An error message that a user sees. Gets set on every error.

    • digitalData.error.type Describes the type of error a user sees. Gets set on every error.

  • # digitalData.event

    Not in use, to be removed upon confirmation. Was configured to be used by a tracker that was tracking natively embedded video player.

  • # digitalData.form

    Records information about a form on the page. Gets set on any page with a form. The following pages will always have this object: donation form, donation thank you, sponsorship and gift catalog checkout and thank you pages, Teamraiser registration and thank you pages, request gift catalog page, login page, registration page, a page with an email sign up. Examples:

      {
        "appealname": "web mission global action fund",
        "formid": "1620",
        "fundname": "undes",
        "name": "donation:C16101OWNO01TBZBBK|Undes|Web Mission Global Action Fund||",
        "lastfieldname": "how-did-you-hear-select",
        "hearaboutus": "Print Advertisement"
      }
    
      {
        "name": "combo-cart-cart",
        "formid": "combo-cart-cart",
        "sponsorshipenrollmentamount": 72,
        "sponsorshipfrequency": "monthly",
        "sponsorshiptype": [
          "gift sponsorship",
          "sponsorship"
        ],
        "donationtype": "single donation"
      }
    
    • digitalData.form.appealname

      Sets the name of the campaign. The name is extracted from the private name of the donation form. The value is set to a string that appears between 2nd and 3rd | symbols. In the cart, the value is set to in basket additional recurring gift when a user selects to make an additional recurring donation. Gets set on the donation, donation thank you, cart pages.

    • digitalData.form.donationtype

      Deprecated and not used by DTM. It will be removed in phase 2 of the project. Sets the type of donation a user is selected to make in a gift catalog and sponsorship. This value is a duplicate, as the same information can be computed based on the values of the properties digitalData.donation.singledonationamount and digitalData.donation.recurringdonationamount. Possible values single donation, Recc donation. Gets set on the gift catalog & sponsorship checkout pages.

    • digitalData.form.formid

      Sets the HTML id attribute of the <form>. On the donation pages, the id is set to the id of the donation form as it appears in Luminate. In the gift catalog checkout, which can also be a combination cart the id is set to combo-cart-{name-of-step}. In the sponsorship checkout, the id is set to sponsorship-form-{name-of-step}. Where {name-of-step} will be one of the values billing, cart, shipping, review. Gets set on all pages where a form and an HTML id attribute or it's set in code.

    • digtalData.form.fundname

      The name of the donation fund. The value is set to the text that appears between the first and second | symbol in the private name of the donation form. Gets set only on the donation form.

    • digtalData.form.hearaboutus

      Sets the value the user has selected in How did you hear about us? field. Gets set on a donation form when a user has selected a recurring payment and on sponsorship only checkout and on sponsorship only billing page.

    • digitalData.form.name

      Sets the HTML name attribute of the <form>. On the donation pages, the name is set to the private name of the donation form as it appears in Luminate. In the gift catalog checkout, which can also be a combination cart the name is set to combo-cart. In the sponsorship checkout, the name is set to sponsorship-form. Gets set on all pages where a form and an HTML name attribute or it's set in code.

    • digtalData.form.lastfieldname

      Sets the name of the last field a user has edited. Gets set on all pages that have a form that user can interact with.

    • digtalData.form.sponsorshipenrollmentamount

      Deprecated and not used by DTM. It will be removed in phase 2 of the project. Sets the total amount of the sponsorship. Note: this is a duplicated value as we set the same information in product details in the digitalData.transaction.item property. Gets set in cart checkout steps if there is a sponsorship in the cart.

    • digtalData.form.sponsorshipfrequency

      Deprecated and not used by DTM. It will be removed in phase 2 of the project. Sets the recurring frequency a user has selected for the sponsorship. The possible values are monthly, yearly. Gets set in cart checkout steps if there is a sponsorship in the cart.

    • digtalData.form.sponsorshiptype Deprecated and not used by DTM. It will be removed in phase 2 of the project??. An array of values, one for each child. Displays whether it's a gift or a regular sponsorship. The possible values are gift sponsorship, sponsorship. Gets set in cart checkout steps if there is a sponsorship in the cart.

    • digtalData.form.uploadType

      Sets information about user-generated content uploads. Sets the type of the content uploaded in the format of ${type}|${location}, where ${type} is a generic mime type of the file and ${location} describes the context in which the upload was made.

  • # digtalData.impression

    Records information about a section of the page that is shown to some users but not others.

    • digitalData.impression.name

      Sets the name of the section that is shown to the user. The name of the section should be identical to the Activity Map Region for the section, so the impression can be corelated with link clicks the reports.

  • # digtalData.page

    • digitalData.page.attributes

      Sets generic information about the page a user is visiting. See each property for more details.

      • digitalData.page.attributes.country

        Deprecated and not used by DTM. It will be removed in phase 2 of the project. Sets the country of the page. Default value is us. This is a duplicate of digtalData.page.pageInfo.region. As of Gets set on every page.

      • digitalData.page.attributes.domain

        Sets the protocol, domain and port number of the page's URL. The value that is set by window.location.origin JavaScript call. Gets set on every page. Example: window.location.origin

      • digitalData.page.attributes.pageSpeed

        Sets the performance speed of the page as set by the Javascript window.performance object. Gets set on every page.

    • digitalData.page.category

      Set's current page categorization.

      • digitalData.page.category.primaryCategory

        Sets the primary category of the page. In AEM the value is set based on the page's path, the string after the last forward slash / will be used. In Luminate the categories are set based on application or functionality. Possible values are homepage, Survey, Sponsorship, Donation, Gift Catalog {store-id}, Teamraiser {event-id}, Supporter Center, Luminate Pagebuilder. Where {store-id} is a dynamic id of the store, {event-id} is the id of the Teamraiser event as set by the Luminate product. Gets set on every page.

      • digtalData.page.category.subCategory1

        Sets the secondary category of the page. In AEM the value is set based on the page's path, the string before the last forward slash / will be used. In Luminate the categories are set based on application or functionality. Values can vary based on page classifications. Some of the possible values are Catalog Homepage, All Products Children list, Child profile, Social Media Sign in / Register Page, Reset Your Password, Run a Race, Dashboard. Gets set on pages that have a valid secondary category value set.

      • digtalData.page.category.subCategory2

        Sets the tertiary category of the page. In AEM the value is set based on the page's path, the string before the second to last forward slash / will be used. In Luminate the categories are set based on application or functionality. Values can vary based on page classifications. Some of the possible values are 1 Goat, Educate a Girl. Gets set on pages that have a valid tertiary category value set.

      • digtalData.page.category.tags

        Sets the tags for the page. Set on the pages where the value is specified. Not passed through to Analytics as of 2021-03-29.

      • digtalData.page.category.theme

        Sets the theme for the page. Set on the pages where the value is specified. The value is passed through to eVar112.

      • digtalData.page.category.topics

        Sets the topics for the page. Set on the pages where the value is specified. The value is passed through to eVar113.

    • digitalData.page.externalcampaigns

      Sets information about referrers and external campaigns. Gets set when a user came from a domain that is not a Save the Children domain. Examples:

        {
          "sourcecode": "Web|Direct|DNL_TEST|Manual_Firefox_Generic|12/31/1099",
        }
      
        {
          "sourcecode": "Web|Referral|referrer.com|||8/16/2018",
        }
      
      • digitalData.page.externalcampaigns.sourcecode

        Sets computed marketing source code for direct traffic. If a CID parameter is passed, the full CID string is set into this property. Examples: Web|Referral|, Web|Social_Network_SCUS|Facebook

    • digtalData.page.pageInfo

      Sets the information about the page's details

      • digtalData.page.pageInfo.destinationURL

        The full URL of the page including all the URL query parameters. Gets set on every page.

      • digtalData.page.pageInfo.designTheme

        A value used to denote a design variation of a page. The value is passed through to eVar114.

      • digtalData.page.pageInfo.contentType

        The content type of the page. Set on the pages where the value is specified. The value is passed through to eVar112.

      • digtalData.page.pageInfo.language

        The language of the existing page. The value is set by AEM or Luminate. Gets set on every page.

      • digtalData.page.pageInfo.locale

        The language of the current page. Note: This is inaccurate, as locale should indicate pages location and a language ex: en_US, es_US. In code the value is a duplicate of the language digtalData.page.pageInfo.language parameter. This value can also be extrapolated by combining values from digtalData.page.pageInfo.language & digtalData.page.attributes.country parameters. In use for eVar62 & prop62 as of 12/18/2017. Gets set on every page.

      • digitalData.page.pageInfo.membercenterclicks

        Sets the parameters of the destination page in the supporter/member center. The parameters have the following pattern: {destination-route-name}|{section-of-link}|{name-of-clicked-link}. Gets set on each link click in the member/supporter center followed by the member_center custom call rule. Example: membercenterclicks: "dashboard|my-giving|Manage My Giving"

      • digitalData.page.pageInfo.pageHierarchy

        Sets the page's hierarchy relative to the homepage. The folder separator / is replaced by a pipe symbol |. Gets set on every page. Example: about-us|resource-library|annual-report, SPageNavigator|sponsorship.html

      • digtalData.page.pageInfo.pageId

        Sets the id of the page. The value is set to the URL string that follows the last instance of the forward slash /. Gets set on every page.

      • digtalData.page.pageInfo.pageName

        Sets the name of the page. Extrapolated from the page's title, the name of the site is removed. On virtual pages, like within the sponsorship acquisition, the name of the virtual page is set. Gets set on every page.

      • digtalData.page.pageInfo.pageTitle

        Sets the title of the page. The value based on the attribute of the meta tag. Gets set on every page.

      • digtalData.page.pageInfo.pageType

        Sets the general classification of the page. The value is set by the meta tag. In AEM the value seems to be always Homepage. In Luminate the value is set based on the application. Gets set on every page.

      • digtalData.page.pageInfo.region

        Sets the region of the current page. The value is static and is set to us. This is a duplicate of property, which is set by the server digitalData.page.attributes.country. Gets set on every page.

      • digtalData.page.pageInfo.server

        Sets the domain name of the current page. The value is a duplicate as the full domain name, together with protocol and port are set in digitalData.page.attributes.domain.

    • digtalData.page.params

      Sets the values of all URL parameters as a key-value pairs in a JSON object. In sponsorship, the parameter values are written into a Cookie on page load and then set into the analytics on page reload. This is due to the fact that the sponsorship app is a JavaScript app that tries to control the URL, so it will redirect a user if a page contains any unexpected parameters, namely a s_svanity, which gets set as vanityurl, that tells Luminate and not the app about any special sponsorship prices. The parameters are propagated on virtual page views, as user navigates from one virtual page to another. In case of sponsorship, we manually add product_id & product_name parameters for ease of tracking sponsorships as a product. In gift catalog, the scripts also set product_id dynamically in analytics from the page, if the parameter is missing in the URL. Gets set on pages that have URL parameters. Example:

        {
          "VIEW_PRODUCT": "true",
          "product_id": "1178",
          "store_id": "1241",
          "product_name": "Educate a Girl"
        }
      
        {
          "vanityurl": "mothersday2017",
          "product_id": 1242,
          "product_name": "Sponsorship"
        }
      
  • # digitalData.registration

    Sets information about the user's login or registration action. Gets set only when a user logs in or registers, automatically or directly.

    • digitalData.registration.userType

      Deprecated and not used by DTM. It will be removed in phase 2 of the project. Describes user type. Possible values can be described by the following complicated formula: new| + e-prospect|member|donor|partner|sponsor|faf + sign-in/activation/auto-registration/registration/p2p sign in/p2p registration. The value new is appended if the user doesn't have donorId on record; in other words there is no digitalData.user.donorId property.

    • digitalData.registration.userState

      Deprecated and not used by DTM. It will be removed in phase 2 of the project. Sets the form type a user has used to log in or register. The possible values are sign in, registration + :{social-network-abbreviation}. Where {social-network-abbreviation} is one of the following fb, tw, g1, in denoting Facebook, Twitter, Google Plus and Linked in respectively.

    • digitalData.registration.loginType

      Denotes how the user has logged in or registered. The possible values are: activation, autoregistration, sign in, registration

    • digitalData.registration.location

      Denotes the location/application through which the user has registered or logged in. The possible values are: donation, p2p, sign up, sign in, registration, spon, giftcat + :{social-network-abbreviation}. Where {social-network-abbreviation} is one of the following fb, tw, g1, in denoting Facebook, Twitter, Google Plus and Linked in respectively.

  • # digtalData.transaction

    Sets the details about user's transaction. Some of the properties are set on pages that can have a potential transaction. Details of cart items are set only when a user is in the cart or is checking out. Gets set on donation, eCommerce checkout and Teamraiser thank you pages. Example:

      {
        "item": [
          {
            "price": {
              "basePrice": 120,
              "totalPrice": 120
            },
            "productInfo": {
              "productID": 1189,
              "productcategory": "All Products",
              "productQty": 1,
              "productname": "2 Goats"
            }
          },
          {
            "price": {
              "basePrice": 36,
              "totalPrice": 36
            },
            "productInfo": {
              "productcategory": "Sponsorship",
              "productQty": 1,
              "productname": "Gift Sponsorship",
              "daysWaiting": 366,
              "country": "Philippines",
              "gender": "Female",
              "age": 7,
              "childID": "1bc49ce1-8b07-4a31-adc4-6d63ccac14d6",
              "hasupcomingbirthday": true,
              "frequency": "monthly",
              "productID": 1221
            }
          },
          {
            "price": {
              "basePrice": 36,
              "totalPrice": 36
            },
            "productInfo": {
              "productcategory": "Sponsorship",
              "productQty": 1,
              "productname": "Sponsorship",
              "daysWaiting": 448,
              "country": "Uganda",
              "gender": "Female",
              "age": 13,
              "childID": "c278e554-d715-4a37-9865-2a173c06b22a",
              "hasupcomingbirthday": true,
              "frequency": "monthly",
              "productID": 1242
            }
          }
        ],
        "paymentMethod": "credit"
      }
    
    • digitalData.transaction.item

      Sets an array of objects that are currently in the gift catalog cart. The object of a gift catalog item and sponsorship are similar but are different. See below for the details. Gets set in the cart and in checkout steps, only if there are items in the cart.

      Gift catalog items will have the following properties:

      • price.basePrice - Product price per one item. In a sponsorships, it's the base price of sponsorship.
      • price.totalPrice - Total price for this product. Total price for the total quantity of products. In a sponsorship it's a total price a user has selected to pay for a sponsorship of the product.
      • productInfo.fundName - For donation products only, the fund name.
      • productInfo.productcategory - The name of the category page the user has added a product from.
      • productInfo.productID - The id of the product.
      • productInfo.productname - The name of the product.
      • productInfo.productQty - The number of items a user has chosen.
      • productInfo.renewalFrequency - For donation products only, the auto-renewal frequency of the gift. The valid values are one-time, monthly, quarterly, yearly.

      Example:

        {
          "price": {
            "basePrice": 15,
            "totalPrice": 45
          },
          "productInfo": {
            "productID": 1150,
            "productcategory": "All Products",
            "productQty": 3,
            "productname": "1 Soccer Ball"
          }
        }
      

      Sponsorship items will have the following properties:

      • price.basePrice - Product price per one item.
      • price.totalPrice - Total price for this product.
      • productInfo.age - The age of the child that a user has chosen to sponsor.
      • productInfo.childID - The id of the child that a user has chosen to sponsor.
      • productInfo.country - The country of the child that a user has chosen to sponsor.
      • productInfo.daysWaiting - The number of days a child has waited to be sponsored.
      • productInfo.frequency - The payment frequency a user has selected for the sponsorship. Possible values are monthly or yearly.
      • productInfo.gender - The gender of the child that a user has chosen to sponsor.
      • productInfo.hasupcomingbirthday - Does the chosen child have an upcoming birthday.
      • productInfo.productcategory - The name of the category page the user has added a product from.
      • productInfo.productID - The id of the product.
      • productInfo.productname - The name of the product. The value is either Sponsorship or Gift Sponsorship.
      • productInfo.productQty - The number of items a user has chosen.

      Example:

        {
          "price": {
            "basePrice": 36,
            "totalPrice": 36
          },
          "productInfo": {
            "productcategory": "Sponsorship",
            "productQty": 1,
            "productname": "Sponsorship",
            "daysWaiting": 406,
            "country": "El Salvador",
            "gender": "Female",
            "age": 10,
            "childID": "80d8f015-bcc1-45b0-aa28-65c2c16022b4",
            "hasupcomingbirthday": false,
            "frequency": "monthly",
            "productID": 1242
          }
        }
      
    • digitalData.transaction.paymentMethod

      Sets the payment method for the transaction

    • digitalData.transaction.purchaseID

      Sets an abbreviated confirmation code of the transaction. The value is as follows: the first letter denotes the type of transaction, the remaining characters is a string that appears after the last instance of the dash - symbol.

    • digitalData.transaction.transactionID

      Sets the full confirmation code of the transaction. The value is set as follows: full confirmation code plus a 3-6 character string that describes the transaction type. Possible values are don, spon, gifcat, adrc, p2p.

    • digitalData.transaction.transactionsourcecode

      Sets the source code for the transaction. The code is extracted from the private name of the donation form, the text that appears before the first pipe | symbol. Gets set only on donation pages; this includes Teamraiser donations that are not part of the registration process.

  • # digitalData.user

    This property sets information that describes the users. It is set on page load and is propagated on virtual page page_view direct call rule. Example:

      "user": {
        "isPartner": false,
        "isSponsor": false,
        "isDonor": false,
        "isFaf": false,
        "donorId": "116769158",
        "consId": "2345731"
      }
    
    • digitalData.user.consId

      The Luminate constituent id. Gets set for every logged-in user.

    • digitalData.user.donorId

      Donor id that appears on user's record in BBCRM. Gets set only when the value is present in Luminate.

    • digitalData.user.isDonor

      Answers the question has the logged-in user donated in the past. Information is read from a Luminate property, which gets set by the sync with the BBCRM. Gets sets for every logged-in user.

    • digitalData.user.isFaf

      Answers the question has the logged-in user participated in peer to peer event in the past. Information is read from a Luminate property, which gets set by the sync with the BBCRM. Gets sets for every logged-in user.

    • digitalData.user.isPartner

      Answers the question is the logged-in user a partner for children. Information is read from a Luminate property, which gets set by the sync with the BBCRM. Gets sets for every logged-in user.

    • digitalData.user.isSponsor

      Answers the question is the logged-in user currently sponsoring any children. Information is read from a Luminate property, which gets set by the sync with the BBCRM. Gets sets for every logged-in user.

    • digitalData.user.teamraiserRegistrationType

      Team type registration a user has selected in the Teamraiser registration flow. Gets sets for every user in Teamraiser registration flow only.

  • # digitalData.version

    Sets the release version of the analytics custom code for debugging purposes. Gets set on every page.