LogoLogo
Manifold for Developers
Manifold for Developers
  • Introduction
  • Shopify Merch Bridge
    • Overview
    • Tutorial
      • Step 1: Product Gate Setup
        • 1.1: Configure the Product
        • 1.2: Install Manifold Merch Bridge
        • 1.2: Create a New Product Gate
        • 1.3: Link a Product to the Gate
        • 1.4: Add Rules
      • Step 2: Store Theme Setup
        • 2.1 The Theme Editor
        • 2.2 Product Page Setup
        • 2.3 Cart Page Setup
    • Advanced Configuration
    • FAQ / Error Help
    • Reference
      • Product and Gate Configuration
        • Shopify Products
        • Product Gates
          • Gate Products
          • Rules
      • Custom Themes
      • Updating to the Latest Version
      • UI Configuration Options
      • Advanced Usage
      • Common Issues
  • Guides
    • Getting Started
    • HTML
    • React
    • NextJS
    • Vue
    • Wix
    • Squarespace
      • Simple Squarespace Site
      • Customised Squarespace Template
  • Resources
    • Apps
      • Grant Types
    • Widgets
      • Directory
      • Manifold CSS Variables
        • Scheme Utility Classes
        • List of Manifold CSS Variables
      • Connect Widget
        • Blockchain Interaction
        • Wallet Authentication
        • Data Client
          • NFT Information Retrieval
            • getNFT
            • getNFTsOfOwner
            • ownerHasNFT
            • getCollectors
          • Data Storage and Retrieval
        • Advanced Configuration
        • Customization & Styling
        • Automatic Error Handling
      • Campaign Widget
        • Campaign Creation
          • Questionnaire
        • Campaign Progress
        • Customization & Styling
      • Curation Widget
      • Marketplace Widgets
        • Widgets
          • Data Attributes
          • Layout Widgets
          • Card Widgets
          • Listing Widgets
        • Window Events
        • Troubleshooting
        • Customization & Styling
        • Version Change Notes
          • 3.2.1 - CSS Selector Changes
          • 3.1.1 - CSS Selector Changes
      • Claim Widgets
        • Widgets
          • Data Attributes
          • Complete Claim Widget
          • Buy Button Only Widget
          • Mint Count Widget
        • Troubleshooting
        • Customization & Styling
        • Version Change Notes
          • 1.7.0, 1.7.1 - CSS Selector Changes
      • Restricted Token Widget
        • Customization & Styling
      • Wallet Identity Widget
        • Customization & Styling
      • Subscription Widget
      • 6551 Display Widget
    • Manifold Ethereum Provider
  • Tools and APIs
    • Merkle Tree Tool
    • Snapshot Tool
    • Discord Tools
    • Server-Side Session Authentication
      • Signature Grant
      • Authorization Code Grant
  • Smart Contracts
    • Manifold Creator
      • Contracts
        • Creator Core
          • Common Functions
          • ERC721 Functions
          • ERC1155 Functions
        • Extensions
          • Extensions Functions
          • Extensions Examples
          • Extensions Deployment Guide
            • Dynamic NFT Extension
            • Lazy Mint Extension ERC1155
            • Lazy Mint Extension ERC721
        • Mint Permissions
          • Mint Permissions Functions
      • Prior Versions
        • 1.0.x
          • Creator Core
            • Common Functions
            • ERC721 Functions
            • ERC1155 Functions
          • Extensions
            • Extensions Functions
            • Extensions Examples
            • Extensions Deployment Guide
              • Dynamic NFT Extension
              • Lazy Mint Extension ERC1155
              • Lazy Mint Extension ERC721
          • Mint Permissions
            • Mint Permissions Functions
        • 2.0.x
          • Creator Core
            • Common Functions
            • ERC721 Functions
            • ERC1155 Functions
          • Extensions
            • Extensions Functions
            • Extensions Examples
            • Extensions Deployment Guide
              • Dynamic NFT Extension
              • Lazy Mint Extension ERC1155
              • Lazy Mint Extension ERC721
          • Mint Permissions
            • Mint Permissions Functions
    • Marketplace
      • Identity Verifier
    • Royalty Registry
  • Contact Us
Powered by GitBook
On this page
  • Network, Contract Address and Audience Selection
  • Attribute Filtering Explained
  • Discount Value
  • Completed Rule

Was this helpful?

  1. Shopify Merch Bridge
  2. Tutorial
  3. Step 1: Product Gate Setup

1.4: Add Rules

Now that we have created the gate and linked a product to it, we will create rules on the product gate. This is setting who will be on the allowlist to get the discount for your product

Last updated 2 months ago

Was this helpful?

Here we'll indicate what groups of NFT holders will get what discount or access for this gate.

Click on the green "Add Rule" button to add a rule.

Network, Contract Address and Audience Selection

First select the Network. Currently we support the following networks:

  • Ethereum Mainnet

  • Optimism

  • Polygon

  • Base

  • Sepolia

Now that we've got the contract address loaded in we can select from the following:

  • All tokens: Selecting this option will make holders of any token of the specified contract eligible for redemption. This is great for giving access to "all Cool Cats" or "all holders of my artwork".

  • Select individual token: Selecting this option will make holders of a single specific token on the specified contract eligible for redemption. For example, I can specify that only token #11 from contract 0x123... is eligible.

  • Filter by token id range: Selecting this option will allow you to specify a "Minimum" and "Maximum" token ID to indicate a range of eligible tokens. For example, if I were to put "1" and "100" as inputs for this contract, Cool Cats #1 - #100 would only be eligible (Token ID).

  • Filter by attribute: Selecting this option will allow gating based on specific NFT attributes, even required sets of specific attributes. For example, with my Cool Hat! product I want to ensure only those Cool Cats NFTs that also wear the same hat have access to it (those with the attribute hats: hat white).

Attribute Filtering Explained

To select an attribute (or a combination of attributes that must be necessary) click in the "Search attributes" box and the selection of available attributes will populate. For some projects with many attributes (like PFPs) the set of attributes might take a moment to load. If you are not seeing the correct set of attributes double check the submitted contract address. If that's correct try hitting the "Refresh metadata" button.

Check all the attributes you want to add to the rule. Note that if you select multiple attributes, then the NFT will need to have all of those attributes to receive the discount. (Ex: If I selected both hats: hat white AND body: blue cat skin) then only holders of Cool Cats with BOTH those attributes would get my discount.

If you want to provide the discount to Either holders of Cool Cats with attribute hats: hat white OR body: blue cat skin you will create 2 seperate rules.

Discount Value

Lastly, select the Discount percentage or dollar amount you want to apply to this rule.

Click "Add" when complete to configure the rule!

Completed Rule

You'll see the rule gets added as a line item to the "Rules" table with details of contract, restriction (all contract tokens, range, or attributes), restriction details, and the desired discount percent for this group of holders.

Congrats! You have setup all the behind the scenes data for your Product Gate. In the next step we will add App Blocks to your Store's Theme to provide the UX components that your customers will interact with.

Then enter in the contract address of the NFT collection in the "Contract address" field. For example, I know I want to use Cool Cats for these Cool Hats! so I'm selecting inputting 0x1A92f7381B9F03921564a437210bB9396471050Cinto the form with ethereum (mainnet) as the network. Contract addresses can be obtained by finding the official collection pages for projects on marketplaces like and finding the for the project's contract.

OpenSea
Etherscan link
First select the Network and then enter the contract address
You can create allowlist on a full contract, specific token IDs, or on NFT Attributes
Select the attributes you want on the rule then hit "Add". Remember if multiple are selected only tokens that have all of the attributes selected will have access to your discount on this rule.
Make sure to set the discount (either as a percentage of the product's price or a fixed $ amount)
What a configured rule will look like