Docs

Installation

Shopyflow installation takes place in 2 simple steps.

  1. Configuring Shopify
  2. Connecting to Webflow

Configure Shopify

Shopyflow requires a Storefront API access token to securely connect your Shopify Store to your Webflow site. To generate your Store API access token;

  1. Head to your Shopify Admin > Settings > Apps and Sales Channels section and click Develop apps link..

What’s a Rich Text element? What’s a Rich Text What’s a Rich Text element? What’s a Rich Text element?

The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.

What’s a Rich Text element? What’s a Rich What’s a Rich Text element? What’s a Rich Text ejklkjököbömnlement?What’s a Rich Text element? What’s a Rich Text element?

The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.

Shopyflow requires a Storefront API access token to securely connect your Shopify Store to your Webflow site. To generate your Store API access token;

1. Head to your Shopify Admin > Settings > Apps and Sales Channels section and click Develop apps link.

What’s a Rich Text element? What’s a Rich What’s a Rich Text element? What’s a  element?What’s a Rich Text element? What’s a Rich Text element?

The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.

Static and dynamic content editing

A rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel. Voila!

A rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel. Voila!

How to customize formatting for each rich text

Headings, paragraphs, blockquotes, figures, images, and figure captions can all be styled after a class is added to the rich text element using the "When inside of" nested selector system.

Free ON WEBFLOW.IO DOMAINS

Customer Accounts Setup

Customer Accounts Setup

Guide
Before start using the customer accounts Shopyflow requires you to take following steps.

Shopify Storefront data and cart logic is bound to your Webflow elements through Shopyflow attributes. Connecting your Webflow site to Shopify is done by adding custom attributes to your Webflow elements.

Yet, you are not required to type or edit attributes manually. Shopyflow provides you with the pre-configured components needed to create your store, as copyable Webflow elements right in Webflow designer.

All the copyable Shopyflow Components are native editable Webflow elements. There is no layout or styling limitation on any element.

In the below image hover your mouse on the hotspots to see all the required Shopyflow attributes to build a product page like this in Webflow

Webflow designer
Custom Attributes
sf-add-to-cart="1"
Custom Attributes
sf-change-quantity="1"
Custom Attributes
sf-change-option="{Option Name}"
Custom Attributes
sf-cart-count="1"
Custom Attributes
sf-change-option="{Option Name}"
Custom Attributes
sf-product="{Product ID}"
Custom Attributes
sf-show-image="1"
Class name
Target elements
Can be placed anywhere in the site
No items found.
Attribute Name
Attribute Value
True or 1
Nesting Rule
Can be placed anywhere in the site
No items found.
Customer Accounts Setup

① Edit the URLs in the Shopify customer account password reset email template

When your users request a password reset email, the link sent in the email points to your Shopify theme by default. We have to change that link so your users land on your new password reset form in your Webflow site.

1. Head back to your Shopify Admin > Settings > Notifications > Customer and click Customer account password reset.

2. Copy the code snippet below, paste it in the email template as shown in the video below

3. Replace the indicated fields in the code with your own information

IMPORTANT: Make sure that the Webflow/Custom Domain you type below does not have a forward slash at the end of the URL.

{% assign webflowUrl = "https://[YOUR WEBFLOW OR CUSTOM DOMAIN]" %}
{% assign passwordChangePage = "/[PAGE SLUG or PATH]" %}
{% ↑↑↑↑↑↑ CHANGE ↑↑↑↑↑↑ %}

{% ↓↓↓↓↓↓ DONT CHANGE ↓↓↓↓↓↓ %}
{% assign resetUrl = webflowUrl | append: passwordChangePage 
| append: '?token=' | append: customer.reset_password_url %}

4. Next, find the customer.reset_password_url towards the bottom of the same email template. You can use cmd/ctrl + F to find it. Replace the variable (including the customer) with resetUrl variable as shown in the video below.

5. After you save the template, click Preview on the top corner and send a test email to make sure the password change URL is working correctly.

② Edit the URLs in the Shopify customer account invite email template

Next, we need to overwrite the account activation URL in the email template that Shopify uses. This email is sent when a user creates an account in your store with an email address which is attached to a past order. In other words it's sent when a customer who has completed a purchase before decides to create an account later on. The customer will receive an email with an activation link.

1. Head back to your Shopify Admin > Settings > Notifications > Customer and click Customer account invite.

2. Copy the code snippet below, paste it in the email template. Refer to the previous video if needed.

3. Replace the indicated fields in the code with your own information

IMPORTANT: Make sure that the Webflow/Custom Domain you type below does not have a forward slash at the end of the URL.

{% assign webflowUrl = "https://[YOUR WEBFLOW OR CUSTOM DOMAIN]" %}
{% assign webflowAccountActivationPage = "/[PAGE SLUG or PATH]" %}
{% ↑↑↑↑↑↑ CHANGE ↑↑↑↑↑↑↑ %}

{% ↓↓↓↓↓↓ DONT CHANGE ↓↓↓↓↓↓ %}
{% assign activationUrl = webflowUrl | append: webflowAccountActivationPage 
| append: '?token=' | append: customer.account_activation_url  %}

4. Next, find the customer.account_activation_url towards the bottom of the same email template. You can use cmd/ctrl + F to find it. Replace the variable (including the customer) with activationUrl. Refer to the previous video if needed.

5. After you save the template, click Preview on the top corner and send a test email to make sure the activation URL is working correctly.

③ Hide the Navbar and the Footer in your Shopify theme

Lastly, we will hide the navbar and the footer in your Shopify theme's account and subscription pages. This will ensure a seamless user experience for your customers in case they land there (e.g. on the subscription login page). Copy the code snippet below and paste it in the theme.liquid file in Shopify after the as shown in the video below.

{% if request.path contains 'account'
  or request.path contains 'recurring'
  or request.path contains 'subscriptions'
%}
  <style>
    sticky-header, footer {
      opacity: 0!important;
      pointer-events: none!important;
    }
  </style>
{% endif %}

                                                    How to find your theme.liquid file in Shopify

④ Redirect your Shopify theme pages

If you haven't already, you should also prevent your customers from accessing your Shopify theme's pages by adding the following snippet to your theme.liquid file. The following code will redirect anyone coming to your Shopify Theme when thorugh e.g. clicking on your store's name in an email or clicking on your brand logo in Shopify's checkout. Refer to the video in Step 3 to learn how to find your theme.liquid file, if needed.

{% if request.host == 'shopyflow-demo.myshopify.com' %} 
  <script>

      const webflowDomain = 'shopyflow.com';
      
      // ↑↑↑↑↑↑↑↑↑↑↑↑↑↑  Change these two ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
    
      const domain = webflowDomain.replace(/http(s)?(:)?(\/\/)?|(\/\/)?(\/+$)?/g, '');
      const newBaseUrl = `https://${domain}`;
      const queryParams = new URLSearchParams(window.location.search);
      let newUrl = newBaseUrl;
      if(queryParams.size > 0) {
      newUrl += '?';
      queryParams.forEach((value, key, idx) => {
        newUrl += `${key}=${value}&`;
        });
      }
      newUrl = newUrl.endsWith('&') ? newUrl.slice(0, -1) : newUrl;
      window.location.href = newUrl;
  </script>
{% endif %}

You’re all set. Now head to your Webflow project and follow the next step to finish up your customer pages setup.

⑤ Verify the Shopyflow installation code snippet

Next make sure your Shopyflow installation is above version 1.0.0 and the snippet includes following attributes:

1. customer-accounts="true" - Enables the customer accounts functionality.

2. login-page="[LOGIN PAGE SLUG]" - Sets the Login Page slug

3. account-activation-page="[ACCOUNT ACTIVATION PAGE SLUG]"

4. account-page="[ACCOUNT PAGE SLUG]" - Sets the Account Page Template slug

5. password-reset-page="[PASSWORD RESET PAGE SLUG]" - Sets the Password Reset Page slug

Don't forget to replace the indicated fields with your own information.


<!-- Shopyflow Engine -->
<script defer
sf-token="[STOREFRONT API KEY]"
sf-domain="[SHOPIFY STORE DOMAIN]"
src="https://cdn.shopyflow.io/[VERSION]/shopyflow.js"
customer-accounts="true"
login-page="[LOGIN PAGE SLUG]"
account-activation-page="[ACCOUNT ACTIVATION PAGE SLUG]"
account-page="[ACCOUNT PAGE SLUG]"
password-reset-page="[PASSWORD RESET PAGE SLUG]"></script> 

Do NOT add a second Shopyflow code snippet to your Webflow site or use an example code snippet (like the one above) directly. Update your existing Shopyflow code snippet instead.

⑥ Create the customer account pages

Lastly, follow this guide to create the required account pages.

Webflow app usage

Webflow app settings

Component contents

Available methods

No items found.

Guide

contents

No items found.

State management

No items found.

Related utilities

No items found.
Can't find a solution? Join our Discord server to get an instant reply from our experts and the community.