Intelligems Docs
  • Welcome to Intelligems
  • Getting Started
    • Getting Started
    • Adding Intelligems Script to your Theme
    • Updating the Intelligems Script
    • Common Use Cases
      • Price Test Common Use Cases
        • The Straddle
        • The Double Down
        • The Strikethrough
        • The Great Discount Debate
        • Savings Showdown: Volume Discount vs. Price Discount
      • Shipping Test Common Use Cases
        • The Flat Fee Face Off
        • The Threshold Trials
      • Content Test Common Use Cases
        • Landing Page Testing
        • Testing a Brand New Theme
        • Testing Different Imagery
        • Testing Cart Elements
        • Testing Announcement Bar Text
        • Navigation Menu
        • Testing Checkout Blocks
      • Offer Test Common Use Cases
        • The Volume Discount Duel
        • Gifting Games
    • Best Practices
      • 🧪Test Design Best Practices
      • ✅Best Practices During a Test
    • General FAQs
  • Price Testing
    • Price Testing - Getting Started
    • Price Testing Integration Guides
      • Integration Guide using Shopify Functions
        • Step 1: Add Intelligems JavaScript
        • Step 2: Tag product prices
        • Step 3: Update your cart
        • Step 4: QA your integration, and publish your changes
      • Integration Guide using Checkout Scripts
        • Step 1: Add Intelligems JavaScript
        • Step 2: Tag product prices
        • Step 3: Add the Checkout Script
        • Step 4: Update your cart
        • Step 5: QA your integration, and publish your changes
      • Integration Guide using Duplicate Products
        • Step 1: Add Intelligems JavaScript
        • Step 2: Tag product prices
        • Step 3: Hide duplicate products from collections pages
        • Step 4: Configure duplicate products
        • Step 5: QA your integration, and publish your changes
      • Troubleshooting
        • How to Add the data-product-id and/or data-variant-id Attribute to an Element
      • Replo Page Builder
    • How to Set Up a Price Test
    • Price Test QA Checklist
    • Starting a Price Test
    • Ending a Price Test
    • Testing Prices with Subscriptions
      • Testing Prices with Recharge 2.0 or Stay.Ai
      • How to Set Up a Price Test using Duplicate Products and Recharge Subscriptions
      • How to Set Up a Price Test using Duplicate Products and Skio Subscriptions
      • Managing Duplicate Products when Redirecting to Duplicate PDPs
    • Multi-Currency Testing
    • Price Testing FAQs
  • Shipping Testing
    • Shipping Testing - Getting Started
    • How to Set Up a Shipping Test
    • Shipping Test QA Checklist
    • Starting a Shipping Test
    • Ending a Shipping Test
    • Shipping Progress Bar Integration
    • Shipping Testing FAQs
  • Content Testing
    • Content Testing - Getting Started
      • How to Set Up a Split URL Test
      • How to Set Up an Onsite Edits Test
      • How to Set Up a Template Test
      • How to Set Up a Theme Test
      • How to Set Up a Test using our JavaScript API
    • Content Test QA Checklist
    • Ending a Theme Test
    • Content Testing FAQs
  • Personalizations
    • Personalizations - Getting Started
    • Personalization Modifications
      • Offer Modifications
      • Progress Bars
      • Offers: Integrating Widgets
      • Offers: Running a Large Number of Offer Personalizations with Shopify Functions
      • Theme Personalization Precautions
    • Targeting Personalizations
    • Targeting Modes for Personalizations
    • Previewing Personalizations
    • Testing Offer Personalizations
    • Offers Limits
    • Offer Combinations
    • Scheduling Personalizations
    • Rolling Out Tests
    • Personalizations FAQs
  • General Features
    • Targeting
      • Audience Targeting
      • Currency Targeting
      • Page Targeting
      • Mutually Exclusive Experiments
      • Targeting FAQs
    • Onsite Editor
    • Image Onsite Editor
    • CSS and JavaScript Injection
  • Analytics
    • Overview
      • How orders and sessions are attributed to experiments
      • Order and revenue accounting
      • How experiment targeting affects analytics
    • Analytics FAQs
    • Metric Definitions
      • Revenue
      • Conversion Funnel
      • Profit
      • Subscriptions
    • Filters
    • Statistical Significance
    • Timeseries
    • Custom Events
      • Overview
      • CSS Selectors
      • Scoping to specific pages
      • Custom Javascript Events
      • Testing Custom Events
      • Using custom events in experiment analytics
    • How to Add Profit to Intelligems Analytics
    • How to Add Product Groups to Intelligems Analytics
    • Tagging Orders by Test Group in Shopify
    • Exporting Data
    • Data Sharing
  • Performance Optimization
    • Site Performance
    • Optimizing Your Price-Test Integration
    • Anti-Flicker Modes
    • Edgemesh
  • Integrations
    • Google Analytics 4 Integration
    • Amplitude Integration
    • Heap Integration
    • Segment Integration
    • Heatmap Integrations
      • Integrating with Microsoft Clarity
      • Integrating with Heatmap.com
      • Integrating with HotJar
    • Navidium Testing
  • Developer Resources
    • Javascript API
      • User Object
      • Price Object
      • Campaigns Object
        • campaigns.getAll()
        • campaigns.getGWP(options)
        • campaigns.setHistoryStatus(params)
    • Intelligems Theme Snippets
    • Advanced Settings
    • Cart Permalinks
    • Targeting By Customer Parameters
    • Custom Add to Cart and Order Completed Events
Powered by GitBook
On this page
  • Intercept ATC XHR​
  • Currency Format​
  • Currency Format Structure:
  • Currency Format Example
  • Currency Function​
  • Custom Currency Function

Was this helpful?

  1. Developer Resources

Advanced Settings

There are a few advanced settings located within the Intelligems app. This article will walk you through what those are, and how to set them up.

PreviousIntelligems Theme SnippetsNextCart Permalinks

Last updated 11 months ago

Was this helpful?

The advanced settings are located in the Settings page of the Intelligems App. If you do not see this in your app, please reach out to our support team to receive access to this section of the settings page.

Intercept ATC XHR

By default, this is turned on in order to correctly change your prices using checkout scripts. When a user presses 'Add to Cart' with this setting on, the XHR script sent from the site to Shopify is intercepted and modified by Intelligems before sending to Shopify.

Currency Format

Specifies format for how currencies are displayed on your website. When editing this field, make sure to press 'Validate' before pressing Save Configurations.

Currency Format Structure:

{
    "options": {
      "localeMatcher": "string",
      "style": "string",
      "currency": "string",
      "currencyDisplay": "string",
      "currencySign": "string",
      "useGrouping": boolean,
      "minimumIntegerDigits": number,
      "minimumFractionDigits": number,
      "maximumFractionDigits": number,
      "minimumSignificantDigits": number,
      "maximumSignificantDigits": number,
    }, 
    "symbol": "string",
    "suffix": "string",
    "removeTrailingZeros": boolean,
}

Currency Format Example

{
    "options": {
        "minimumFractionDigits": 0,
    }, 
  "symbol": "$",
  "suffix": " USD",
}

Specifies which currency function to use when adding our prices to your site. If you use a standard formatMoney function in your window.theme object (i.e. window.theme.Currency.formatMoney), you can insert that into this field like this: window.theme.Currency.formatMoney. You can also create a custom formatMoney function in your theme.liquid file.

Custom Currency Function

<head>
    ...
    <script>
        try {
          window.igCurrencyFn = (price) => {
            let code = "USD";
            const value = `; ${document.cookie}`;
            const parts = value.split(`; cart_currency=`);
            if (parts.length === 2) {
              code = parts.pop().split(";").shift();
            }
    
            const formatter = new Intl.NumberFormat("en-US", {
              style: "currency",
              currency: code,
            });
    
            return `<span class=money>${formatter.format(price/100)} ${code} </span>`;
          };
        } catch (error) {
          console.log(error);
        }
    </script>
    ...
</head>

See documentation for more information on the options object.

Currency Function

here
​
​
here
​