Skip to main content

Adobe Analytics with Datastreams

Overview

The newly developed “alloy.js” library from Adobe is a JavaScript library that helps merchants measure how users interact with their website.

The new approach of the current “alloy.js” is that it improves:

  • Page performance by loading a smaller tracking library.
  • Use the same visitor identifier across different solutions from Adobe platform.
  • On client-side data, it minimizes the transmissions from website to Adobe platform.

Implementing Adobe Analytics using the Adobe Experience Platform Web SDK (alloy.js) probably will charge fees, so be in touch with your Adobe provider. For more information on the Adobe Experience Platform Web SDK and how to install it, click here.

Setting the Adobe Analytics configuration

To implement Adobe Analytics on your website, follow these steps: 

  1. Log into your 2Checkout (now Verifone) Merchant Control Panel and navigate to Setup.
  2. Select Ordering Options.
  3. Click on the Analytics tab.
  4. Click on the Convert Plus & Inline Checkout button.
  5. In the Adobe Analytics panel click on Setup.

    setting adobe analytics
  6. Fill in the two fields. The information can be extracted from the datastream creation in the Adobe platform.

    Adobe Analytics Edge Configuration ID and Experience Cloud Organization ID

    The Adobe Analytics Edge Configuration ID and Experience Cloud Organization ID can be found in Adobe Experience Platform.
    • The Edge Configuration ID means Datastream ID and represents the ID of the configuration that is set on the datastream created for transferring data to the Adobe Analytics module.
    • The Organization ID means the ID that Adobe is creating for a user and helps the Adobe Platform to recognize the user between the changes from different module/applications.

    Adobe Experience Platform

  7. Click on the Inactive button to activate the configuration credentials for Adobe Analytics.

    Activate button

Setting the Adobe Experience Platform for using Adobe Analytics

To implement a report in Adobe Analytics from the data sent in the shopping cart, first you need to create a datastream and a schema to set the logic data into the datastream.

  1. Go to Adobe Experience Platform and click on the Schemas option from the left side panel. Then, click on the Create schema button. This schema should use the XDM Adobe pre-build schemas in order for the data to be recognized in the Adobe Analytics report.

    The XDM ExperienceEvent is used as the primary selection for the Adobe pre-build class because this is the way that Adobe Analytics service can recognize the schema in the datastream.

    XDM ExperienceEvent
  2. In the new schema, go to Scheme properties and enter the Display name and Description. In the left-side panel, go to the Fields group and click on Add; this will open the pre-built schema for Adobe Analytics to be selected.New schema settings
       This step is very important as here we get the data that will be mapped in the datastream with the data sent from the shopping cart.

    Add fields group

  3. After saving the schema, go back to the Datastreams section, and create a New Datastream, selecting the already created schema from the Event schema drop-down option.

    Datastreams section

The steps on how to map the data will be treated in the section Mapping the data to Adobe Analytic context.

All of these 3 steps can be reproduced in the Adobe Experience Platform Data Collection module from the same Adobe Experience Cloud environment.

Adobe Experience Platform Data Collection

Mapping the data to Adobe Analytics context

For mapping the correct data into Adobe Analytics module, the 2Checkout comes with the schema that is sent from the shopping cart. For mapping the data, you need to know two aspects, one of the data that is sent from 2Checkout, and secondly, the data recognized (or created as new evar/events) in the Adobe Experience Platform.

Data sent from 2Checkout

A general overview of this data is presented in the code snippet below:

{
  "event": "checkout",
  "ecommerce": {
    "currencyCode": "string required",
    "sessionId": "string required",
    "checkout": {
      "actionField": {"<< ActionField object >>"},
      "products": ["<< List of product object >>"]
    },
    "purchase": {
      "actionField": {"<< ActionField object >>"}
    },
    "products": ["<< List of product object >>"],
    "add": {
      "products": ["<< List of product object >>"]
    },
    "remove": {
      "products": ["<< List of product object >>"]
    },
    "impressions": ["<< List of impression object >>"]
  },
  "PAGE_NAME": "string => string",
  "VENDOR_CODE": "string => string",
  "ONESTEPCART": "true => bool",
  "SHORT_FORM": "true => bool",
  "PURCHASE_COMPLETE": "bool",
  "TEST_ORDER": "bool => bool",
  "PRODUCT_SOURCE": "string",
  "CART_LOCK": "bool => bool",
  "DISCOUNT_COUPON_STATUS": "string",
  "AUTO_RENEWAL": "string => string",
  "PURCHASE_TYPE": "string => string",
  "LANGUAGE": "string => string",
  "BILLING_COUNTRY": "string",
  "VISITOR_COUNTRY": "string",
  "BILLING_CURRENCY": "string",
  "COMPANY_NAME": "string",
  "ORDER_EXT_REF": "string",
  "CUSTOMER_EXT_REF": "string",
  "TEMPLATE_LAST_MODIFIED_DATE": "string",
  "TEMPLATE_CREATION_DATE": "string",
  "PAGE_STYLE_NAME": "string",
  "ADDITIONAL_HIDDEN_FIELDS": "array",
  "SELLER_TYPE": "string",
  "PAYMENT_METHOD": "string",
  "PAYMENT_METHOD_TYPE": "string",
  "QUANTITY_CHANGED": "string",
  "CART_STEP": "string",
  "ADDITIONAL_FIELDS_COUNT": "number",
  "SOURCE": "string",
  "PURCHASE_FLOW": "string",
  "CREDIT_CARD_INSTALLMENTS": "string",
  "LEAD_MANAGEMENT": "string",
  "PAYMENT_CATEGORY": "string",
  "time": "number"
}

In the next tables, each event is described in detail:

Object ecommerce (key "ecommerce" on the event name "checkout")
Key Content
currencyCode String (required)
  The currency code
sessionId String (required)
  The session ID
checkout Object (required)
  The object that will implement the checkout event. Will have two keys: “actionField” and “products
  actionField Object (required)
  products Array of objects (required)
coupon String
  If there is a promotion, a coupon will be needed
orderDiscountCoupon String
  The discount from the added coupon
Object actionField (key “actionField” on the event name “checkout”)
Key Content
step Integer (required)
  The step
checkout_revenue String (required)
  Checkout revenue
checkout_revenueUSD String (required)
  Checkout revenue USD
checkout_tax String (required)
  Checkout tax
checkout_taxUSD String (required)
  Checkout tax USD
checkout_shipping String (required)
  Checkout shipping
checkout_shippingUSD String (required)
  Checkout shipping USD
Object product (key “products”, array of product)
Key Content
name String (required)
  The name of the product
id String (required)
  The ID of the product
price String (required)
  The price
discountAmount String (required)
  The amount of the discount
quantity Number (required)
  The quantity
type String (required)
  The type of the product
group String (required)
  The group
tax Number (required)
  The tax amount
format String (required)
  The format
coupon String
  If there is a promotion, a coupon will be needed
discountCoupon String
  The discount from the added coupon
itemExtRef String
  The product external reference
isDynamic Boolean
  The product is dynamic
dynamicType String
  The type of dynamic product
dynamicRecurrence String
  The recurrence of dynamic product
dynamicDuration Number
  The duration of a dynamic product
dynamicRenewalPrice Number
  The renewal price for a dynamic product
options Array of strings
  Extra option for the product
hiddenAdditionalFields Array of strings
  Additional hidden fields that are set by the merchant in the Control Panel application
Object ecommerce (key “ecommerce” on the event name “purchase”)
Key Content
currencyCode String (required)
  The currency code
sessionId String (required)
  The session ID
purchase Object (required)
  The object that will implement the purchase event will have one key: “actionField”
  actionField Object (required)
orderTimestamp String (required)
  The timestamp of the place order
products Array of objects (required)
  The product object
Event name “cartUpdate”
Key Content
PAGE_NAME String
  The name of the page
VENDOR_CODE String
  Vendor code
ONESTEPCART Boolean
  One step cart value
SHORT_FORM Boolean
  Short form value
PURCHASE_COMPLETE Boolean
  The purchase is completed
TEST_ORDER Boolean
  The order is for testing purpose
PRODUCT_SOURCE String
  The product source
CART_LOCK Boolean
  The cart is locked
DISCOUNT_COUPON_STATUS String
  The status for the discount coupon
AUTO_RENEWAL String
  Auto renewal value
PURCHASE_TYPE String
  The type of the purchase
LANGUAGE String
  The language code
BILLING_COUNTRY String
  The billing country
VISITOR_COUNTRY String
  The visitor country
BILLING_CURRENCY String
  The billing currency
COMPANY_NAME String
  The company name
ORDER_EXT_REF String
  The order external reference
CUSTOMER_EXT_REF String
  The customer external reference value
TEMPLATE_LAST_MODIFIED_DATE String
  Template last modified date
TEMPLATE_CREATION_DATE String
  Template creation date
PROFESSIONAL_SERVICES String
  Professional services value
PAGE_STYLE_NAME String
  Page style name
ADDITIONAL_HIDDEN_FIELDS Array of strings
  Additional hidden fields that are set by the merchant in the Control Panel application
SELLER_TYPE String
  Seller type value
PAYMENT_METHOD String
  Payment method value
PAYMENT_METHOD_TYPE String
  Payment method type value
QUANTITY_CHANGED Number
  The new quantity of the cart updated event
CART_STEP String
  The step of the cart
ADDITIONAL_FIELDS_COUNT Number
  The count of the additional fields
SOURCE String
  The source value
PURCHASE_FLOW String
  The purchase flow value
CREDIT_CARD_INSTALLMENTS String
  The credit card installments
LEAD_MANAGEMENT String
  The lead management value
PAYMENT_CATEGORY String
  The payment category
time Number
  The timestamp on which the event is created
REVIEW_FLOW String
  The review flow value
Event name “addToCart”
Key Content
currencyCode String (required)
  The currency code value
ecommerce Object (required)
  Ecommerce object that will have a key named “add”
  add Object (required)
    products Array of objects (required)
      The product object
Event name “removeFromCart”
Key Content
ecommerce Object (required)
  Ecommerce object
  currencyCode String (required)
    The currency code value
  sessionId String (required)
    The session ID value
  remove Object (required)
    products Array of objects (required)
      The product object
    coupon String
      If there is a promotion, a coupon will be needed
    orderDiscountCoupon String
      The discount from the added coupon
Event name “productImpression”
Key Content
ecommerce Object (required)
  Ecommerce object that will have a key named “impressions”
  impressions Array of objects (required)
    The impression object
Object impression (key “impressions”, array of impression)
Key Content
name String (required)
  The name of the product
id String (required)
  The ID of the product
price String (required)
  The price
discountAmount String
  The amount of the discount
type String
  The type of the product
group String (required)
  The group value
format String (required)
  The format
isDynamic Boolean
  The product is dynamic
dynamicType String
  The type of dynamic product
hiddenAdditionalFields Array of strings
  Additional hidden fields that are set by the vendor in the cPanel application
position Number
  The position of the impression

Data needed from Adobe Experience Platform

Go back to the new created datastream from Adobe Platfom, and click on the Edit Mapping section.

Edit mapping

Here is an example of a partial mapped scheme:

Example of a partial mapped scheme

How to create Events and Variables in the Adobe Analytics application

  1. Log into Adobe Analytics.
  2. Go to Admin > Report Suites.

    Report suites option
  3. Click on the Report suites for which you want to build variables or events.

    report suites list

Example on how to build a custom event in Adobe Analytics:

  • Click on Edit Settings > Conversion > Success Events to build custom events.

    Report Suite manager
  • Click on Add New and then define the new event, for example event10: write a name for the event (ex: “Product Discount Value”).
  • Under the Type column, select Currency if a monetary value is sent under this event, as in the example below. The other fields should be left as preselected by Adobe in this example.

    currency settings
  • Click the Save button at the bottom of the page.

    Save option
  • After the event was created, it will appear in Adobe Analytics Workspaces, if you search for “event10” in the left-side panel.

    "event10" example

Example on how to build a custom variable in Adobe Analytics

A. Session level variable – example evar8 Order ID (order ID/ purchase ID is not captured automatically by Adobe; if we want to capture this value, then it needs to be captured under a custom evar)

  • Click on Edit Settings > Conversion > Conversion Variables to build custom variables.

    Session level variable - Conversion Variables example
  • Click on Add New and define the new variable, for example evar8, add as name Order ID. Select Linear as allocation for order ID.

    Add new Session level variable - Conversion Variables example
  • Click Save at the bottom of the page.
  • After the evar was created, it will appear in Adobe Analytics Workspaces, if you search for evar8 in the left-side panel.

    Created evar - Session level variable example

B. Merchandising variable (this is a product level variable) – example evar26 Product Discount Coupon Value

  • Click Add New and define the new variable with Product Name “Product Discount Coupon Value”
  • Click Enable merchandising (this is only applicable for merchandising evars – evars that send information specific for certain products, e.g., certain products in an order can have different coupon discounts).
  • For Merchandising click Product Syntax from the drop-down list and Allocation Most Recent (Last).

    Adding new Merchandising variable example
  • Click Save at the bottom of the page.
  • After the evar was created, it will appear in Adobe Analytics Workspaces, if you search for evar26 in the left-side panel.

    Merchandising variable evar created
 

Migration guide from MD5 to SHA2/SHA3 algorithm

Overview

We will stop supporting the MD5 algorithm in our platform and impacted merchants will have to switch to SHA. The decommissioning will be carried out in two stages, having the deadline for the first phase on 15th of August, 2024 and the deadline for the second phase on 30th of June, 2025.

Availability

Areas in which MD5 will no longer be available are the following:

Phase One (deadline: 15th of August, 2024)

Phase Two (deadline: 30th of June, 2025)

Benefits

  • Keeping up to date with technical security advancements.
  • Increasing the security for authentication and removing potential security breaches.
  • Secure and robust while being compatible with the existing algorithms in terms of the number of bits and representation size​

Keep posted on the latest updates in the  2Checkout Control Panel  and in this article for transitioning to the SHA algorithm.

Gateway Error Code Values

The Gateway Error Code will return a list of potential values. Knowing these will help you customize the message you want to relay to your customers relating to failed payment.

Gateway Error Code Values GW Error Message values related to each code value
GW_INVALID_BANK_ACCOUNT_DETAILS Incorrect account information. To finalize the transaction please provide valid bank details.
GW_DIRECT_DEBIT_DECLINED There was a problem with the transaction. Please check that the bank details you provided are correct and try again.
GW_INVALID_BOLETO_CPF The Fiscal Number(CPF) you entered is incorrect. To continue, please enter the CPF again.
GW_MASTERCARD_DENIED Mastercard payments cannot currently be processed. Please try again using a different payment method. We apologize for the inconvenience.
GW_PAYPAL_PAYMENT_CANCEL You did not finalize the PayPal payment. Select a new payment method, or try again using your PayPal account.
GW_PAYPAL_RECURRING_NOT_SUPPORTED This merchant is not enabled for recurring transactions.
GW_COUNTRY_RESTRICTIONS The payment could not be processed due to legal restrictions related to the country associated with this card. Please retry with a different card or choose to finalize the order with a different payment method.
GW_ORDERED_NOT_YET_PAYED The order is not yet paid.
GW_PROCESSING_ERR The online payment cannot be finalized online at this time. Please enter another card or try to finalize the transaction in a few minutes.
GW_TOKEN_DELETED Token deleted.
GW_WAITING_CC_INFO Your online payment is not yet finished. Waiting for the credit card information.
GW_WAITING_PAYMENT Your online order was successfully placed. Payment for this order has not yet been completed. Please follow the instructions below to finalize the payment.
GW_ALREADY_AUTHORIZED Credit card authorization already done!
GW_ACCESS_DENIED Access denied in payment gateway! The transaction cannot be finalized at this time. Please try to finalize the transaction in a few minutes.
GW_INVALID_CVV_CVC2 Error processing the credit card transaction. You have entered an invalid CVV2 or CVC2.
GW_INVALID_CC Invalid data entered. To authorize the card transaction all the data regarding the card must be filled in correctly.
GW_CARD_RESTRICTED Error processing the credit card transaction. The card is restricted. Please contact the issuer bank for more details, or enter another card.
GW_TRANS_REFUSED_BY_ISSUER_BANK Error processing the credit card transaction. Transaction refused by the issuer bank. Please contact the issuer bank for more details, or enter another card.
GW_INVALID_AMOUNT Error processing the credit card transaction. Invalid amount. Please contact the issuer bank for more details, or enter another card.
GW_FORMAT_ERROR Error processing the credit card transaction. Format error. Please contact the issuer bank for more details, or enter another card.
GW_EXPIRED_CARD Error processing the credit card transaction. Expired card. Please contact the issuer bank for more details, or enter another card.
GW_INSUFFICIENT_FUNDS Error processing the credit card transaction. Insufficient funds. Please charge your card account or enter another card.
GW_TRANS_NOTPERMITTED Error processing the credit card transaction. Transaction not permitted to cardholder. Please contact the issuer bank for more details, or enter another card.
GW_EXCEEDS_WITHDRAWAL_AMOUNT_LIMIT Error processing the credit card transaction. The transaction will exceed the card/account withdrawal amount limit. Please contact the issuer bank for more details, or enter another card.
GW_EXCEEDS_WITHDRAWAL_FREQUENCY_LIMIT Error processing the credit card transaction. The transaction will exceed the card/account withdrawal frequency limit. Please contact the issuer bank for more details, or enter another card.
GW_LINK_TO_ISSUER_BANK_UNAVAILABLE Error processing the credit card transaction. The link with the issuer bank is not available. Please enter another card or try to finalize the transaction in a few minutes.
GW_INVALID_RESPONSE Invalid response received from payment gateway.
GW_PAYPAL_ACCEPT Order successfully placed.
GW_UKASH_INVALID_VOUCHER The transaction was not approved by Ukash. This may have happened because the voucher number was not entered correctly or the voucher value does not correspond with the voucher you entered. Please try again.

 

Subscription email flows

Payment successful flow

Happy flow

  1. Shopper purchases a subscription in the shopping cart.

  2. Once the payment is successful, a Payment receipt email is sent to the shopper with confirmation and details of their payment.

  3. An electronic delivery email is provided to the shopper including the subscription plan information, activation codes/keys with short descriptions, downloadable product files, technical and payment support contact details.

       2Checkout can send the electronic delivery email either standalone or combined with the payment receipt notification (in one single email).
  4. An Auto Renewal subscription compliance email is sent automatically to shoppers with confirmation and details of their subscription (information regarding billing cycle duration, next billing amount, next billing date etc).

  5. A reminder email notification is sent to shoppers before their subscription expiration date.

    For ≥ 6 months billing cycle

    • A 30 days before expiration reminder email is sent, along with a 7 days before expiration reminder email.

    For a < 6 months billing cycle

    • Only a 7 days before expiration reminder email is sent.
       You can add other reminders should it make sense for your business, as the above illustrated examples are the mandatory ones, sent by default.
  6. On the day of subscription expiration the auto-renewal subscription is activated which is confirmed when the shopper receives the Payment receipt for renewal email, along with the Delivery confirmation email.

       This notification can be sent in:

    One email: (1) Payment receipt and Delivery / Fulfillment

    Two emails: (1) Payment receipt + (2) Delivery / Fulfillment

    Three emails: (1) Payment confirmation + (2) Payment Receipt + (3) Delivery / Fulfillment

Trial Flow

Trial

  1. Shopper purchases a subscription in the shopping cart and enrolls for a free or discounted trial.
  2. Once the payment is successful a Payment receipt email is sent to the shopper with confirmation and details of their payment.

  3. An electronic delivery email is provided to the shopper including the subscription plan information, activation codes/keys with short descriptions, downloadable product files, technical and payment support contact details.

       2Checkout can send the electronic delivery email either standalone or combined with the payment receipt notification (in one single email).
  4. An compliance trial email is sent automatically to shoppers with confirmation and details of their trial (trial period duration, trial expiration, following billing date, following billing amount, a link to MyAccount for the shopper to be able to cancel the following automatic charge).

  5. Trial expiration notification email is sent to shoppers 5 days before their trial expiration date.

If the shopper continues with the subscription, the above flow should be followed.

Payment failed / Refund flows

unhappy flow

   Additional emails can be configured for unfinished payment and cart abandonment. For more information check the Lead Management documentation.

Payment failed flow

  1. Shopper purchases a subscription in the shopping cart.

  2. The payment is being processed.

    Payment failed

    • If the payment fails, a Payment failed email is sent to the shopper, confirming the failed transaction and providing the possibility to return to the shopping cart and finalizing the purchase without having to go back through the ordering process.

    Payment successful

    • If the payment is successful, the above flow should be followed.
  3. On the next billing date the automatic renewal is attempted and the new payment will be processed.

    Payment failed

    • If the payment fails, a Recurring payment failed email is being sent to the shopper, confirming the failed transaction and providing the possibility to continue with the renewal by changing the payment method or manually renewing the subscription.

    Payment successful

Refund flow

Refund can be requested after the initial purchase, once the payment is confirmed.

If the refund is requested and approved, the shopper will receive a Refund Confirmation email.

This can happen either after acquiring the subscription for the first time or at the last renewal.

Implement Google Analytics 4 in ConvertPlus and InLine Checkout (with GTM)

Overview

You can implement Google Analytics 4 and Google Tag Manager tracking tools to help you track and monitor your ConvertPlus and InLine checkout orders in order to improve the shopping experience and increase the conversion rate.

Availability

Google Analytics 4 and Google Tag Manager can be set for all 2Checkout accounts.

Google Analytics 4 Settings

Implement Google Analytics 4

To implement Google Analytics 4 through Google Tag Manager (GTM) for your ConvertPlus and InLine Checkout, follow these steps:

  1. In your browser window, navigate to Tag manager → All accounts.
  2. Click on the Create Account button.
    Google analytics via GTM_1.png
  3. Fill in all the required fields:
    • Account Name
    • Country
    • Container name
    • Target platform → Web
  4. Click on the Create button.
  5. Copy the Google Tag Manager Container ID. It will be used in the 2Checkout Control Panel for the Google Tag Manager set-up.
    Google analytics via GTM_2.png

Creating the Google Tag in Google Tag Manager

If you already have a Google Tag in your container that fires on all pages where the Google Tag Manager code is added, then you do not need to create a new Google Tag specifically for 2Checkout and can proceed directly to the next section. However, you need to make sure you add the cookie_flags configuration, described in step 3 below. This configuration is necessary, as the tracking script is placed in an iFrame for ConvertPlus and Inline carts.

  1. Click to create a new tag in Google Tag Manager and select Google Tag from the list pre-defined tags.
    Google tag
  2. In the Tag ID section in Google Tag Manager, enter the Measurement ID. You can find the ID in your Google Analytics 4 with the following steps:

    • Navigate to Admin -> Data Streams.
    • Click on your website property.
    • Copy the measurement ID.

    Measurement ID

  3. In the Fields to set section select the following to add the cookie_flags configuration:
    • For Field Name add cookie_flags
    • For Value add SameSite=None;Secure
  4. In the Triggering section, select All Pages.
    All pages

Sending ecommerce information to Google Analytics 4 from the 2checkout shopping cart

Configure a trigger in Google Tag Manager

In Google Tag Manager, click on the Triggers section and then click to add a new trigger.

Google analytics via GTM_5.png

Create a Custom Event trigger

  1. Name your trigger GA4 Event Ecommerce Trigger.
  2. From the list provided, choose Custom event as Trigger Type.
  3. In the field Event name, type .* and check the box Use RegEx matching.
  4. For the This trigger fires on section, select Some custom events.
  5. As rule, fill in the boxes with Event matches RegEx (Ignore case) begin_checkout|add_to_cart|remove_from_cart|purchase|view_item_list. Those are events in the dataLayer on the format of the GA4 documentation for developers provided by Google.
  6. Click Save.
    GA4 Event Trigger

Configure the tag for GA4 for sending ecommerce data

  1. Click on New to create a new tag that you can call GA4 Event Ecommerce Tag.
  2. From the list provided by Google, select the option Google Analytics: GA4 event as Tag Type.
  3. For Measurement ID, add the measurement ID from the Google Analytics 4 property to which you want to send data. This is normally the same measurement ID that you have in your Google Tag. Once you add the measurement ID from your Google Tag, you will see the message Google Tag found in this container.
  4. For Event Name, select {{Event}}.
  5. Under More Settings -> Ecommerce, click on the Send Ecommerce data checkbox and select Data Layer from the Data Source drop-down list.
    Send Ecommerce Data checkbox
  6. Add as trigger for this tag the previously created trigger for GA4 Event Ecommerce Trigger.
    trigger

Setup Cross-domain measurement in your Google Analytics 4 Admin page

Google Tag Manager code is placed in an iFrame with the domain tracking.avangate.net. In order for Google to recognize that a visitor is the same when entering your website and then entering the shopping cart, you need to setup cross-domain measurement in Google Analytics 4 Admin, according to information provided by Google.

  1. In Admin, click on Data Streams, click on Web and then select your web data stream. In the web stream details, click Configure tag settings (at the bottom). In the Settings  section, click Configure your domains.
    Configure your Domains
  2. Under Include domains that match ANY of the following conditions, choose match type Contains and under Domains, enter the identifier of your domain (ex. yourwebsite.com) and then click Add Condition to add the next domains – tracking.avangate.net and secure.2checkout.com.
    Configuration

Test your Google Analytics 4 Settings with GTM Debugger

To test if your Google Analytics settings are correct, follow the steps below:

  1. Download and install the Tag Assistant Companion browser extension found here.
  2. Click on Preview.
    preview GTM.png
  3. Delete all existing domains.
    delete all domains.png
  4. Click on Add domain.
    add domain.png
  5. Add https://tracking.avangate.net/ and click Start.
    click start.png
  6. Go back to the Google Tag Manager tab but DON’T close the tab with tracking.avangate.local.
    tracking URL.png
  7. Click on X in the top-left corner.
    connecting to avangate.png
  8. In the Tag Assistant tab, click on Add domain.
    add domain tag assisstant tab.png
  9. Enter the buy-link you want to debug and click Start.
    debug buy-link.png
  10. Go back to the Google Tag Manager debugger tab.
    debugger.png
  11. Click on the Enable button behind the Connecting this window to avangate.net pop-up.
    enable popup.png
  12. Click on Continue.
    click continue.png
  13. You are now debugging tracking.avangate.net, but this domain receives tags from the shopping cart.
    debug success.png
  14. Submit and publish your settings.
    Google analytics via GTM_20.png

Checking a purchase in Google Analytics 4

Place an order on the 2checkout shopping cart, using the template which has your Google Tag Manager code.

Log into your Google Analytics 4, go to Monetization -> Ecommerce purchases.

Monetization

You will see the number of purchases for your products and the revenue from your purchases.

Test Product

Control Panel Settings

The Analytics section in your Control Panel allows you to integrate Google Analytics 4 or/and Google Tag Manager(with GA 4) in the ConvertPlus or InLine ordering engines and thus track the behavior of your shoppers on the 2Checkout pages.

Follow these steps to complete your analytics integration:

  1. Log into your Control Panel.
  2. Navigate to SetupOrdering options.
  3. Click on the Analytics tab.
  4. Click on the ConvertPlus and InLine Checkout tab.
    Shopping Cart Web Analytics
  5. In the Google Tag Manager(with GA 4) box, click on Set up and fill in the Google Tag Manager (with GA4) Container ID.
  6. Click Save.
    Google Tag Manager Container ID
  7. Complete the integration by using the slider to activate Google Tag Manager. It is not recommended to activate both Google Analytics 4 and Google Tag Manager to send data to the same Google Analytics 4 property, otherwise, duplicate data will occur.
    Activate GTM using slider

Implement Google Analytics 4 in ConvertPlus and InLine Checkout (without GTM)

Overview 

You can implement Google Analytics 4 without the Google Tag Manager (GTM) to help you track and monitor your ConvertPlus and InLine checkout orders in order to improve the shopping experience and increase conversion rate. 

Availability 

Google Analytics 4 can be set for all 2Checkout accounts. 

Implement Google Analytics 4 in ConvertPlus and InLine Checkout

Follow these steps to implement Google Analytics 4 in ConvertPlus and InLine Checkout: 

1. Navigate to your Google Analytics 4 account

2. Copy your Google Analytics 4 Measurement ID and use it in your 2Checkout Merchant Control Panel to set up Google Analytics 4 for your ConvertPlus and InLine carts. 

3. To get your Google Analytics 4 Measurement ID, go to Google Analytics 4 → Admin → Data Streams → Web → Select your web property. Under Measurement ID you will find the code you need to copy and paste into your Merchant Control Panel

Web Stream Details

 

Cross-domain tracking settings

Google Tag Manager code is placed in an iframe with the domain tracking.avangate.net. In order for Google to recognize that a visitor is the same when entering your website and then entering the shopping cart, you need to setup cross-domain measurement in Google Analytics 4 Admin, according to information provided by Google.  

In Admin, click Data Streams, click Web and then select your web data stream. In the web stream details, click Configure tag settings (at the bottom). In the Settings section, click Configure your domains

Configure your domains

Under Include domains that match ANY of the following conditions, chose match type Contains and under Domain, enter the identifier of your domain (ex. yourwebsite.com) and then click Add Condition to add the next domains – tracking.avangate.net and secure.2checkout.com.

Configurations

Merchant Control Panel Settings

The Analytics section in your Merchant Control Panel allows you to integrate Google Analytics 4 in the ConvertPlus or InLine ordering engines and thus track the behavior of your shoppers on the 2Checkout pages.

Follow these steps to complete your analytics integration:

  1. Log into your  Merchant Control Panel.
  2. Navigate to Setup → Ordering options.
  3. Click on the Analytics tab.
  4. Click on the ConvertPlus and InLine Checkout tab.

 web analytics in Merchant Control Panel_5.png

5.In the Google Analytics box, click on Edit. 

Edit GA4 Box

6. Fill in the Google Analytics 4 Measurement ID and click Save.

 Google Analytics 4 Measurement ID

7. Complete the integration by using the slider to activate Google Analytics 4.

GA4 slider

Checking a purchase in Google Analytics 4 

Place an order on the 2checkout shopping cart, using a ConvertPlus or Inline cart. 

Log into your Google Analytics 4, go to Monetization -> Ecommerce purchases. 

E-Commerce Purchases

You will see the number of purchases for your products and the revenue from your purchases. 

Test Product

 

1. The 2Checkout data layer for Google Analytics 4 tracking is placed in an iFrame. This data layer contains eCommerce information built on the structure required by Google Analytics 4 reporting for the following events: checkout, view item list (for cross-sell products), add to cart (for cross-sell products), purchase and remove from cart.

2. For fully enhanced eCommerce reporting in Google Analytics 4, it is recommended that you send information to Google Analytics 4 from your website that includes for example product views, select product, add to cart. More information on enhanced eCommerce reporting can be found here:  https://developers.google.com/analytics/devguides/collection/ga4/reference/events?client_type=gtag.

Need help?

Do you have a question? If you didn’t find the answer you are looking for in our documentation, you can contact our Support teams for more information. If you have a technical issue or question, please contact us. We are happy to help.

Not yet a Verifone customer?

We’ll help you choose the right payment solution for your business, wherever you want to sell, in-person or online. Our team of experts will happily discuss your needs.

Verifone logo