Copy your License Key.








Step 2: Activate Your License in WordPress




Log in to your WordPress dashboard.



Go to WooCommerce &gt; Modern Cart.



Click on the My Account tab.



Paste your License Key into the provided field.



Click the Activate License button.








Troubleshooting License Activation Issues



If you’re facing problems while activating your license, refer to this document for detailed troubleshooting steps: Troubleshooting License Activation Issues";s:3:"url";s:56:"https://cartflows.com/docs/activate-modern-cart-license/";s:4:"slug";s:28:"activate-modern-cart-license";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-10-16T21:51:09+05:30";s:8:"category";a:1:{i:0;s:27:"modern-cart-for-woocommerce";}}i:76;O:8:"stdClass":8:{s:2:"id";i:58078;s:5:"title";s:42:"How to Install Modern Cart for WooCommerce";s:7:"content";s:1474:"This documentation explains how to install the Modern Cart for WooCommerce plugin on your website. You can install the plugin by downloading it from your account and uploading it to your WordPress site.



Note
To use Modern Cart for WooCommerce, the Modern Cart Starter plugin must also be installed and activated. Refer to this doc to learn how to install Modern Cart Starter.




Steps to Install Modern Cart for WooCommerce



Step 1: Go to Your Account and Click on Your Products



In your account page, go to Your Products to view all your purchased products.







Step 2: Download Modern Cart for WooCommerce



Click Download to start the .zip file download.







Step 3: Log in to Your WordPress Website



When you log in, you will be in your Dashboard.



Step 4: In the Plugins Menu, Click on Add New Plugin



Go to Plugins &gt; Add New Plugin from the WordPress menu.







Step 5: Click Upload Plugin at the Top of the Screen



The screen will expand with the option to upload a plugin.







Step 6: Upload the Plugin and Click Install Now



Click Choose File, select the downloaded .zip file, and then click Install Now to begin the installation.







Step 7: Click Activate Plugin



Once the plugin is installed, click Activate Plugin to complete the installation.







What’s Next?



Make sure to activate your license key to start using the plugin and receive plugin updates. Click here to learn how to activate your Modern Cart license.";s:3:"url";s:50:"https://cartflows.com/docs/installing-modern-cart/";s:4:"slug";s:22:"installing-modern-cart";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-01-22T14:08:16+05:30";s:8:"category";a:1:{i:0;s:27:"modern-cart-for-woocommerce";}}i:77;O:8:"stdClass":8:{s:2:"id";i:56555;s:5:"title";s:34:"How to Claim Access to OttoKit Pro";s:7:"content";s:486:"If you purchase CartFlows Pro, you will receive OttoKit Pro as a bonus product. This documentation explains how you can claim access based on your purchase.



Claiming Your OttoKit Pro Access



To claim your OttoKit Pro subscription:




Log in to your CartFlows account.



Go to the Your Products section from the sidebar.



Click on the Redeem Now button.



After a few minutes, you will receive an email from OttoKit with your account details.








Frequently Asked Questions";s:3:"url";s:62:"https://cartflows.com/docs/how-to-claim-access-to-ottokit-pro/";s:4:"slug";s:34:"how-to-claim-access-to-ottokit-pro";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-04-08T15:18:19+05:30";s:8:"category";a:1:{i:0;s:13:"account-store";}}i:78;O:8:"stdClass":8:{s:2:"id";i:55419;s:5:"title";s:47:"How to Rollback to a Previous CartFlows Version";s:7:"content";s:1437:"In this documentation, we'll explain how to use the new Rollback Feature in CartFlows. This feature allows you to revert to a previous version of the CartFlows plugin in case you encounter any issues after an update.



How to Use the Rollback Feature



To use the Rollback feature in CartFlows, follow the steps below.



1. Navigate to the CartFlows SettingsGo to CartFlows > Settings.



2. Locate the Version Control SectionIn the Settings window, find the Version Control section on the sidebar. This section allows you to revert to a previous version of the CartFlows plugin.







3. Select the Version to RollbackIn the Version Control section, you will see a dropdown menu listing the previous versions of CartFlows. Select the version you want to revert to.







4. Click RollbackAfter selecting the desired version, click the Rollback button. The plugin will automatically revert to the selected version.







5. Confirm and Return to Plugins PageOnce the rollback process is complete, you will see a confirmation message. Your CartFlows plugin is now reverted to the selected version. Click the Go to Plugins page link to return to the Plugins page.







Note
Backup Your Site: Before performing a rollback, it is recommended to take a full backup of your website to avoid any data loss.Compatibility: Ensure that the version you are rolling back to is compatible with your current WordPress and WooCommerce versions.";s:3:"url";s:66:"https://cartflows.com/docs/rollback-to-previous-cartflows-version/";s:4:"slug";s:38:"rollback-to-previous-cartflows-version";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-04T18:42:09+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:79;O:8:"stdClass":8:{s:2:"id";i:55392;s:5:"title";s:24:"How to Install CartFlows";s:7:"content";s:1205:"Thank you for choosing CartFlows for your website! In this documentation, we’ll explain how to install the CartFlows plugin on your WordPress website. If you are looking for instructions on how to install the CartFlows Pro plugin, we have a separate document.



How to install CartFlows



To install the free CartFlows plugin on your WordPress site, follow the steps below.



Step 1: Log in to your WordPress website



When you log in, you will be in your Dashboard.



Step 2: In the Plugins menu, click on Add New Plugin



From your WordPress dashboard, go to Plugins &gt; Add New Plugin to open the plugin installation screen.







Step 3: Search for CartFlows



In the search bar, search for CartFlows.







Step 4: Click Install Now



In the WooCommerce Checkout &amp; Funnel Builder by CartFlows card, click Install Now.







Step 5: Click Activate



Once the installation has finished, click Activate.







Congratulations! You’ve successfully installed the CartFlows plugin on your website. You can now go and configure the plugin.



How do I use CartFlows?



Want to start using CartFlows immediately? Check out the overall CartFlows guide to get the most out of the plugin!";s:3:"url";s:57:"https://cartflows.com/docs/how-to-install-cartflows-free/";s:4:"slug";s:29:"how-to-install-cartflows-free";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-12-25T17:10:06+05:30";s:8:"category";a:1:{i:0;s:20:"installation-updates";}}i:80;O:8:"stdClass":8:{s:2:"id";i:54534;s:5:"title";s:51:"How to Enable Snapchat Pixel Tracking in CartFlows?";s:7:"content";s:1390:"CartFlows v2.1.0 now includes native integration for Snapchat Pixel, enabling you to track user actions and optimize your Snapchat ad campaigns effortlessly. This article provides a step-by-step guide to setting up and using Snapchat Pixel in CartFlows



Let's get started.



Pre-requisites –



There are few Pre-requisites like –




You need to create a Snapchat ADs account.. Haven't Setup yet? – follow the steps here



Next, you need to get the Snapchat ID, follow the steps here.



Copy the Snapchat ID, you will need to paste it in the CartFlows Settings




Steps to Add Snapchat Pixel ID in the CartFlows Settings –



Step 1: From your WordPress dashboard, go to CartFlows &gt; Settings &gt; Integrations











Step 2: Scroll down to the Snapchat Pixel Settings and enable the option – Enable for CartFlows pages.











Step 3: Now, you will see a field to insert the Snapchat pixel ID. You can paste your Snapchat ID there.







After adding the pixel ID you can enable the option to add the Snapchat Tracking code to enable the Snapchat Tracking Code on the whole website.



Step 4: Next, you can enable the Events which CartFlows provides, they are –




Begin Checkout



Add To Cart



Add Payment Info



Purchase



Subscribe



Optin Lead








Step 5: Just Save the Changes and you have successfully added Snapchat Pixel for the CartFlows.";s:3:"url";s:50:"https://cartflows.com/docs/snapchat-pixel-support/";s:4:"slug";s:22:"snapchat-pixel-support";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-04-29T18:37:10+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:81;O:8:"stdClass":8:{s:2:"id";i:54523;s:5:"title";s:51:"How to Enable Pinterest Pixel Tracking in CartFlows";s:7:"content";s:1236:"CartFlows lets you connect your funnels with Pinterest Pixel to measure conversions and optimize your Pinterest ad campaigns. By adding your Pinterest Tag ID, you can track key actions like checkout, purchase, and opt-in directly within your funnel steps.



This documentation explains how to set up and enable Pinterest Pixel tracking in CartFlows.



Prerequisites



Before you begin, make sure you have:




A Pinterest Business account. Learn how to create one here.



Your Pinterest Tag ID. Find your Tag ID here.




How to Enable Pinterest Pixel Tracking



1. Go to CartFlows > Settings > Integrations tab on the sidebar.







2. Add your Pinterest Tag ID into the field provided.







3. (Optional) Enable the toggle to add Pinterest tracking code across your entire website.







4. Enable the Consent Notice option.







This displays a short notice on the frontend for users, as required by Pinterest before events can be tracked.







5. Choose the events you want to track. CartFlows supports the following:




Begin Checkout



Add to Cart



Add Payment Info



Purchase



Signup



Opt-in Lead








Once you’ve saved your settings, Pinterest Pixel tracking will be active for your CartFlows funnels.";s:3:"url";s:51:"https://cartflows.com/docs/pinterest-pixel-support/";s:4:"slug";s:23:"pinterest-pixel-support";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-27T16:46:54+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:82;O:8:"stdClass":8:{s:2:"id";i:54093;s:5:"title";s:48:"How to Enable TikTok Pixel Tracking in CartFlows";s:7:"content";s:1436:"CartFlows supports TikTok Pixel tracking to help you measure conversions and optimize your ad campaigns. This feature allows you to track important user actions such as checkout, purchases, and opt-ins directly within your CartFlows funnel steps.



By adding your TikTok Pixel ID, you can connect your website activity with your TikTok Ads Manager and gain better insights into performance.



Prerequisites



Before enabling TikTok Pixel tracking in CartFlows, make sure you have:




A TikTok Ads Manager Account. Create one here.



A TikTok Pixel ID.




How to Enable TikTok Pixel Tracking



1. Go to CartFlows &gt; Settings &gt; Integrations.



2. Scroll down to the TikTok Pixel tab and enable the toggle to activate TikTok tracking on CartFlows pages.







3. Enter your TikTok Pixel ID in the field.







4. (Optional) Enable the toggle to add TikTok tracking code across your entire website.







5. Choose the events you want to track. CartFlows supports the following:




Begin Checkout



Add To Cart



View Content



Add Payment Info



Purchase



Optin Lead








After saving your settings, TikTok Pixel tracking will automatically start working across your CartFlows funnels.



How to Verify TikTok Pixel Tracking



You can confirm your TikTok Pixel setup using the TikTok Pixel Helper Chrome extension. This extension will show whether the pixel is firing correctly on your checkout and funnel pages.";s:3:"url";s:48:"https://cartflows.com/docs/tiktok-pixel-support/";s:4:"slug";s:20:"tiktok-pixel-support";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-26T20:12:10+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:83;O:8:"stdClass":8:{s:2:"id";i:54196;s:5:"title";s:36:"CartFlows Bricks Builder Integration";s:7:"content";s:3316:"CartFlows 2.1.0 introduces full integration with Bricks Builder. This integration allows you to design and customize every step of your sales funnels—including Opt-in, Checkout, Thank You, Upsell, and Downsell—directly within Bricks Builder.



Key Features of Bricks Builder Integration




Enhanced Design Flexibility: Customize funnel layouts directly without the need for additional tools.



Dynamic Content Tags: Display relevant product information throughout your funnels using dynamic tags.



Pre-Configured Options: Utilize ready-made design options for upsell and downsell steps to streamline the setup process.




These features enable you to create high-converting, branded sales funnels in WordPress with ease.



How to Enable Bricks Builder for CartFlows



To start using Bricks Builder with CartFlows, follow these steps to enable it as your default editor:




Access CartFlows Settings: From your WordPress dashboard, navigate to CartFlows &gt; Settings.



Enable Bricks Builder:

In the General tab, locate the Builder Settings section.



Select Bricks Builder as your default page builder for CartFlows.





Save Changes: Click Save to apply your settings.








After these steps, Bricks Builder will be available as the primary editor for designing CartFlows steps. You can now customize each step of your funnel using Bricks Builder’s robust tools.



CartFlows Widgets for Bricks Builder



With Bricks Builder enabled, you have access to dedicated CartFlows widgets to customize each part of your funnel:




Opt-in Step: Design a customized opt-in page for lead collection by adding dynamic fields and engaging elements.



Checkout Step: Create a branded checkout experience by incorporating custom elements and interactive features.



Thank You Step: Personalize your Thank You page with tailored messages, suggested next steps, or additional product recommendations.



Upsell and Downsell Steps: Use dedicated widgets to build upsell and downsell pages. Customize accept/reject buttons and display relevant product information to create a seamless user experience.








Dynamic Content Tags



The integration introduces dynamic content tags, letting you insert personalized data within each funnel step. Examples include:




Product Information:

Product Title: Displays the name of the product.



Product Description: Provides detailed product information.



Product Price: Shows the current product pricing.



Product Quantity: Indicates the number of products, which is useful for bundles.



Product Variation: Displays options such as size or color.





Next-Step Button: Guides users to the subsequent step in the funnel with a clear call-to-action.



Accept/Reject Buttons: Particularly useful in upsell and downsell scenarios, these buttons allow users to quickly respond to offers.








Using these dynamic tags, you can tailor the checkout experience to each user, enhancing both functionality and personalization.



Fixed Layout Options for Upsell and Downsell Steps



CartFlows offers pre-configured layouts for upsell and downsell pages within Bricks Builder. These fixed layouts are designed for quick setup and consistency, ensuring your additional offers are presented in an optimized and cohesive manner.







Frequently Asked Questions";s:3:"url";s:65:"https://cartflows.com/docs/cartlflows-bricks-builder-integration/";s:4:"slug";s:37:"cartlflows-bricks-builder-integration";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-05T20:38:11+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:84;O:8:"stdClass":8:{s:2:"id";i:54198;s:5:"title";s:32:"OttoKit Integration in CartFlows";s:7:"content";s:2186:"CartFlows now offers a seamless OttoKit integration, allowing WooCommerce store owners to automate tasks and enhance customer engagement. With this integration, you can set up workflows to track specific actions like opt-ins, upsell responses, or downsell interactions, all directly from your CartFlows dashboard. This helps with targeted marketing, CRM updates, and triggering emails based on user activity without the need to switch between different tools.



What is OttoKit?



OttoKit is an automation platform that connects multiple apps and simplifies workflows by triggering actions based on specific events.



Visit OttoKit website



How to Use OttoKit Integration



Step 1: Access Automation Menu



In your CartFlows Settings, locate the new Automations menu under Integrations and Extensions.







Step 2: Install or Access OttoKit



If OttoKit is not yet installed, you can do so from the Automations tab. If it’s already installed, click Create Workflow to start.







Step 3: Configure Workflow for Funnel Steps



To create workflows for specific funnel steps like Checkout, Upsell, or Downsell:



1: Open the funnel editor and select the step you want to automate.







2: Click Automation to open the OttoKit window for that step.







Pro Tip: Workflows created here will also appear in your OttoKit account. Any updates will sync automatically between CartFlows and OttoKit.



Example: Add Users Who Declined an Upsell to Google Sheets



1: In OttoKit, create a workflow using CartFlows as the app and select Upsell Declined as the trigger event.







2: Connect OttoKit to CartFlows. For guidance, refer to OttoKit WordPress Integration.







3: In the Configure tab, select your funnel and the upsell step.







4: Test the connection by clicking Fetch Data, then click Save.







5: Choose your action app—here, select Google Sheets.







6: Connect Google Sheets, choose the action Add New Row, and select your spreadsheet and worksheet.











7: Test the connection using Test Action, then activate the workflow.







Now, each time a user declines the upsell, their information is automatically added to your Google Sheets.";s:3:"url";s:60:"https://cartflows.com/docs/ottokit-integration-in-cartflows/";s:4:"slug";s:32:"ottokit-integration-in-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-06-03T18:20:03+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:85;O:8:"stdClass":8:{s:2:"id";i:54200;s:5:"title";s:58:"CartFlows Instant Layout for Checkout &amp; Thank You Step";s:7:"content";s:945:"CartFlows offers an Instant layout for Checkout and Thank you steps designed for a quick and seamless purchase experience. This layout features a clean and minimal user interface, optimized for selling items like e-books, music, and other digital goods. It removes unnecessary distractions and skips the need for page builders, offering a fast and simple checkout process.



This layout includes a modern, conversion-focused design with essential customization options. It's ideal for users who want a straightforward solution that integrates seamlessly with their existing CartFlows funnels or store checkout.



How to Setup Instant Layout



Step 1: Go to the funnel in which you would like to enable the Instant Layout.







Step 2: Click the Funnel Settings button (cog icon) in the top-right corner of the screen.







Step 5: Navigate to the Instant Layout section on the sidebar and enable the toggle to activate the Instant layout.";s:3:"url";s:52:"https://cartflows.com/docs/cartflows-instant-layout/";s:4:"slug";s:24:"cartflows-instant-layout";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-04-30T21:33:21+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:86;O:8:"stdClass":8:{s:2:"id";i:54153;s:5:"title";s:77:"How to Fix Blank Page Issue When Importing CartFlows Templates with Elementor";s:7:"content";s:1172:"If you are importing CartFlows Elementor templates and encounter a blank page, don’t worry this guide will help you resolve it.



This issue happens because CartFlows’ updated Elementor templates are built using Flexbox and Grid Containers, which are not enabled by default in Elementor. These layout features improve responsiveness and flexibility, but if disabled, Elementor cannot render the templates, resulting in a blank page when importing or editing them.



How to Fix the Blank Page Issue



To resolve the problem, enable the Flexbox and Grid Container features in Elementor:




Log in to your WordPress dashboard.



Go to Elementor > Settings.



Open the Features tab.



Enable the Container option.








After enabling this feature, your templates should display correctly.



For more details, you can also check Elementor’s article on experimental features: Elementor Experiments



What to Do if the Issue Persists



If enabling Container option doesn’t fix the issue:




Update Elementor and CartFlows to the latest versions.



Clear your browser cache and refresh the page.



If the problem continues, please contact our support team.";s:3:"url";s:104:"https://cartflows.com/docs/how-to-fix-the-blank-page-issue-when-importing-cartflows-elementor-templates/";s:4:"slug";s:76:"how-to-fix-the-blank-page-issue-when-importing-cartflows-elementor-templates";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-10-15T21:47:28+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:87;O:8:"stdClass":8:{s:2:"id";i:54122;s:5:"title";s:43:"How to Enable Google Ads Pixel in CartFlows";s:7:"content";s:1816:"CartFlows supports Google Ads Pixel tracking to help you measure conversions and optimize your campaigns. This feature enables you to track key user actions such as checkouts, purchases, and opt-ins directly within your CartFlows funnel steps.



By adding your Google Ads Conversion ID and Label, you can connect website activity with your Google Ads campaigns, giving you valuable insights to improve performance and maximize results.



Prerequisites



Before setting up Google Ads Pixel tracking in CartFlows, make sure to complete the following steps:




Create a Google Ads Manager account.Not done yet? You can follow the official steps here.



Generate your Google Ads Conversion ID and Conversion Label from your Google Ads account.You will need to paste these into the CartFlows settings panel.




How to Set Up Google Ads Pixel in CartFlows



Step 1: Access CartFlows Settings



From your WordPress dashboard, go toCartFlows &gt; Settings &gt; Integrations







Step 2: Enable Google Ads Pixel Tracking



Scroll down to the Google Ads Pixel Settings section and toggle the optionEnable Google Ads pixel Tracking.







Step 3: Add Your Conversion ID &amp; Label



Once enabled, fields will appear where you can paste yourGoogle Ads Conversion ID and Google Ads Conversion Label.







Step 4: Enable Event Tracking



CartFlows provides support for multiple tracking events. You can enable the ones you want to track:




Begin Checkout



Add To Cart



View Content



Add Payment Info



Purchase



Opt-in Lead




How to Verify the Tracking Setup



To confirm that your pixel is working correctly, use the Google Tag Assistant browser extension. It validates the implementation of your Google Ads conversion tags and tracking codes on any page of your site.



Frequently Asked Questions";s:3:"url";s:52:"https://cartflows.com/docs/google-ads-pixel-support/";s:4:"slug";s:24:"google-ads-pixel-support";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-12T18:08:26+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:88;O:8:"stdClass":8:{s:2:"id";i:51580;s:5:"title";s:29:"How to import Divi templates?";s:7:"content";s:1788:"CartFlows offers seamless compatibility with the Divi Builder. While direct importing of Divi templates was discontinued starting from CartFlows version 2.0, you can still use Divi templates by downloading and manually importing them into your funnels.



This documentation will walk you through downloading, importing, and using Divi templates within CartFlows.



Step 1: Download the Divi Templates



You can download the available Divi templates as a zip file from the following link: Divi Templates Zip.After downloading, extract the zip file and choose the specific funnel or step JSON file you want to import.



Step 2: Import the Templates into CartFlows



2.1 – Set the Page Builder Option



Go to CartFlows &gt; Settings &gt; General and set the Page Builder option to Other.







2.2 – Access the Funnels Page



Navigate to CartFlows &gt; Funnels and click the Import button at the top of the screen.







2.3 – Select the Template JSON File



From the extracted zip folder, locate the desired Divi template .json file and select it.







2.4 – Complete the Import



Click Import to upload and apply the template. Once imported, the funnel will appear in your Funnels list.







2.5 – Edit with Divi



You can now begin customizing the imported funnel using the Divi Builder to match your brand and layout preferences.



Frequently Asked Questions



1. I’m unable to edit CartFlows pages using Divi. What should I do? Ensure that the CartFlows step type are enabled for editing in the Divi Builder. This allows Divi to properly render and edit CartFlows steps.







2. Where can I find CartFlows page shortcodes? Set the Page Builder option to Other. Then, go to the funnel step’s Settings &gt; Design tab to view the shortcode for that step.";s:3:"url";s:56:"https://cartflows.com/docs/how-to-import-divi-templates/";s:4:"slug";s:28:"how-to-import-divi-templates";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-06-13T13:27:13+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:89;O:8:"stdClass":8:{s:2:"id";i:49008;s:5:"title";s:37:"Overview: Modern Cart for WooCommerce";s:7:"content";s:1964:"Modern Cart for WooCommerce enhances the default cart experience by introducing a sleek, distraction-free sliding cart interface. It allows customers to view their cart, apply coupons, see progress toward free shipping, and proceed to checkout, all without leaving the current page.




https://youtu.be/jAsON8waa8g




This documentation provides a quick overview of the plugin’s purpose and key features before moving on to setup and customization options.



Getting Started:



To get started with Modern Cart:




Install and activate the plugin.



Navigate to WooCommerce &gt; Modern Cart from your WordPress dashboard.



Configure the settings based on your store’s needs and preferences.




Key Features:



Boost conversions and simplify the checkout experience with the below powerful Modern Cart features.




Floating Cart Interface:A modern and customizable floating cart that appears across your site, allowing customers to access their cart anytime without page reloads.



Free Shipping Progress Bar:Show customers how much more they need to spend to qualify for free shipping, a simple and effective upsell strategy.



Product Recommendations:Highlight linked products such as upsells or cross-sells to increase average order value.



Customizable Coupon Field:Choose between a minimized or traditional coupon field style, or disable it entirely.



Subtotal and Total Display:Show cart subtotal and total directly within the cart panel for price clarity.



Text Customization:Modify cart-related labels, titles, placeholders, and button text to match your store’s tone and branding.



Floating Cart Icon Positioning:Adjust the position of the floating cart icon (bottom right or left), or disable it if not needed.



Styling Options:Customize the cart’s color scheme, width, and animation speed to better match your store design.




Need help installing the plugin? Refer to this documentation: How to Install Modern Cart Starter";s:3:"url";s:55:"https://cartflows.com/docs/modern-cart-for-woocommerce/";s:4:"slug";s:27:"modern-cart-for-woocommerce";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-09-23T18:44:50+05:30";s:8:"category";a:1:{i:0;s:27:"modern-cart-for-woocommerce";}}i:90;O:8:"stdClass":8:{s:2:"id";i:48509;s:5:"title";s:40:"Reimagined for Better Accuracy and Speed";s:7:"content";s:1487:"We’ve completely revamped how funnel analytics works in CartFlows to give you faster, more reliable insights, without any manual setup.



The new analytics implementation is now built into CartFlows by default and replaces the older tracking method. Designed for accuracy and performance, this updated approach uses a lightweight combination of API-based tracking and JavaScript to ensure your funnel data is processed efficiently across all steps.



What’s New with Flow Analytics?




Improved tracking accuracy: No more reliance on unstable cookie behavior, analytics now work more reliably across funnels.



Optimized performance: Faster page transitions and better funnel step tracking, even on high-traffic websites.



Efficient cookie usage: The new system handles cookies in a smarter way to reduce conflicts with caching tools and server settings.



Simplified setup: No toggles or settings to enable, this feature is already active in your CartFlows installation.




How It Works



The new flow tracking uses two types of cookies to monitor visitor activity:




wcf-visited-flow-&lt;flow_id>



wcf-step-visited-&lt;flow_id>




These cookies are lightweight and used only for tracking how users navigate through your funnels.



Frequently Asked Questions













Contact your hosting provider to confirm if a prefix is needed.



No action is required on your end, just keep building funnels and enjoy faster, more reliable analytics tracking with CartFlows!";s:3:"url";s:51:"https://cartflows.com/docs/improved-flow-analytics/";s:4:"slug";s:23:"improved-flow-analytics";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-01-23T19:00:12+05:30";s:8:"category";a:1:{i:0;s:15:"flows-analytics";}}i:91;O:8:"stdClass":8:{s:2:"id";i:48338;s:5:"title";s:72:"How to Use the &#8220;Order Custom Field&#8221; Rule with Dynamic Offers";s:7:"content";s:2226:"CartFlows allows you to display specific upsell or downsell offers based on values customers enter in checkout fields. This can be useful when you want to personalize offers depending on customer selections during checkout.



The Order Custom Field rule in Dynamic Offers lets you compare values submitted through checkout fields and then show a specific offer based on those values. This works with:




Default WooCommerce checkout fields



Custom fields created using the CartFlows Checkout Field Editor




Additionally, the Checkout Field Editor includes a Show in Email option. Enabling this option ensures that the custom field value is included in the order email notifications.



Below is an example workflow showing how to configure a Dynamic Offer using a custom checkout field.



Before You Begin



Make sure you have already created a custom checkout field. If you are unsure how to create one, refer to the documentation on adding custom fields to the CartFlows checkout page.



Configure the Order Custom Field Rule



Step 1: Open the Checkout Field Editor



Navigate to the Checkout Field Editor and locate the custom field you want to use for your Dynamic Offer condition.







Step 2: Copy the Field ID



Once you find the field, open its options and copy the Field ID. This ID will be used when creating the rule.







Step 3: Open the Checkout Step Settings



Go to your Funnel, open the Checkout step, and navigate to the Dynamic Offers tab.



Enable Dynamic Offers if it is not already enabled.







Step 4: Add a New Rule



Add a new rule and configure it as follows:




Select Order Custom Field as the rule type



Choose the appropriate condition (for example, equals or not equals)



Paste the Field ID you copied earlier



Enter the expected value that should trigger the offer




Make sure the expected value exactly matches the value defined in the field options when the custom field was created.







Step 5: Save the Settings



Click Save Settings to apply the rule.



Once saved, CartFlows will evaluate the value entered in the checkout field during the order process. If the condition matches, the configured upsell or downsell offer will be displayed accordingly.";s:3:"url";s:63:"https://cartflows.com/docs/use-custom-fields-in-dynamic-offers/";s:4:"slug";s:35:"use-custom-fields-in-dynamic-offers";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-04-28T22:43:47+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:92;O:8:"stdClass":8:{s:2:"id";i:48413;s:5:"title";s:47:"How to Modify Offer Accept/Reject Popup Strings";s:7:"content";s:1463:"In CartFlows versions 1.11.5 and 1.11.6, we introduced new options that allow you to customize the text strings displayed on the offer accept/reject popup.This feature was added based on user feedback, making it easier for everyone to personalize the offer messaging without needing custom code.







How to Update Offer Popup Strings



Step 1: Open Your Funnel



Go to your CartFlows dashboard and open the funnel you want to modify.







Step 2: Edit the Upsell or Downsell Step



Click on the Settings icon (cogwheel) next to the upsell or downsell step you want to edit.







Step 3: Access the Settings Panel



Once inside the step settings editor, click on the Settings tab.







Step 4: Find the Offer Popup Strings Section



Under the settings, scroll down to locate the Offer Popup Strings section.







Here, you will see four fields where you can customize the popup messages:




Offer Processing: Message displayed while the offer is being processed.



Offer Success: Message shown when the product is successfully added to the order.



Offer Failure: Message shown if the offer is rejected or an error occurs.



Offer Success Note: Additional success note displayed after a successful action.




Step 5: Save Your Changes



After updating the text strings, click the Save Settings button to apply the changes.



By updating these fields, you can create a more personalized experience for your customers during the offer process.";s:3:"url";s:54:"https://cartflows.com/docs/modify-offer-popup-strings/";s:4:"slug";s:26:"modify-offer-popup-strings";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-04T23:10:19+05:30";s:8:"category";a:1:{i:0;s:17:"one-click-upsells";}}i:93;O:8:"stdClass":8:{s:2:"id";i:48349;s:5:"title";s:57:"How to Fix 5XX Error While Importing Flow/Step Templates?";s:7:"content";s:2680:"If you're trying to import a ready-made funnel or step template in CartFlows and encounter a 5XX error (such as 500, 501, 502, or 503), this documentation will help you troubleshoot and resolve the issue.



A common error message might look like:



Error: Allowed memory size of X bytes exhausted (tried to allocate X bytes)



Why This Happens



This error typically occurs due to one or more of the following reasons:




Plugin conflicts or PHP errors on your site



Server limitations or outdated PHP versions



Insufficient resources configured in your hosting environment




Below are several points you can follow to fix this issue.



1. Avoid Plugin Conflicts



Temporarily deactivate all plugins except CartFlows, CartFlows Pro, and WooCommerce.



Then try importing the template again.




If it works: one of the other plugins is likely causing a conflict.



If it doesn't: move on to the next point.




2. Enable Debug Mode to Check for Errors



Enable WordPress debugging using the WP Debugging plugin. After activating it, try importing a template again. This will create or update your debug.log file so you can check for specific PHP errors.



Still not working? Continue below.



3. Update Your PHP Version



Using an outdated PHP version can lead to performance issues and 5XX errors.



We recommend using PHP 7.3 or higher.



To check your PHP version:




Go to Tools &gt; Site Health in your WordPress admin.



Click the Info tab > Server.



Look for PHP version.








If you're not using at least PHP 7.3, ask your hosting provider to update it for you.



4. Increase Hosting Resource Limits



If your server’s PHP configuration limits are too low, imports may fail. Updating the following PHP values may help:



memory_limit = 512M
max_execution_time = 900
max_input_time = 900
post_max_size = 256M
upload_max_filesize = 720M



If you’re unsure how to make these changes, contact your hosting provider.



Here’s an email you can send to your hosting provider:



Subject: Help with PHP Configuration for CartFlows Template Import



Hello,

I’m trying to import a CartFlows ready-made funnel or step template and I’m receiving a 5XX error.

Could you please:

1. Enable WordPress debug mode
2. Check the error logs
3. Share the log file with me?

Also, here are the recommended PHP configuration values:

* PHP Version: 7.3 or later
* memory_limit = 512M
* max_execution_time = 900
* max_input_time = 900
* post_max_size = 256M
* upload_max_filesize = 720M

I’d appreciate your help. Thanks!



Still Need Help?



If you're still experiencing issues, feel free to reach out to our support team. We’re happy to help!";s:3:"url";s:67:"https://cartflows.com/docs/fix-5xx-error-while-importing-templates/";s:4:"slug";s:39:"fix-5xx-error-while-importing-templates";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-04-14T21:34:59+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:94;O:8:"stdClass":8:{s:2:"id";i:48130;s:5:"title";s:31:"How to View the CartFlows logs?";s:7:"content";s:1457:"Logs are crucial for diagnosing issues, tracking workflows, and identifying warnings or errors in any online software or application. CartFlows provides two types of logs:



Types of Logs in CartFlows



1. Template Import Logs: These logs record the steps performed while importing templates on your website. They are only generated when WP_DEBUG is set to true. To track these logs, you need to enable WP_DEBUG. Refer to this documentation for guidance on enabling it.



2. CartFlows Logs: These logs store records of activities when visiting funnel steps. They also capture errors related to CartFlows and supported payment gateways for upsells and downsells.



Logs can be downloaded and shared with support for troubleshooting. Below are the steps to view, download, or delete logs on your website.



How to View the Logs



Step 1: Open CartFlows Pages



Go to CartFlows > Settings.







Step 2: Click on the Logs Link



Click on Logs to open the log management interface.



Step 3: Select the Log File



From the dropdown menu, choose the log file you want to check. Each log is labeled with its generation date. 







Additional Actions



At the top of the log view page, you will find options to:




Copy: Copy the log content.



Download: Download the log file for sharing or backup.



Delete: Permanently remove the log file.








These options are useful when troubleshooting or when support requests detailed log information.";s:3:"url";s:47:"https://cartflows.com/docs/view-cartflows-logs/";s:4:"slug";s:19:"view-cartflows-logs";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-04-29T22:49:05+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:95;O:8:"stdClass":8:{s:2:"id";i:46384;s:5:"title";s:52:"How to Show the Order Summary Open on Mobile Devices";s:7:"content";s:707:"Starting with CartFlows version 1.9.0, the Modern Checkout templates collapse the order summary by default on mobile devices to create a cleaner and more focused layout.



If you’d prefer the order summary to appear open by default on mobile (while still allowing users to collapse it), you can use the following PHP filter:



add_filter( 'cartflows_show_mobile_order_summary_collapsed', '__return_false' );



You can add this code using the Code Snippets plugin (recommended) or by placing it in your child theme’s functions.php file.




&#x1f4a1; Make sure to select PHP as the snippet type if you're using the Code Snippets plugin.




For guidance, check out: How to Add Custom Code to WordPress";s:3:"url";s:80:"https://cartflows.com/docs/how-to-show-the-order-summary-open-on-mobile-devices/";s:4:"slug";s:52:"how-to-show-the-order-summary-open-on-mobile-devices";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-04-29T13:46:03+05:30";s:8:"category";a:1:{i:0;s:13:"code-snippets";}}i:96;O:8:"stdClass":8:{s:2:"id";i:46372;s:5:"title";s:47:"How to Enable the Product Tab on Store Checkout";s:7:"content";s:1026:"With the release of CartFlows version 1.10.0, we introduced the new Store Checkout feature, which replaces the default WooCommerce checkout and follows a standard, streamlined checkout process.



As part of this transition, the Product tab was removed from the Store Checkout funnel to maintain simplicity and alignment with typical eCommerce flows. However, if you have a unique use case where you want to want the product tab on Store checkout, you can bring back the Product tab by using the following PHP filter:



add_filter( 'cartflows_show_store_checkout_product_tab', '__return_true' );



You can add this code using the Code Snippets plugin or by placing it in your child theme’s functions.php file.



Need help adding custom code? Here’s how to safely add code snippets to your site.



Note: The Product Options feature does not behave the same way in the Store Checkout due to the structure of the store checkout. Some features may have limitations or may not be supported when the Product tab is enabled.";s:3:"url";s:61:"https://cartflows.com/docs/enable-product-tab-store-checkout/";s:4:"slug";s:33:"enable-product-tab-store-checkout";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-07-07T21:52:17+05:30";s:8:"category";a:1:{i:0;s:13:"code-snippets";}}i:97;O:8:"stdClass":8:{s:2:"id";i:46257;s:5:"title";s:44:"Overview: Variation Swatches for WooCommerce";s:7:"content";s:1427:"Variation Swatches for WooCommerce replaces the default variation dropdowns with customizable color, image, or label swatches. It enhances the product selection experience on your product and shop pages by making variation choices more intuitive and visually appealing.



This documentation provides a quick overview of the plugin’s purpose and key features before moving on to setup and customization options.



To get started with Variation Swatches:




Install and activate the plugin.



Create global attributes and terms using Products > Attributes.



Assign attributes to variable products and configure swatches as needed.




Make product variations easier to browse with the following features:



Key Features:




Swatch TypesChoose between color, image, or label swatches for variation display.



Swatch Shapes and SizesCustomize the shape (circle, square, etc.) and size of swatches to match your store design.



Tooltip and Hover EffectsAdd tooltips and optional image previews for swatches.



Shop Page DisplayShow swatches on shop or archive pages in addition to single product pages.



Widget and Filter SupportEnable swatches in product filter widgets for better navigation.



Custom Styling OptionsFine-tune font size, border styles, and alignment for swatches and labels.




Need help installing the plugin? Refer to this documentation: How to Install and Activate the Variation Swatches Plugin";s:3:"url";s:69:"https://cartflows.com/docs/variation-swatches-for-woocommerce-plugin/";s:4:"slug";s:41:"variation-swatches-for-woocommerce-plugin";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-19T22:35:34+05:30";s:8:"category";a:1:{i:0;s:18:"variation-swatches";}}i:98;O:8:"stdClass":8:{s:2:"id";i:46122;s:5:"title";s:29:"Offers JS Triggers Shortcodes";s:7:"content";s:3507:"In the CartFlows and CartFlows Pro, we’ve introduced new JavaScript variables (shortcodes) and triggers that can be used within custom JavaScript. These enhancements make it easier to access order and offer-related data for tracking, analytics, and custom automation requirements.



This feature is especially useful if you want to integrate third-party tracking tools, send data to external services, or run custom logic based on user actions within your flows.



Available JavaScript Variables



Below is the list of JavaScript variables that can be used on CartFlows pages.



Variables Available in CartFlows Free



The following variables are available in the free version of CartFlows:




{{order_id}}



{{txn_id}}



{{order_total}}




These variables can be used on all CartFlows steps except the Checkout page. This is because order-related values are generated only after the order has been successfully placed.



Variables Available in CartFlows Pro



The following variables are available with CartFlows Pro:




{{offer_product_name}}



{{offer_product_qty}}



{{offer_product_price}}




These variables are specific to offers and are available only on Upsell and Downsell steps, as they relate directly to the accepted or rejected offer.



Practical Use Case Example



You might be wondering how these variables can be used in real-world scenarios.



For example, if you want to trigger a custom Facebook Pixel or Google Analytics event on an Upsell or Downsell page and pass values such as the Order ID, Transaction ID, or Product ID, you can directly reference variables like {{order_id}}, {{txn_id}}, or {{product_id}} within your custom JavaScript. These values can then be sent dynamically to your tracking or analytics scripts.



JS Triggers for Upsell &amp; Downsell Acceptance or Rejection



Along with JavaScript variables, CartFlows also provides built-in triggers that automatically run when an Upsell or Downsell offer is accepted or rejected.



This allows you to perform actions such as sending offer data to a CRM, triggering custom automation, or firing third-party tracking events based on the customer’s decision.



These script options are available only on Upsell and Downsell steps.



How to Add Offer Accepted or Rejected Scripts



Follow the steps below to add custom JavaScript for offer acceptance or rejection:



Step 1: Navigate to the CartFlows &gt; Funnels menu in your WordPress dashboard.



Step 2: Click Edit on the funnel where you want to add the custom script.







Step 3: Open the settings for the relevant Upsell or Downsell step.







Step 4: Go to the Custom Script section on the sidebar.







Step 5: Add your custom JavaScript code in the Offer Accepted or Offer Rejected script field, depending on your requirement.







Step 6: Click Save Settings to apply the changes.



JavaScript Variables Available in Offer Scripts



While adding offer accepted or rejected scripts, you can use the following variables to access offer and order-related data:




{{order_id}}



{{flow_id}}



{{step_id}}



{{product_id}}



{{variation_id}}



{{quantity}}



{{offer_type}}




Once added, these scripts will run automatically at the appropriate time. The Offer Accepted script will execute when an upsell or downsell is accepted, while the Offer Rejected script will run when the offer is declined.



This ensures your custom logic or tracking is executed precisely based on the customer’s action within the funnel.";s:3:"url";s:57:"https://cartflows.com/docs/offers-js-triggers-shortcodes/";s:4:"slug";s:29:"offers-js-triggers-shortcodes";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-05T19:00:08+05:30";s:8:"category";a:1:{i:0;s:14:"developer-docs";}}i:99;O:8:"stdClass":8:{s:2:"id";i:46140;s:5:"title";s:17:"User role manager";s:7:"content";s:1224:"CartFlows now includes a User Role Manager feature that gives you control over who can access and manage different parts of CartFlows on your website. This feature is especially helpful for teams and agencies who want to assign specific roles and responsibilities when working on funnels.



With this setting, you can easily define access levels for each user role, whether it’s full control, limited editing, or no access at all.



How to Manage User Roles in CartFlows



Step 1: Navigate to CartFlows Settings



Go to CartFlows > Settings > User Role Manager tab on the sidebar.



Step 2: Set Access Level



Choose from the following access levels for the user roles listed:




No Access – Restricts the user role from accessing CartFlows entirely.



Limited Access – Allows access to funnels and steps only (no access to global settings).



Full Access – Grants complete access including creating, editing, importing, and exporting funnels and steps.




Step 3: Save Changes



Once you've configured access levels, click the Save Settings button to apply your settings.







By default, all existing user roles will have access to CartFlows when this feature is enabled.



Frequently Asked Questions";s:3:"url";s:45:"https://cartflows.com/docs/user-role-manager/";s:4:"slug";s:17:"user-role-manager";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-27T16:30:22+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:100;O:8:"stdClass":8:{s:2:"id";i:45479;s:5:"title";s:29:"CartFlows Pro WP CLI Commands";s:7:"content";s:684:"&#x1f6e0; Note: This feature is available with the CartFlows Pro plugin. To use the following WP-CLI commands, ensure both the CartFlows free and Pro plugins are installed and activated on your website.




CartFlows Pro adds support for managing certain actions via WP-CLI — a powerful tool for developers and advanced users who prefer working from the command line.



Activate License Key via WP-CLI



To activate your CartFlows Pro license using WP-CLI, use the following command:



wp cartflows license activate your-license-key-here



Replace your-license-key-here with your actual license key.



We’ll continue to add support for more WP-CLI commands in future updates.";s:3:"url";s:43:"https://cartflows.com/docs/wp-cli-commands/";s:4:"slug";s:15:"wp-cli-commands";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-01-30T15:58:27+05:30";s:8:"category";a:1:{i:0;s:14:"developer-docs";}}i:101;O:8:"stdClass":8:{s:2:"id";i:44704;s:5:"title";s:36:"How to create Google Address API Key";s:7:"content";s:922:"To enable Google Autocomplete for address fields on your CartFlows Checkout page, follow these steps:



Step 1: Enable Google Maps Platform




Visit the Google Maps Platform.



Click the Get Started button at the top-right corner.








Step 2: Create or Select a Project




If this is your first time, you'll need to create a new project.



Enter a name for your project.



Click Next to continue.




Step 3: Set Up Billing




Choose your country and accept the Terms of Service.



Click Continue.









Enter your customer and billing information to activate the account.












Step 4: Generate Your API Key




Go to APIs &amp; Services > Credentials.









Click on CREATE CREDENTIALS and select API Key.









Your new API key will be generated and displayed.








You can now copy this key and paste it into the appropriate field in the CartFlows settings to enable address autocomplete.";s:3:"url";s:57:"https://cartflows.com/docs/create-google-address-api-key/";s:4:"slug";s:29:"create-google-address-api-key";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-05T19:52:15+05:30";s:8:"category";a:1:{i:0;s:14:"developer-docs";}}i:102;O:8:"stdClass":8:{s:2:"id";i:44695;s:5:"title";s:40:"Enabling the Google Address Autocomplete";s:7:"content";s:1808:"CartFlows now includes a powerful new feature: Google Address Autocomplete for billing and shipping fields. This enhancement streamlines the checkout experience by allowing users to quickly search and select their address, which then auto-fills the relevant fields.



This feature leverages Google’s Places API to provide accurate address suggestions based on user input. It reduces manual typing and improves checkout speed, especially on mobile devices.



Note: Some address components may be missing in certain suggestions, depending on what data is returned by Google. This is a known limitation of the API. Here is an actual&nbsp;demonstration&nbsp;from Google.



What Is Google Address Autocomplete?



Google Address Autocomplete is a service provided by Google’s Places API. It predicts and suggests address entries as users begin typing, using real-time location data.



In CartFlows, we’ve integrated this API to auto-fill billing and shipping fields with just a single selection—making your checkout process faster and more convenient.



How to Enable Google Address Autocomplete



Step 1: Get Your Google API Key



First, set up your Google account and generate an API key. Follow this guide for step-by-step instructions.



Step 2: Add the API Key to CartFlows




Navigate to CartFlows → Settings → Integrations.



Click the Google Address Autocomplete tab.



Paste your API key and save the changes.








Step 3: Enable on Specific Checkout Pages




Edit the Checkout step where you want this feature enabled.



Click the Settings icon (gear icon).



Open the Checkout Form tab.



Click on the Form Settings section and toggle on the Enable Google Address Autocomplete option.








Once enabled, your customers will benefit from a faster, smarter checkout form.";s:3:"url";s:65:"https://cartflows.com/docs/enabling-google-address-autocompletes/";s:4:"slug";s:37:"enabling-google-address-autocompletes";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-14T19:56:30+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:103;O:8:"stdClass":8:{s:2:"id";i:40585;s:5:"title";s:45:"How to Override the WooCommerce Checkout Page";s:7:"content";s:1323:"The Override Store Checkout feature in CartFlows Pro allows you to replace WooCommerce’s default Checkout page with your CartFlows Store Checkout, without changing the page URL.



This is useful if you want the benefits of a CartFlows-optimized Checkout while keeping the familiar WooCommerce checkout URL structure.



How It Works



When the Store Checkout is set and the Override option is enabled, CartFlows takes over the default WooCommerce Checkout page.



The page’s URL remains the same as WooCommerce’s default checkout page, but its content and functionality come entirely from your CartFlows Store Checkout.



Requirements



Before you can enable the override:




You must set a Store Checkout in CartFlows (CartFlows &gt; Store Checkout). Refer to this document to know more about Store Checkout.



The Override option depends on the Store Checkout setting. If no Store Checkout is set, the Override option will not work.




How to Enable Override Store Checkout




Go to CartFlows &gt; Settings &gt; General.



Enable the Override Store Checkout option.



Save your changes.








Once enabled, customers visiting your WooCommerce Checkout page will see the CartFlows Store Checkout, with the URL unchanged.



Before enabling the Override option:







After enabling the Override option:";s:3:"url";s:52:"https://cartflows.com/docs/override-global-checkout/";s:4:"slug";s:24:"override-global-checkout";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-19T21:23:47+05:30";s:8:"category";a:1:{i:0;s:15:"global-checkout";}}i:104;O:8:"stdClass":8:{s:2:"id";i:40363;s:5:"title";s:33:"Dynamic (Conditional) Order Bumps";s:7:"content";s:2673:"CartFlows allows you to display Order Bumps dynamically based on specific conditions set on the checkout page. This feature is known as Dynamic (Conditional) Order Bumps.



With this functionality, you can control when an order bump should appear by defining rules based on factors such as products in the cart, order value, discounts, and other checkout conditions.



This helps you present the most relevant offer to customers and improves the chances of increasing the average order value.



How Dynamic Order Bumps Work



Dynamic Order Bumps use a rule-based condition system to determine whether an order bump should be displayed to the customer.



To make rule management easier, conditions can be organized into groups.



A Condition Group contains one or more rules that work together.




Conditions inside the same group follow an AND relationship.



Multiple groups follow an OR relationship.




This means the order bump will be displayed if any condition group is satisfied.



You can create multiple groups and conditions depending on your requirements, allowing you to build advanced targeting scenarios for your offers.



Where to Configure Dynamic Order Bumps



The condition settings for Dynamic Order Bumps are available within the Order Bump settings on the checkout step.



Inside the Conditions tab, you can add rules and organize them into groups to control when the order bump should be shown.



How to Set Up Dynamic Order Bumps



Follow the steps below to configure conditional order bumps.



Step 1: Navigate to CartFlows &gt; Funnels.Step 2: Open the funnel where you want to add or modify the order bump.







Step 3: Move to the Order Bump section. If an order bump is not yet created, click Add Order Bump.Step 4: Click Edit Order Bump on the order bump you want to configure.







Step 5: On the Order Bumps section edit the Order Bump by clicking the order bump settings.Step 6: Enable the Conditions option to activate rule-based display.







Step 7: Select the required conditions values to define the first rule.Step 8: Click Add Condition to add more rules within the same condition group.Step 9: Click Add Conditions Group if you want to create another group of rules.







Step 10: Click Save Settings to apply the configuration.



Reordering Condition Groups



Condition groups can be reordered to control priority.



You can simply drag and drop the groups to arrange them according to how you want the conditions to be evaluated.



Individual rules cannot be moved directly between groups. If you want to move a rule to another group, you will need to delete it and recreate it within the desired group.";s:3:"url";s:47:"https://cartflows.com/docs/dynamic-order-bumps/";s:4:"slug";s:19:"dynamic-order-bumps";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-05T14:22:58+05:30";s:8:"category";a:1:{i:0;s:10:"order-bump";}}i:105;O:8:"stdClass":8:{s:2:"id";i:40154;s:5:"title";s:47:"How to Renew Your Expired CartFlows Pro License";s:7:"content";s:1041:"If your CartFlows Pro license has expired, you can renew it easily by following the steps below.



Renewing Your Expired License



To renew your CartFlows Pro license:



Step 1: Log in to your Account



Visit the CartFlows Store and log in using your credentials.



Step 2: Go to the Subscriptions  from the sidebar



Click on the Subscriptions section from the sidebar and click the Resubscribe button.







Step 3: Billing details



On the Checkout page, verify your billing information.







Step 4: Your order



Once you confirm your billing information is correct, verify the Your order section.







Step 5: Coupon and Payment method



Enter the coupon code if you have one, then choose your preferred payment method. Make sure to tick the I have read and agree to the website Terms and Conditions checkbox. Finally, click the Place Order button.







Congratulations! You have successfully renewed your CartFlows Pro license. A confirmation email with your order details will be sent to your registered email address.";s:3:"url";s:77:"https://cartflows.com/docs/steps-to-renew-your-cartflows-pro-expired-license/";s:4:"slug";s:49:"steps-to-renew-your-cartflows-pro-expired-license";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-08-11T18:59:38+05:30";s:8:"category";a:1:{i:0;s:13:"account-store";}}i:106;O:8:"stdClass":8:{s:2:"id";i:39884;s:5:"title";s:38:"CartFlows Dynamic Offers (Rule Engine)";s:7:"content";s:2895:"CartFlows includes a powerful feature called Dynamic Offers, also known as the Rule Engine, which allows you to control the redirection to upsell or downsell steps based on specific conditions set on the checkout page.



Using this feature, you can define custom rules that determine which upsell or downsell page a customer should see after completing the checkout step.



How Dynamic Offers Work



Dynamic Offers allow you to create conditional redirects based on various checkout conditions. These conditions can include details such as products in the cart, order value, customer information, and more.



To make rule creation more flexible, Dynamic Offers support grouped conditions.



A Group is a collection of one or more conditions.




Conditions within the same group work using an AND relationship.



Multiple groups work using an OR relationship.




This means that if any group of conditions is satisfied, the corresponding redirect rule will be applied.



This structure allows you to create advanced scenarios while keeping the rule setup organized and easy to manage.



How to Set Up Dynamic Offers



Follow these steps to configure Dynamic Offers for your checkout step.



Step 1: Navigate to CartFlows &gt; Funnels.Step 2: Open the funnel where you want to add or modify the conditions.







Step 3: Click the settings icon of the Checkout step.







Step 4: Open the Dynamic Offers section in the checkout settings.Step 5: Enable the Dynamic Offers option.Step 6: Click Add Condition if you want to include additional conditions within the same group.Step 7: Click Add Dynamic Offer to create another group of conditions.Step 8: Click Save Settings to apply the rules.







Reordering Dynamic Offer Groups



You can reorder condition groups to prioritize which rules should be evaluated first.



Simply drag and drop the groups to rearrange them according to your requirements.



Note that individual conditions cannot be moved between groups. If you want a condition in another group, you will need to delete it and recreate it in the desired group.



Default Redirection



If none of the defined condition groups match the customer's checkout scenario, you can configure a default redirection step.







This ensures that every customer is redirected to a specific upsell or downsell step even when no conditions are met.



Using Dynamic Offers with Upsell and Downsell Steps



Once a customer is redirected to the appropriate upsell or downsell step using Dynamic Offers, you can still apply conditional redirects on the upsell or downsell steps to further control the flow. This allows you to create more advanced funnel paths depending on the customer’s actions.



Refer to this documentation for more details about conditional Upsell and Downsell: https://cartflows.com/docs/create-conditional-upsell-downsell/



Frequently Asked Questions";s:3:"url";s:64:"https://cartflows.com/docs/cartflows-dynamic-offers-rule-engine/";s:4:"slug";s:36:"cartflows-dynamic-offers-rule-engine";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-04-29T19:08:01+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:107;O:8:"stdClass":8:{s:2:"id";i:39790;s:5:"title";s:25:"List of CartFlows Cookies";s:7:"content";s:1294:"CartFlows uses several cookies to ensure smooth operation of checkout flows, session handling, and analytics. These small files are stored on the user’s local device and are sent with each page request to help maintain consistent user sessions and tracking.



Below are the cookies used by CartFlows:




cartflows_session_Set when a user visits a CartFlows page. It creates a unique session ID for each user to enable a seamless checkout experience.



wcf_active_checkout Determines which checkout page is currently open and stores relevant cart data for that specific checkout.



wcf-visited-flow- Tracks which CartFlows funnel (flow) the user has interacted with.



wcf-step-visited- Tracks which step of the funnel the user has visited.



cartflows-ab-test- 



Used only when the A/B Split Testing feature is active to track the variant shown to the user.




Custom Cookie Prefix



If your server requires cookies to use a specific prefix (e.g., for caching compliance), you can define a custom prefix by adding the following line to your wp-config.php file:



define( 'CARTFLOWS_COOKIE_PREFIX', 'your_prefix_' );



Note: Add this line just above the “That’s all, stop editing! Happy publishing.” line in the wp-config.php file, located in your website’s root directory.";s:3:"url";s:53:"https://cartflows.com/docs/list-of-cartflows-cookies/";s:4:"slug";s:25:"list-of-cartflows-cookies";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-09-02T22:04:17+05:30";s:8:"category";a:1:{i:0;s:14:"developer-docs";}}i:108;O:8:"stdClass":8:{s:2:"id";i:39759;s:5:"title";s:40:"Cart Abandonment Cookies/GDPR Compliance";s:7:"content";s:1296:"We introduced a dedicated Cart Abandonment plugin to help website administrators recover lost sales by sending follow-up emails to users who abandon their carts. This is an optional feature that you can enable or disable as per your store’s requirements.



Data Processing &amp; Consent



Abandoned cart emails fall under legitimate interest for data processing under GDPR guidelines. This means:




No special consent is required to send abandoned cart recovery emails.



You can use this feature confidently without additional consent checkboxes, though transparency in your privacy policy is recommended.




Optional GDPR Confirmation Setting



To give store owners more control, the plugin includes an optional setting:



You can enable this feature by following these steps:




Navigate to WooCommerce &gt; Cart Abandonment



Click on the Settings tab



Go to the GDPR tab



Toggle the option: Enable GDPR Integration








Note
When enabled, a confirmation message will appear below the email field on the checkout page. This informs the user about tracking and gives them the option to opt out by clicking “No thanks.”








This provides a balance between compliance and conversion, allowing you to recover lost sales while respecting your users' privacy preferences.";s:3:"url";s:52:"https://cartflows.com/docs/cart-abandonment-cookies/";s:4:"slug";s:24:"cart-abandonment-cookies";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-02-18T19:47:48+05:30";s:8:"category";a:1:{i:0;s:16:"cart-abandonment";}}i:109;O:8:"stdClass":8:{s:2:"id";i:38862;s:5:"title";s:80:"VAT Field of WooCommerce EU/UK VAT Compliance (Premium) Plugin is not Displaying";s:7:"content";s:2543:"If you're using the WooCommerce EU/UK VAT Compliance (Premium) plugin by David Anderson and the VAT field is not appearing on your CartFlows Checkout page, this documentation will help you display it correctly.



This plugin adds a VAT number field on the WooCommerce checkout page to support tax compliance for EU and UK customers. However, due to how CartFlows customizes the checkout fields, the VAT field may not display by default.



Ensure VAT Field is Displayed on WooCommerce Checkout



Before checking CartFlows compatibility, make sure the VAT field is visible on the default WooCommerce checkout page. If it's not displayed there, it won’t appear on CartFlows either.



You can confirm this by temporarily switching to the default WooCommerce checkout page and testing whether the VAT field appears as expected.



Why the Field Might Not Show on CartFlows Checkout



CartFlows customizes the WooCommerce checkout form, including billing and shipping fields, using standard WooCommerce hooks and filters. Because of this, fields added by third-party plugins may not always appear in the intended position.



Fortunately, the WooCommerce EU/UK VAT Compliance (Premium) plugin provides a filter that allows you to change the position of the VAT field.



Add the Filter to Display VAT Field on CartFlows Checkout



Add the following filter to your child theme’s functions.php file:



add_filter( 'wc_eu_vat_number_position', 'eu_change_vat_number_position', 10, 1 ); 

/**
* Function to change the position of VAT field only for the CartFlows checkout page.
* 
* @param $current_page current visited page
* @return $current_page current page.
*/
function eu_change_vat_number_position( $position ){

  /* Get global post object */
	global $post;

	/* Get current post type */
	$post_type = get_post_type();
	
	/* Check the current type of the page */
	$is_checkout = get_post_meta( $post-&gt;ID, 'wcf-step-type', true );
		
	/* Change position only of the CartFlows checkout page */
	if( 'cartflows_step' == $post_type &amp;&amp; 'checkout' === $is_checkout){
		$position = 'woocommerce_after_order_notes';
	}

  return $position;

}





&#x1f4a1; Need help adding custom code? Here’s how to safely add custom snippets to your site.




After adding this filter, the VAT field will display on your CartFlows checkout page in the correct position. If you’ve followed the steps and the field still doesn’t appear, double-check your plugin settings and ensure the field is visible on the standard WooCommerce checkout.";s:3:"url";s:65:"https://cartflows.com/docs/vat-field-of-eu-uk-vat-not-displaying/";s:4:"slug";s:37:"vat-field-of-eu-uk-vat-not-displaying";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-15T18:38:06+05:30";s:8:"category";a:1:{i:0;s:13:"code-snippets";}}i:110;O:8:"stdClass":8:{s:2:"id";i:38729;s:5:"title";s:95:"How to Fix “Cannot Activate API Key. Key Already Activated with the Same Instance ID” Error";s:7:"content";s:2025:"While activating the CartFlows Pro license, you may encounter the following error message:



Cannot Activate API Key. The API Key has already been activated with the same Unique Instance ID sent with this request.



This typically happens when your site setup causes CartFlows to send the same instance ID that was already linked to a previous activation. This documentation explains why this error occurs and how to fix it.



Why This Error Occurs



There are a few common scenarios that may trigger this issue:



1. Site Migration or Cloning



If the website has been migrated or cloned to a new domain or hosting environment, the old instance ID may still be stored. When you activate the license on the new site, it sends the same instance ID — leading to a conflict.



2. Plugin Reinstallation Without Deactivation



If the CartFlows Pro plugin was deleted or removed without first deactivating the license, then re-uploaded, the license system may still associate the instance ID with the original domain.



3. Caching Issues



When caching is enabled (including local, server-side, or browser cache), the instance ID may not be correctly stored. This can cause repeated requests to send the same old instance ID, even if the site has changed.



How to Fix the Issue



Follow these steps to clear the old instance ID and reactivate your CartFlows Pro license:



1. Log in to your account at my.cartflows.com2. Navigate to the API Keys tab3. Locate the entry for the domain you’re working with4. Delete that entry







5. Log in to your WordPress admin6. Clear all site cache, including




Local cache



Server-side cache



Browser cache




7. Go to the Plugins menu8. Deactivate any cache plugin temporarily9. Deactivate the CartFlows Pro plugin10. Reactivate the CartFlows Pro plugin11. Click the Activate License button12. Enter your license/API key13. Click Activate



Note: Always clear all cache and temporarily disable any cache plugins before activating the CartFlows Pro license/API key.";s:3:"url";s:73:"https://cartflows.com/docs/how-to-resolve-same-instance-id-error-message/";s:4:"slug";s:45:"how-to-resolve-same-instance-id-error-message";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-02-18T15:14:24+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:111;O:8:"stdClass":8:{s:2:"id";i:38187;s:5:"title";s:53:"How to Delete Plugin Data When Uninstalling CartFlows";s:7:"content";s:1304:"CartFlows includes an option that allows you to automatically delete its data when uninstalling the plugin. This is useful if you want to fully remove CartFlows and clean up your WordPress database.



This documentation explains how to enable that setting and what it does.



What Gets Deleted?



When this option is enabled, uninstalling CartFlows will:




Delete all CartFlows settings and options (including Global Settings)



Will not delete funnels or steps from the database automatically




If you want to completely remove everything, including existing funnels and steps, make sure to delete them manually first before uninstalling the plugin.



Where to Find This Option



You can find this setting by going to CartFlows &gt; Settings &gt; Advanced tab







Steps to Enable the Delete Plugin Data Option




Navigate to CartFlows &gt; Settings &gt; Advanced tab



Click the toggle to enable Delete plugin data on plugin deletion



A confirmation alert will appear



Enter DELETE (in all caps) to confirm



Click the Save Settings button




Once this option is enabled, uninstalling the plugin will automatically clean up CartFlows data from the database.



Watch It in Action



Prefer a quick demo? Watch the short video below that shows how to enable this option step by step:";s:3:"url";s:72:"https://cartflows.com/docs/delete-plugin-data-while-uninstalling-plugin/";s:4:"slug";s:44:"delete-plugin-data-while-uninstalling-plugin";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-20T18:49:09+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:112;O:8:"stdClass":8:{s:2:"id";i:37722;s:5:"title";s:48:"How to Add Products to the Checkout Page via URL";s:7:"content";s:2084:"CartFlows Pro includes a feature that allows you to add products directly to the Checkout page using URL parameters. This makes it easy to dynamically pre-fill the cart based on the link a user clicks — great for personalized offers, email campaigns, and landing pages.



This documentation explains how the feature works, how to structure your URLs, and how to find the product ID required for this functionality.



How the Feature Works



This feature is enabled by default in CartFlows Pro — there’s no need to activate it manually. All you need to do is:




Use a product ID in the URL to add that item to the cart on the Checkout page



Optionally include the quantity for each item




When a user opens the Checkout page URL with the appropriate parameter(s), the specified product(s) will automatically appear in the cart.



URL Parameters Format



To add a product to the Checkout page via URL, use the following parameters:




?wcf-add-to-cart=product_id



&amp;wcf-qty=quantity (optional – defaults to 1 if not specified)




Single Product Example



If you want to add Product ID 3 with a quantity of 4, the URL would look like:



https:&#47;&#47;yourdomain.com/checkout-page/?wcf-add-to-cart=3&amp;wcf-qty=4



If you omit the wcf-qty parameter, the default quantity will be 1.



Multiple Products Example



To add multiple products with different quantities, separate each ID and quantity with commas. For example:



https:&#47;&#47;yourdomain.com/checkout-page/?wcf-add-to-cart=3,6&amp;wcf-qty=4,8



This will add Product ID 3 with quantity 4 and Product ID 6 with quantity 8.



Important Notes



If you’ve already selected products in the backend of the Checkout step, and you also pass product IDs via URL — only the products from the URL will be used. The backend-selected products will be ignored.



How to Find the Product ID



To locate a product’s ID in WooCommerce:




Go to Products > All Products in your WordPress admin



Hover your mouse over the product title



You’ll see the product ID appear below the product title";s:3:"url";s:80:"https://cartflows.com/docs/how-to-add-the-products-on-the-checkout-page-via-url/";s:4:"slug";s:52:"how-to-add-the-products-on-the-checkout-page-via-url";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-04-15T19:08:27+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:113;O:8:"stdClass":8:{s:2:"id";i:38212;s:5:"title";s:61:"How to Regenerate the Step&#8217;s Dynamic CSS for Shortcodes";s:7:"content";s:1561:"CartFlows includes an optimization that improves how dynamic inline CSS is generated for pages using shortcodes. Instead of regenerating CSS every time a page loads, CartFlows now stores it efficiently to improve performance.



This documentation explains when and how to manually regenerate the dynamic CSS for Steps using shortcodes.



When to Use This Option



You may want to regenerate the CSS when:




Design changes made to the step are not showing up on the frontend



You are using CartFlows shortcodes instead of regular funnel pages



The page loads correctly, but styling appears broken or outdated




This option only affects CSS generated from the Design Settings of a Step and only for pages using shortcodes.







How It Works



CartFlows stores dynamic CSS for each Step in the page’s metadata and loads it directly instead of regenerating it on every page load. This improves performance across your site.



When a design change is made to a Step, the CSS is deleted and automatically regenerated on the next page load.



However, if you’re using shortcodes and styling doesn’t update as expected, you may need to trigger CSS regeneration manually.



How to Regenerate the CSS



Step 1: Go to CartFlows &gt; Settings &gt; Advanced tab



Step 2: Click the Regenerate Now button







This will clear the stored CSS and regenerate it the next time the page is visited.



Need Help?



If the styling still doesn’t reflect properly after regenerating the CSS, feel free to contact our support team. We’re happy to help.";s:3:"url";s:75:"https://cartflows.com/docs/regenerate-the-steps-dynamic-css-for-shortcodes/";s:4:"slug";s:47:"regenerate-the-steps-dynamic-css-for-shortcodes";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-18T17:54:16+05:30";s:8:"category";a:1:{i:0;s:14:"developer-docs";}}i:114;O:8:"stdClass":8:{s:2:"id";i:37699;s:5:"title";s:45:"How to Set Default Product in Product Options";s:7:"content";s:1701:"CartFlows lets you offer multiple product options on the checkout page. With this feature, you can also control which product appears selected by default.



This documentation explains two ways to set a default product in the product options:




From the checkout page settings in the backend



Using a URL parameter




Method 1: Set Default Product from Checkout Page Settings



Use this method if you want to choose a default product when multiple products are added to the Checkout Step.



1. Go to CartFlows &gt; Funnels.



2. Open the Funnel where you'd like to apply the setting.







3. Click the Settings icon (cog icon) of the Checkout step.







4. Go to the Products Options section under the Products tab.







5. Enable the Product Options and choose “Let user select multiple products from all options” under the Enable Conditions







6. Use the toggle or radio buttons next to each product to choose which one should be selected by default.







Click Save Settings, and view the checkout page to see the default product selected.



Method 2: Set Default Product Using URL Parameter



Use this method if you want to control the default selection dynamically through a link, for example, from a landing page or a custom button.To set a default product, add the wcf-default parameter to your checkout page URL.



Format:



yourdomain.com/checkout-page/?wcf-default=1



Here, the 1 refers to the position of the product (in order) as listed in your product options. You can link this URL to buttons or anchor tags to direct users to a specific product preselected at checkout. Refer to this doc for further details about this method.



Frequently Asked Question";s:3:"url";s:66:"https://cartflows.com/docs/set-default-product-in-product-options/";s:4:"slug";s:38:"set-default-product-in-product-options";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-20T12:17:53+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:115;O:8:"stdClass":8:{s:2:"id";i:37707;s:5:"title";s:41:"How to Start a Funnel from a Product Page";s:7:"content";s:2025:"CartFlows allows you to start a funnel directly from a WooCommerce product page. This feature lets users be redirected to a CartFlows funnel immediately after adding a product to their cart.



How Does It Work?



When this feature is enabled:




Users clicking Add to Cart on a product page are redirected to the first step of a selected CartFlows funnel.



You can choose a specific funnel for each product in the WooCommerce product settings.



This method works well for custom pricing, booking, and appointment-based products.




Important: We recommend not using a Landing Page as the first step to ensure users go directly to checkout.



When to Use This Feature?



This feature is useful when:




You want to send users directly to checkout after adding a product to the cart.



You’re selling booking or appointment-based products where users need to select details before checkout.



You want to customize the checkout experience for specific products without requiring users to visit the default WooCommerce cart page.




How to Enable This Feature



1. Create a Funnel



Ensure you have a CartFlows funnel with the Checkout step as the first step.



2. Edit the WooCommerce Product




Go to Products and select the product you want to connect to a funnel.



Open the CartFlows tab in the product settings.








3. Link the Product to a Funnel




Search for the funnel you want to connect.



Optionally, customize the Add to Cart button text for this product.








4. Save Changes



Click Update to apply the changes.







Important Notes




Do not assign a product in the backend of the Checkout step when using this feature.



For booking and appointment product types, ensure users provide the necessary details on the product page before checkout.



The Start a Funnel from Product Page feature is designed to work only with default WooCommerce product pages. It doesn’t function the same way with custom-designed sales pages created outside of WooCommerce’s product system.";s:3:"url";s:65:"https://cartflows.com/docs/how-to-start-a-flow-from-product-page/";s:4:"slug";s:37:"how-to-start-a-flow-from-product-page";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-30T15:46:05+05:30";s:8:"category";a:1:{i:0;s:15:"getting-started";}}i:116;O:8:"stdClass":8:{s:2:"id";i:37450;s:5:"title";s:36:"How to Apply the Coupon from the URL";s:7:"content";s:1368:"CartFlows Pro supports applying WooCommerce coupons directly from the checkout page URL. This feature allows you to share the separate coupons for each checkout page for different users or products.



It is enabled by default and does not require any additional configuration.



Create a WooCommerce Coupon



To use this feature, start by creating a coupon in WooCommerce:




Go to Marketing &gt; Coupons.



Click Add Coupon and configure your discount settings.



Save the coupon.








If needed, refer to WooCommerce's coupon documentation for detailed instructions.



Add the Coupon to a Checkout Page URL



Once the coupon is created, append the coupon code to the URL of your Checkout page.



Format:



yourdomain.com/checkout-page/?coupon=COUPONCODE



When someone visits this link, the coupon will automatically apply at checkout.







Combine with Other Parameters



You can also combine the coupon with other supported URL parameters such as product and quantity.



Example:



yourdomain.com/checkout-page/?product=252&amp;quantity=1&amp;coupon=DISCOUNT10



This will:




Add the product with ID 252



Set the quantity to 1



Apply the DISCOUNT10 coupon




How to Find a Product ID




Go to Products &gt; All Products in your WordPress dashboard.



Hover over the product title. You’ll see the Product ID displayed below the title.";s:3:"url";s:64:"https://cartflows.com/docs/how-to-apply-the-coupon-from-the-url/";s:4:"slug";s:36:"how-to-apply-the-coupon-from-the-url";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-09T15:18:54+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:117;O:8:"stdClass":8:{s:2:"id";i:37378;s:5:"title";s:39:"Complete List of WordPress Locale Codes";s:7:"content";s:2341:"Hint – You can CTRL / CMD + F to find your language



Language NameLanguage CodeWordPress Locale CodeAfrikaansafafAkanakakAlbaniansqsqAmharicamamArabicararArmenianhyhyAromanianruprup_MKAssameseasasAzerbaijaniazazAzerbaijani (Turkey)az-traz_TRBashkirbabaBasqueeueuBelarusianbelbelBengalibnbn_BDBosnianbsbs_BABulgarianbgbg_BGBurmesemyamy_MMCatalancacaCatalan (Balear)balbalChinese (China)zh-cnzh_CNChinese (Hong Kong)zh-hkzh_HKChinese (Taiwan)zh-twzh_TWCorsicancocoCroatianhrhrCzechcscs_CZDanishdada_DKDhivehidvdvDutchnlnl_NLDutch (Belgium)nl-benl_BEEnglishenen_USEnglish (Australia)en-auen_AUEnglish (Canada)en-caen_CAEnglish (UK)en-gben_GBEsperantoeoeoEstonianetetFaroesefofoFinnishfifiFrench (Belgium)fr-befr_BEFrench (France)frfr_FRFrisianfyfyFulahfucfucGalicianglgl_ESGeorgiankaka_GEGermandede_DEGerman (Switzerland)de-chde_CHGreekelelGuaranígngnGujaratigugu_INHawaiianhawhaw_USHazaragihazhazHebrewhehe_ILHindihihi_INHungarianhuhu_HUIcelandicisis_ISIdoidoidoIndonesianidid_IDIrishgagaItalianitit_ITJapanesejajaJavanesejvjv_IDKannadaknknKazakhkkkkKhmerkmkmKinyarwandakinkinKirghizkyky_KYKoreankoko_KRKurdish (Sorani)ckbckbLaololoLatvianlvlvLimburgishliliLingalalinlinLithuanianltlt_LTLuxembourgishlblb_LUMacedonianmkmk_MKMalagasymgmg_MGMalaymsms_MYMalayalammlml_INMarathimrmrMingrelianxmfxmfMongolianmnmnMontenegrinmeme_MENepalinene_NPNorwegian (Bokmål)nbnb_NONorwegian (Nynorsk)nnnn_NOOriyaoryoryOsseticososPashtopspsPersianfafa_IRPersian (Afghanistan)fa-affa_AFPolishplpl_PLPortuguese (Brazil)pt-brpt_BRPortuguese (Portugal)ptpt_PTPunjabipapa_INRohingyarhgrhgRomanianroro_RORussianruru_RURussian (Ukraine)ru-uaru_UARusynruerueSakhasahsahSanskritsa-insa_INSardiniansrdsrdScottish GaelicgdgdSerbiansrsr_RSSindhisdsd_PKSinhalasisi_LKSlovaksksk_SKSlovenianslsl_SISomalisoso_SOSouth AzerbaijaniazbazbSpanish (Argentina)es-ares_ARSpanish (Chile)es-cles_CLSpanish (Colombia)es-coes_COSpanish (Mexico)es-mxes_MXSpanish (Peru)es-pees_PESpanish (Puerto Rico)es-pres_PRSpanish (Spain)eses_ESSpanish (Venezuela)es-vees_VESundanesesusu_IDSwahiliswswSwedishsvsv_SESwiss GermangswgswTagalogtltlTajiktgtgTamazight (Central Atlas)tzmtzmTamiltata_INTamil (Sri Lanka)ta-lkta_LKTatartttt_RUTeluguteteThaiththTibetanboboTigrinyatirtirTurkishtrtr_TRTurkmentuktukUighurugug_CNUkrainianukukUrduururUzbekuzuz_UZVietnameseviviWalloonwawaWelshcycyYorubayoryor";s:3:"url";s:67:"https://cartflows.com/docs/complete-list-of-wordpress-locale-codes/";s:4:"slug";s:39:"complete-list-of-wordpress-locale-codes";s:9:"parent_id";N;s:13:"last_modified";s:25:"2024-11-15T21:04:56+05:30";s:8:"category";a:1:{i:0;s:14:"developer-docs";}}i:118;O:8:"stdClass":8:{s:2:"id";i:33306;s:5:"title";s:42:"How to Translate CartFlows Using GlotPress";s:7:"content";s:4228:"CartFlows is translation-ready and includes .po and .mo files, which can be translated using tools like Poedit or GlotPress. We recommend GlotPress, the official WordPress translation platform.



GlotPress is a web-based tool where anyone can contribute, suggest improvements, or help validate translations, making the process faster and more accurate.



This documentation will guide you through the steps to translate CartFlows into your language using GlotPress.



Getting Started with Translations



Step 1: Visit the GlotPress Project



GlotPress for CartFlows Free is hosted on the WordPress repository here: https://translate.wordpress.org/projects/wp-plugins/cartflows/



GlotPress for CartFlows Pro is available on our internal portal here: https://translate.cartflows.com/



Step 2: Log in or Register a New Account



You’ll need to log in to your account to contribute translations. If you don’t have one, you can create it for free.



Step 3: Select Your Language



From the list of available languages, choose the one you want to contribute to.







On the language page, you will see the current state of the translation and a list of other contributors who have already translated part of the project.



Step 4: Open the Translation Project



After selecting your language, click on it to open the translation project. Here, you’ll see different sets of strings available for translation. Choose Stable (latest release) to work on the latest version of CartFlows.







Step 5: Understand the Translation Interface



Once you’ve opened the translation set (e.g., Stable (latest release)), you’ll see a list of strings and a set of filters at the top of the page. These help you navigate and manage the translation status.



Here’s what each filter means:




All – Shows all strings in the project.



Translated – Strings that have been translated and approved.



Untranslated – Strings that haven’t been translated yet.



Waiting – Translations submitted by contributors, awaiting approval.



Changes requested – Translations that require edits based on reviewer feedback.



Fuzzy – Translations that may be inaccurate or partially matching and need review.



Warnings – Strings with formatting issues or errors such as placeholders not matching.








Step 6: Click on Any String and Translate It







Once you submit translations, they will be reviewed and approved by validators. After approval, they’ll be automatically included in future updates via the WordPress dashboard (for projects hosted on WordPress.org).



Would You Like to Become a Translation Validator of CartFlows Pro?



If you’re interested in becoming a validator, please get in touch with us with the following details:




Your WordPress.org username



Your username on our CartFlows GlotPress Portal



The locale you would like to become a validator for



Details of your previous translations (if any)




After your request is submitted, our team can grant you translation validator access.



As a validator, you'll be able to review and approve submitted translations, ensuring they are included in future plugin updates for all users.



Need to Add Translation in Your Project Immediately?



Export Translation Files



If you want to implement a translation immediately on your site, you can export the current translation files in .po and .mo formats from GlotPress.




Go to the language translation set.



Use the Export option to download the .po and .mo files.








Upload Translation Files to Your Website



Once downloaded, upload the files to the following location on your server via FTP or SFTP: /wp-content/languages/plugins/







Using the correct file naming convention is important so WordPress can detect the files properly. The filename must start with the text domain, followed by the locale code.



Examples of file names for CartFlows:




For Indonesian: cartflows-id_ID.po and cartflows-id_ID.mo



For French: cartflows-fr_FR.po and cartflows-fr_FR.mo




Important: Always upload translation files to the /wp-content/languages/plugins/ directory. Avoid placing them inside the plugin folder, as they may be lost during plugin updates.";s:3:"url";s:91:"https://cartflows.com/docs/how-to-translate-cartflows-in-your-own-language-using-glotpress/";s:4:"slug";s:63:"how-to-translate-cartflows-in-your-own-language-using-glotpress";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-07-18T23:55:09+05:30";s:8:"category";a:1:{i:0;s:19:"translate-cartflows";}}i:119;O:8:"stdClass":8:{s:2:"id";i:34934;s:5:"title";s:45:"How to Move a Step from One Funnel to Another";s:7:"content";s:1294:"CartFlows includes an Import/Export feature to move complete funnels between websites. However, if you only need to move a single step from one funnel to another, you can do that manually using your page builder’s export and import tools.



1. Export the Step Design




Go to CartFlows &gt; Funnels and open the funnel that contains the step you want to move.



Open the step in your page builder and use its built-in export option to save the design:

Elementor: Refer to this guide on how to save a page as a template.



Beaver Builder: Refer to this guide on saving templates.



Bricks Builder: Refer to this guide on saving templates.






2. Create a Blank Step in the Target Funnel




Go to the destination funnel where you want to move the step.



Add a new blank step of the same type (Landing, Checkout, Upsell, Downsell, or Thank You).

For example, to move a Landing page step, create a new Landing page step in the new funnel.










3. Import the Step Design




Open the new blank step in the same page builder you used earlier.



Use the import or template loading option to apply the previously exported design.




If you need help importing templates using your page builder, refer to this article: How to Import and Export CartFlows Pages with Your Page Builder";s:3:"url";s:44:"https://cartflows.com/docs/how-to-move-step/";s:4:"slug";s:16:"how-to-move-step";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-05T13:07:23+05:30";s:8:"category";a:1:{i:0;s:15:"flow-step-clone";}}i:120;O:8:"stdClass":8:{s:2:"id";i:37319;s:5:"title";s:73:"How to Fix Request Timeout Errors When Importing Funnel or Step Templates";s:7:"content";s:2852:"If you're seeing a Request Timeout error while importing ready-made funnel or step templates in CartFlows, it usually means your website is having trouble connecting to our templates server.



This documentation explains what causes the issue and how to fix it.



What Causes This Error?



When you import a template in CartFlows, a request is made from your website to our templates server at: https://templates.cartflows.com/



WordPress uses a core function called wp_remote_get() (through cURL) to handle this request.



If your server or host blocks this outgoing connection — usually due to firewalls, security rules, or server misconfiguration — the request will time out and the template will not be imported.



Where You'll See the Error




The “Import Template” button may appear stuck on “Importing Template”



A timeout message may appear directly in the popup









You may also see a cURL error in the browser console or in plugin like Query Monitor




How to Fix It



Follow these steps to troubleshoot and resolve the timeout issue:



1. Check Security Plugins or Firewall




Temporarily disable any firewall or security-related plugins on your site



Make sure they are not blocking outgoing API requests




2. Contact Your Hosting Provider



Ask your hosting provider to check for:




Any firewall rules (e.g. mod_security) that block outgoing cURL requests



Whether outgoing requests to https://templates.cartflows.com/ are blocked




If needed, ask them to whitelist that domain to allow template imports.



3. Check Server Requirements



Make sure your server:




Is running a recent version of PHP



Has the cURL library installed and up to date



Has sufficient memory (increase your PHP memory limit if needed)



Has an adequate cURL timeout limit




You may also want to ask your host to check:




If wp-cron is disabled



If loopback requests are blocked or restricted




4. Use the Query Monitor Plugin



Install Query Monitor and view the HTTP API Calls under the admin page where the error occurs. It can help you identify blocked or failed requests.



5. Special Note for Managed WordPress Hosting



If you're using managed hosting, providers may apply strict limits on:




Execution time



Memory usage



HTTP API requests




Ask your host whether WordPress REST API requests or cURL operations are restricted — and request an exemption for our templates domain.



6. Still Not Working?



If the above steps don’t resolve the issue, contact your hosting provider and ask them to confirm that your server can communicate with: https://templates.cartflows.com/ via cURL without limitations.If needed, you can also contact our support team and provide your website’s IP address. We'll check if it has been mistakenly blocked on our server — although this is rare.";s:3:"url";s:89:"https://cartflows.com/docs/request-timeout-error-while-importing-the-flow-step-templates/";s:4:"slug";s:61:"request-timeout-error-while-importing-the-flow-step-templates";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-04-17T21:43:43+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:121;O:8:"stdClass":8:{s:2:"id";i:37316;s:5:"title";s:55:"How to Pre-Fill the Checkout Fields via URL Parameters?";s:7:"content";s:2136:"CartFlows now includes a feature to pre-fill checkout fields by passing customer information through URL parameters. After many requests, we have integrated this functionality directly into CartFlows to help you streamline the checkout experience and boost conversions.



How It Works



This feature is enabled by default in CartFlows. To use it, simply send the customer data as URL parameters to your CartFlows Checkout page. The fields will automatically be populated with the provided values when the page loads.




Important: This feature only works on the CartFlows Checkout page and will not function on any other page.




How to Use URL Parameters for Pre-Filling



You can use any contact form or external source that can redirect or link to your checkout page with URL parameters appended.



For example, if you want to pre-fill the customer's first name and email address, your checkout page URL should look like this:



https://yourdomain.com/checkout-page/?billing_first_name=John&amp;billing_email=admin@admindomain.com




Supported Field Names



Below is the list of billing and shipping field names you can use in the URL parameters to pre-fill the checkout fields.







List of Billing Fields




billing_email



billing_first_name



billing_last_name



billing_phone



billing_address_1



billing_address_2



billing_city



billing_postcode



billing_country



billing_state



billing_company






List of Shipping Fields




shipping_email



shipping_first_name



shipping_last_name



shipping_phone



shipping_address_1



shipping_address_2



shipping_city



shipping_postcode



shipping_country



shipping_state



Shipping_company








Disabling the Pre-Fill Feature



If you prefer to disable this feature, you can do so by adding the following code snippet to your child theme’s functions.php file. This will disable the pre-fill functionality on all CartFlows Checkout pages:



add_filter( 'cartflows_auto_prefill_checkout_fields', '__return_false' );



To use the above code, please refer to this documentation on how to safely add custom PHP code to your WordPress site.";s:3:"url";s:82:"https://cartflows.com/docs/how-to-pre-fill-the-checkout-fields-via-url-parameters/";s:4:"slug";s:54:"how-to-pre-fill-the-checkout-fields-via-url-parameters";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-27T19:22:44+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:122;O:8:"stdClass":8:{s:2:"id";i:34944;s:5:"title";s:29:"CartFlows Block Editor Blocks";s:7:"content";s:3725:"CartFlows now includes native WordPress blocks, making it easier to build and customize your funnel steps using the Block Editor.



These blocks are designed to streamline the funnel-building process and are categorized into blocks available in both the Free and Pro versions.



Available Blocks



You’ll find dedicated blocks for each CartFlows funnel step:




Next Step Button / Link Block



Opt-in Form Block



Checkout Form Block



Upsell &amp; Downsell Offer Blocks (includes variations and Accept/Reject options)



Order Review Block (for Thank You page)




Note: Each block only appears within its relevant funnel step in the editor. For example, the Next Step Button block will only show when editing a Landing Page.



Step-Wise Breakdown of Blocks &amp; Settings



1. Landing Page – Next Step Button Block



This block allows you to guide users to the next funnel step.








General Tab: Adjust alignment, add icons, and customize text.



Style Tab: Modify block and text colors, padding, margins, and icon styles.



Content Tab: Customize font size, typography, and content styling.



Advanced Tab: Add custom links or apply custom CSS for further control.




2. Opt-in Page – Opt-in Form Block



Use this block to collect lead information.








General Tab: Control the primary color and global typography.



Input Field Tab: Style input fields including color, alignment, and typography.



Submit Button Tab: Customize the appearance of the submit button.



Additional Tab: Add custom CSS to personalize the design.




3. Checkout Page – Checkout Form Block



Designed to handle everything from product details to payments.








Layout Tab: Choose between One-Column, Two-Column, or Two-Step layouts.



Global Tab: Set global colors and typography for the entire form.



Heading Tab: Style headings within the checkout form.



Input Fields Tab: Adjust the look and feel of form fields.



Button Tab: Design checkout and continue buttons.



Payment Section Tab: Control the design of the payment methods section.



Success/Error Messages Tab: Style messages that appear after submission.



Product Options Tab: Customize how product variations are displayed.



Order Bump Tab: Style and manage the Order Bump layout.



Additional Tab: Add custom CSS for advanced tweaks.




4 &amp; 5. Upsell &amp; Downsell Pages – Offer Blocks



These pages support product variations and feature dynamic Offer Blocks for streamlined offer handling.







Available blocks for the Upsell &amp; Downsell Pages :




Offer Accept/Reject Button



Offer Accept/Reject Link



Offer Product Title



Offer Product Price



Offer Product Description



Product Variations



Quantity Selector




All content is dynamically rendered based on the offered product.



6. Thank You Page – Order Review Block



This block is used to display post-purchase information and order details.








General Tab: Show or hide order review sections.



Spacing Tab: Adjust spacing between headings and sections.



Heading Tab: Style the heading text and typography.



Section Tab: Customize the text, colors, and fonts for each section.



Order Review Tab: Manage order item styling.



Downloads Tab: Display and style downloadable product info (if available).



Order Details Tab: Customize text and design for order metadata.



Customer Details Tab: Style billing and shipping details.



Additional Tab: Add custom CSS as needed.




These Gutenberg blocks give you full control over the design of each step, without needing shortcodes. However, if you are using another page builder, you can continue using it with guidance from our dedicated documentation on shortcode placement.";s:3:"url";s:54:"https://cartflows.com/docs/cartflows-gutenberg-blocks/";s:4:"slug";s:26:"cartflows-gutenberg-blocks";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-20T23:44:07+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:123;O:8:"stdClass":8:{s:2:"id";i:33520;s:5:"title";s:56:"How to Update Your Payment Method on the CartFlows Store";s:7:"content";s:515:"In this documentation, we’ll walk you through updating your payment method on the CartFlows store in a few simple steps.



Steps to update your payment method:



Step 1: Log in to your Account



Visit the CartFlows Store and log in using your credentials.



Step 2: Add a Payment Method



Click on the Subscriptions section from the sidebar and click the Add payment button.







Step 3: Enter your payment details



Fill in your updated payment details and click on the Add payment method button to save.";s:3:"url";s:54:"https://cartflows.com/docs/update-your-payment-method/";s:4:"slug";s:26:"update-your-payment-method";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-03-13T23:43:40+05:30";s:8:"category";a:1:{i:0;s:13:"account-store";}}i:124;O:8:"stdClass":8:{s:2:"id";i:34943;s:5:"title";s:45:"How to Renew your CartFlows Pro License Early";s:7:"content";s:737:"If you want to renew your CartFlows Pro license before the renewal date or before it expires, you can do so by following the steps below.



Renewing Your License Early



To renew your CartFlows Pro license early:




Log in to your CartFlows account.



Go to the Subscriptions from the sidebar.



Click the Renew now button.



Complete the payment process, and your license will be renewed.








What Happens After an Early Renewal?



When you renew early, your next payment date will be extended by one full billing period.



For example, if your license renews annually on May 15, 2020, and your next payment is scheduled for May 15, 2021, renewing early on November 1, 2020, will move your next payment date to May 15, 2022.";s:3:"url";s:66:"https://cartflows.com/docs/renew-your-cartflows-pro-license-early/";s:4:"slug";s:38:"renew-your-cartflows-pro-license-early";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-02-25T16:12:58+05:30";s:8:"category";a:1:{i:0;s:13:"account-store";}}i:125;O:8:"stdClass":8:{s:2:"id";i:34941;s:5:"title";s:32:"CartFlows Beaver Builder Modules";s:7:"content";s:4592:"CartFlows provides dedicated Beaver Builder modules that allow you to design and customize funnel pages more easily within the Beaver Builder editor. These modules offer enhanced styling options and greater flexibility compared to using shortcodes alone.



The modules are included in CartFlows and CartFlows Pro, and they correspond to the different funnel steps available in CartFlows.



Each module is available only on its relevant funnel step, making it easier to design the page without manually inserting shortcodes.



Available CartFlows Beaver Builder Modules



CartFlows provides modules for the key funnel elements, including:




Next Step Button / Link



Opt-in Form



Checkout Form



Upsell and Downsell Offer Elements



Order Review (Thank You Page)




When editing a step with Beaver Builder, the modules related to that specific step will appear in the Beaver Builder module list.







Modules by Funnel Step



Below is an overview of the modules available for each funnel step and the options you can configure.



Landing Step – Next Step Button Module



The Landing step includes the Next Step Button module, which allows users to proceed to the next step in the funnel.







Within this module, you can configure:



General Tab




Change the button text



Add or modify icons



Adjust button link behavior








Style Tab




Control the visual styling of the button content



Customize button appearance



Adjust colors, spacing, and layout








Typography Tab




Modify font family



Adjust font size



Customize other typography settings








Advanced Tab




Configure spacing, margins, and layout options for the module section








Opt-in Step – Opt-in Form Module



The Opt-in step includes the Opt-in Form module, which allows you to capture user information.



Within this module, you can configure:



Style Tab




Customize form text styling



Adjust field text appearance



Modify button styling








Advanced Tab




Control section spacing and layout options for the module








Checkout Step – Checkout Form Module



The Checkout step includes the Checkout Form module, which displays the complete checkout form on the page.



Within this module, you can configure:



General Tab




Configure billing and shipping field display



Enable or manage Order Bump and Pre-Checkout Offers



Manage product display options



Select the checkout layout








Style Tab




Customize headings



Adjust input field styling



Style buttons



Modify payment section appearance



Configure validation error message styling












Advanced Tab




Control margins, padding, and layout for the module container








Upsell and Downsell Steps – Offer Modules



The Upsell and Downsell steps support several modules used to display and manage offer elements. These modules also support product variations.







Available modules include:




Offer Yes / No Button – Displays buttons for accepting or rejecting the offer



Offer Yes / No Link – Displays links for accepting or rejecting the offer



Offer Product Title – Dynamically displays the offer product title



Offer Product Price – Dynamically displays the product price



Offer Product Description – Displays the product description



Offer Product Variations – Displays product variation options when available



Offer Product Quantity Field – Allows customers to select the quantity of the offered product




Each module includes styling controls within the Style tab to customize its appearance.



Thank You Step – Order Review Module



The Thank You step includes the Order Details Form module, which displays the order details after the purchase is completed.







Within this module, you can configure:



General Tab




Modify the heading displayed on the Thank You page



Enable or disable specific order review sections








Style Tab




Customize the appearance of the order review form



Adjust colors, layout, and styling options








Advanced Tab




Control spacing and layout for the module section








Additional Notes



These Beaver Builder modules provide a more flexible way to design CartFlows funnel pages without manually inserting shortcodes.



However, if you prefer to build your pages using shortcodes, you can still do so by adding the appropriate CartFlows shortcodes to your page layouts. Refer to the following documentation to learn where each shortcode should be placed for different funnel steps: https://cartflows.com/docs/placing-shortcode-in-the-right-places/";s:3:"url";s:63:"https://cartflows.com/docs/beaver-builder-modules-of-cartflows/";s:4:"slug";s:35:"beaver-builder-modules-of-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-03-14T01:54:04+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:126;O:8:"stdClass":8:{s:2:"id";i:33291;s:5:"title";s:69:"How to Setup Square Gateway for the Cartflows Upsell &#038; Downsell?";s:7:"content";s:1733:"Starting with CartFlows Pro version 1.5.10, we’ve added custom support for the much-requested Square Payment Gateway. You can now use Square to offer both upsell and downsell offers in your CartFlows funnels.



Follow the steps below to configure Square Gateway with your CartFlows setup.



Prerequisites



Before you begin, please make sure you have the following ready:




A registered Square Payment Gateway account. If you don’t have one, you can create it here.



After logging in, navigate to My Applications to retrieve your Application ID, and go to the Account section to get your Access Token.



Download and install the Square Payment Gateway plugin for WooCommerce. If you need help installing plugins, refer to this guide.



Your website must have SSL enabled, and all URLs should be forced to use HTTPS.




Steps to Enable Square Gateway



Step 1: Enable Square in WooCommerce




From your WordPress dashboard, go to: WooCommerce → Settings → Payments tab



Locate Square – Credit Card and toggle it to Enable.



Click Save Changes at the bottom of the page.








Step 2: Configure Square Settings



After enabling, a Square tab will appear under the Payments section. Click on it to begin configuration.







Step 3: Add Credentials




If you’re testing, enable the Sandbox mode checkbox.



Enter the corresponding Application ID and Access Token (for either Sandbox or Live, depending on your setup).








Once configured, your CartFlows upsell and downsell offers will be ready to accept payments via Square, giving your customers a secure and seamless checkout experience.



For more details about Square’s WooCommerce settings, you can refer to this WooCommerce documentation.";s:3:"url";s:62:"https://cartflows.com/docs/setup-square-gateway-for-cartflows/";s:4:"slug";s:34:"setup-square-gateway-for-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-28T17:54:21+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:127;O:8:"stdClass":8:{s:2:"id";i:34936;s:5:"title";s:27:"CartFlows Elementor Widgets";s:7:"content";s:3332:"CartFlows provides Elementor widgets that give you greater flexibility and control when designing your CartFlows pages. These widgets allow you to customize shortcode and build your funnel steps visually using Elementor, making the design process easier and more intuitive.



These widgets are developed by the CartFlows team and not by Elementor, and are divided into two groups, Free and Pro, to enhance your design experience.



You’ll find Elementor widgets for all CartFlows shortcodes in both Free and Pro versions:




Next Step Button/Link Widget



Optin Form Widget



Checkout Form Widget



Upsell &amp; Downsell Widgets (Product variations, Offer Accept/Reject buttons/links)



Order Review Widget (for Thank You page)








Each widget only appears on its respective page type when editing in Elementor — for example, the Next Step Button widget appears on the Landing Page, while the Checkout Form widget appears on the Checkout Page.



Page-Wise Widget Details



Landing Page – Next Step Widget



This page includes one widget: Next Step Button/Link.







Content Tab: Customize the button text and icon.







Style Tab: Includes General and Content sections for full design control of the button/link.







Advanced Tab: Modify the styling of the section that contains the widget.



Optin Page – Optin Form Widget



This page includes the Optin Form Widget. Ensure your product is Simple, Virtual, and Downloadable to use this form.







Style Tab: Customize form fields, and button appearance.







Advanced Tab: Control the styling of the section where the form is placed.



Checkout Page – Checkout Form Widget



The Checkout Form Widget allows customization for billing, shipping, and order elements.







Content Tab: Manage Checkout Layout and Product Options settings







Style Tab: Adjust the layout and design for checkout form components.







Advanced Tab: Fine-tune section-level styling and spacing.



Upsell &amp; Downsell Pages – Offer Widgets



These pages support variation products and include widgets to dynamically display offer details.







Available widgets:




Offer Accept/Reject Buttons



Offer Accept/Reject Links



Offer Product Title



Offer Product Price



Offer Product Description



Offer Product Variations



Offer Product Quantity Field



Style Tab: Customize the appearance of each widget.



Advanced Tab: Adjust section-level styling for the displayed content.




Thank You Page – Order Review Widget



This widget allows you to design the order review section and control the visibility of elements displayed on the Thank You page.



Content Tab: Control the actual content of the order review form, such as layout, text, and what elements are shown or hidden.







Style Tab: Modify the overall look and feel of the order review form.







Advanced Tab: Adjust layout and design of the containing section.



Why Use CartFlows Elementor Widgets



These widgets provide a streamlined way to design CartFlows pages without manually inserting shortcodes. They make it easier to control styling directly in Elementor, ensuring your funnel pages look professional and consistent.



If you prefer to use shortcodes instead of Elementor, refer to our shortcode documentation to see where each shortcode should be added.";s:3:"url";s:58:"https://cartflows.com/docs/elementor-widgets-of-cartflows/";s:4:"slug";s:30:"elementor-widgets-of-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-12-24T21:55:32+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:128;O:8:"stdClass":8:{s:2:"id";i:34940;s:5:"title";s:43:"How to Refresh / Flush WordPress Permalinks";s:7:"content";s:724:"In some cases, especially when a plugin creates a new Custom Post Type (CPT) or custom URL structure, WordPress permalinks may need to be refreshed. This ensures that your pages and steps load correctly and avoid 404 or layout-related errors.



This documentation explains how to manually flush or refresh WordPress permalinks.



Refresh / Flush Permalinks in WordPress



Follow the steps below to refresh your site's permalinks:




In your WordPress admin area, go to Settings &gt; Permalinks.



Without changing any settings, click the Save Changes button.








This action will flush the rewrite rules and refresh your permalinks automatically.



That’s it — your permalinks have been successfully refreshed.";s:3:"url";s:56:"https://cartflows.com/docs/refresh-wordpress-permalinks/";s:4:"slug";s:28:"refresh-wordpress-permalinks";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-04-11T14:25:37+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:129;O:8:"stdClass":8:{s:2:"id";i:34938;s:5:"title";s:66:"How to Replace First Product on the Checkout Page with Order Bump?";s:7:"content";s:1435:"CartFlows allows you to replace the first product in the cart with the Order Bump product when a user accepts the offer on the Checkout page. This can help you create more dynamic offers that adapt based on customer behavior.



When enabled, selecting the order bump will automatically swap out the first product listed on the checkout page with the bump product. If the order bump is later deselected, the original product is restored.



This is particularly useful in scenarios where you offer multiple pricing tiers or upgrade paths and want to streamline the buyer's journey by replacing the lower-tier product with the upgraded version instantly.



How to Enable the “Replace First Product” Option



Step 1: Open Your Funnel



Navigate to CartFlows → Funnels, then click on the name of the funnel where you want to enable this option.







Step 2: Access the Checkout Step



Click on the Settings icon (cog) next to the Checkout step.







Step 3: Configure Order Bump Settings



Go to the Order Bump section and click Edit Order Bump.







Step 4: Enable Replace First Product



In the Order Bumps settings, enable the Replace First Product option.







Step 5: Save Changes



Click Save Settings to apply the new configuration.



Once enabled, CartFlows will replace the first product on the checkout page with the bump product when selected, and restore it when deselected.



Frequently Asked Questions";s:3:"url";s:79:"https://cartflows.com/docs/replace-first-product-with-order-bump-checkout-page/";s:4:"slug";s:51:"replace-first-product-with-order-bump-checkout-page";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-19T21:19:12+05:30";s:8:"category";a:1:{i:0;s:10:"order-bump";}}i:130;O:8:"stdClass":8:{s:2:"id";i:34937;s:5:"title";s:64:"How to Replace the Main Checkout Order with the Upsell/Downsell?";s:7:"content";s:1996:"With CartFlows Pro version 1.6.0, we’re excited to introduce the Replace Main Order feature, designed to help you offer upgrade options directly from your Upsell or Downsell pages by replacing the original purchase made on the checkout page.



What does this feature do?



This feature allows you to offer an upgraded plan or product on your Upsell/Downsell pages and replace the main product purchased during checkout. For example, if a customer buys an Annual Plan at checkout, you can offer them a Lifetime Plan as an upsell and replace the original order with this upgraded plan seamlessly.



How does it work?



Let’s say you have two products:




Product A: Annual Plan (sold on the checkout page)



Product B: Lifetime Plan (offered as an upsell or downsell)




If you want to replace Product A with Product B after checkout, simply select Product B on your Upsell/Downsell page and enable the Cancel Main Order option.



When enabled, CartFlows will:




Charge the price difference between the upsell/downsell product and the original checkout product



Cancel the original order



Replace it with the upgraded product from the Upsell/Downsell page




Important Requirements



To use this feature successfully, please note the following:




The Create a new child order option must be enabled in CartFlows > Settings > Order tab



The upsell/downsell product price must be greater than the main checkout product price



When using multiple upsells, the main order will be replaced only by the first upsell/downsell offer that meets the criteria




How to enable the Replace Main Order feature



Follow these simple steps:



1: Go to CartFlows > Settings and click Order tab on the sidebar then enable Create a new child order







2: Open the backend settings of the Upsell/Downsell page where you want to enable the replacement



3: Select the product you want to offer as the upgrade



4: Enable the Replace Main Order option







Frequently Asked Questions";s:3:"url";s:76:"https://cartflows.com/docs/replace-main-checkout-order-with-upsell-downsell/";s:4:"slug";s:48:"replace-main-checkout-order-with-upsell-downsell";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-06T12:38:25+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:131;O:8:"stdClass":8:{s:2:"id";i:33192;s:5:"title";s:41:"How to Use A/B Split Testing in CartFlows";s:7:"content";s:2669:"Split testing (A/B testing) in CartFlows allows you to test different versions of a funnel step to determine which version performs better. You can create variations of a step and distribute traffic between them to measure conversions and optimize your funnel performance.



This documentation explains how to create and manage a split test for a funnel step in CartFlows.



Step 1: Open the Funnel




Log in to your WordPress dashboard.



Navigate to CartFlows &gt; Funnels.



Locate the funnel where you want to run the split test.



Click on the funnel to open its steps.








You will now see the Funnel Steps screen where all steps of the funnel are listed.



Step 2: Create a Variation of the Step



To run a split test, you first need a second variation of the step.




Locate the step you want to test (for example, a Checkout step).



Click the three dot icon next to the step nad select A/B Test




CartFlows will create a duplicate version of that step, which will act as the variation for testing.



You can edit the cloned step and modify elements such as:




Page design



Copy or messaging



Layout



Product details



Offers or order bumps








This allows you to test different versions of the same step.



Step 3: Configure Traffic Distribution



Inside the split test settings popup, you can control how traffic is distributed between the variations.




Click Split Test Settings (cog icon) and a popup window will open.



Use the sliders to adjust the traffic percentage for each variation.



For example:

Step A – 50%



Step B – 50%






You can adjust the percentages depending on how you want to distribute visitors between the variations.







After configuring the traffic distribution click Save Settings.



Step 4: Start Split Testing



Once you have multiple versions of the step:




In the Funnel Steps section, locate the step that now has multiple variations.



Click Start Split Test.








CartFlows will activate the split test and begin sending traffic to the different step variations according to the distribution you configured.



Monitoring Split Test Results



Once the split test is running, CartFlows will track performance metrics for each variation, including:




Views



Conversions



Revenue (when applicable)








You can monitor these metrics directly in the Funnel Steps area to determine which variation performs better.



Ending a Split Test



After collecting enough data:




Review the performance of each variation.



Select the version that performs best.



Declare the winner&nbsp; to End the split test and keep the winning variation active in your funnel.";s:3:"url";s:51:"https://cartflows.com/docs/cartflows-split-testing/";s:4:"slug";s:23:"cartflows-split-testing";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-06T12:11:00+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:132;O:8:"stdClass":8:{s:2:"id";i:34935;s:5:"title";s:56:"How Does CartFlows Work with and without Store Checkout?";s:7:"content";s:1830:"CartFlows provides two ways to handle the checkout process, with or without Store Checkout. This documentation explains how each method works and which one is best suited for your store.



How CartFlows Works without Store Checkout



By default, CartFlows funnels work independently. You can send users directly to a Landing Page or Checkout Page via ads, social media, or your website’s navigation.



Default Funnel Process:



Landing Page > Checkout Page > Upsell Page (Pro) > Downsell Page (Pro) > Thank You Page



You can use this method to:




Promote individual products via ads and social media.



Link users directly to a custom Landing Page or Checkout Page.



Add custom navigation to direct users to specific funnels.








How CartFlows Works with Store Checkout



With Store Checkout, CartFlows replaces WooCommerce’s default Checkout page. This allows you to:




Send all WooCommerce purchases through a CartFlows Checkout Page.



Support multiple products without creating a separate funnel for each one.



Offer upsells and downsells for store-wide products, increasing average order value.



Use a custom checkout experience across your entire store.




Store Checkout Process:



Shop Page > Cart Page (optional) > CartFlows Checkout Page > Thank You Page



This method is best if you:




Have a large number of products and want to use a single, optimized checkout page.



Want to redirect users from any page (product pages, social media, or ads) to a custom CartFlows checkout.








Which One Should You Use?




Use Store Checkout if you sell multiple products and want a single, optimized checkout.



Use funnels without Store Checkout if you need a custom sales journey for individual products.




For more details on setting up Store Checkout, see: Store Checkout Documentation";s:3:"url";s:79:"https://cartflows.com/docs/how-cartflows-work-with-and-without-global-checkout/";s:4:"slug";s:51:"how-cartflows-work-with-and-without-global-checkout";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-01-30T15:31:42+05:30";s:8:"category";a:1:{i:0;s:15:"getting-started";}}i:133;O:8:"stdClass":8:{s:2:"id";i:33122;s:5:"title";s:66:"How to Enable the CartFlows Step Post Types for the Page Builders?";s:7:"content";s:1263:"CartFlows steps like Landing, Checkout, Upsell, and Thank You are built using a custom post type called cartflows_step. To visually edit these steps using a page builder, that builder must support custom post types.



Most page builders automatically detect and support custom post types, including cartflows_step. However, in certain cases, you may need to manually enable it from your page builder’s settings panel.



Below is an example using the DIVI builder.The process is similar in other popular page builders like Elementor, Beaver Builder, and Brizy — typically found in their post type or integration settings.



How to Enable CartFlows Steps in DIVI?



If you're using the DIVI Builder, follow these steps to enable editing for CartFlows steps:



Using the DIVI Builder Plugin:




Navigate to the DIVI menu in your WordPress dashboard.



Click on Plugin Options.



Go to the Post Type Integration tab.



Enable the checkbox for Steps.








Using the DIVI Theme:




Navigate to the DIVI menu in your WordPress dashboard.



Click on Theme Options.



Go to the Builder tab.



Enable the checkbox for Steps.








Once enabled, you’ll be able to launch the DIVI builder when editing any CartFlows step.



Frequently Asked Questions";s:3:"url";s:78:"https://cartflows.com/docs/enable-cartflows-step-post-types-for-page-builders/";s:4:"slug";s:50:"enable-cartflows-step-post-types-for-page-builders";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-08-02T18:31:09+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:134;O:8:"stdClass":8:{s:2:"id";i:33099;s:5:"title";s:84:"How to Display the &#8220;Account Creation Fields&#8221; on CartFlows Checkout Page?";s:7:"content";s:1588:"Allowing users to create an account directly on the checkout page is a great way to streamline the purchase process and improve the overall shopping experience. With this setup, users don’t have to register separately, they can create their account while completing their purchase.



How does it work?



WooCommerce provides built-in options to collect account creation details such as username and password directly on the checkout page. These fields are displayed based on your configuration in the WooCommerce > Settings > Accounts &amp; Privacy section.



Steps to enable account creation fields



To show the account fields on the CartFlows checkout page, follow these steps:




Navigate to WooCommerce > Settings > Accounts &amp; Privacy



Under the Account creation section, enable:

Allow customers to create an account during checkout



(Optional) Enable additional options such as allowing account creation from the “My Account” page or automatically generating usernames/passwords





Save changes




Once enabled, WooCommerce will display the account creation fields on the checkout page when a non-logged-in user attempts to place an order.



Since CartFlows uses the native WooCommerce checkout functionality, the account creation fields will appear on your CartFlows checkout page as well, no additional setup is required.



Helpful Resources




For a detailed explanation of each option, check out WooCommerce’s official documentation



Prefer a visual walkthrough? Watch this step-by-step video guide.





https://www.youtube.com/watch?v=AGZSeX5I-wo";s:3:"url";s:74:"https://cartflows.com/docs/display-account-creation-fields-with-cartflows/";s:4:"slug";s:46:"display-account-creation-fields-with-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-01T22:21:35+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:135;O:8:"stdClass":8:{s:2:"id";i:32997;s:5:"title";s:56:"How to Change the &#8220;Choose A variation&#8221; text?";s:7:"content";s:1290:"When using the Product Options feature in CartFlows, customers may see a “Choose a variation” link (if there is a variable product) that opens a variation selection popup. This label can be customized to better match your store’s language, branding, or product tone.



CartFlows does not provide a setting in the dashboard to change this text, but it can be easily modified using a filter we provided.



Step 1: Choose How to Add Custom Code



You can use either of the following methods to add the filter:




Use a child theme and place the code in the functions.php file.



Use a code snippet plugin like Code Snippets for safer and easier management.




Step 2: Add the Filter Code



Copy and paste the following snippet into your chosen method:



add_filter( 'cartflows_variation_popup_toggle_text', 'change_variation_toggle_text', 10, 1 );/** * Change Choose a variation text. * * @return text. */function change_variation_toggle_text( $text ) {	return "Add your choice of text here";}



Step 3: Save Changes and Test



After saving the changes, visit your checkout page where the Product Options popup appears and confirm that the new text displays as expected.



Note: For detailed guidance on adding custom code to your site, please refer to our documentation here.";s:3:"url";s:49:"https://cartflows.com/docs/change-variation-text/";s:4:"slug";s:21:"change-variation-text";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-11T22:14:55+05:30";s:8:"category";a:1:{i:0;s:13:"code-snippets";}}i:136;O:8:"stdClass":8:{s:2:"id";i:32995;s:5:"title";s:56:"How to Allow Cache Plugins to Cache the CartFlows Pages?";s:7:"content";s:1776:"By default, CartFlows prevents its pages from being cached by common caching plugins. This is done to avoid potential conflicts and ensure that funnel steps work correctly out of the box.



However, if you understand the implications and want to allow caching on CartFlows pages for performance reasons, this documentation explains how to do it.



Why CartFlows Pages Are Not Cached



CartFlows includes special constants in its code that instruct caching plugins to skip its pages:




DONOTCACHEPAGE



DONOTCACHEOBJECT



DONOTCACHEDB




Many popular caching plugins look for these constants, and when detected, they automatically exclude the page from being cached.



How to Allow Caching for CartFlows Pages



You can disable this restriction by using a filter provided by CartFlows. This filter allows you to override the default behavior and selectively allow caching for specific step pages.



Add This Filter to Your Child Theme



To allow caching, add the following code to your child theme’s functions.php file:



add_filter( 'cartflows_do_not_cache_step', 'cache_CartFlows_pages' );

function cache_CartFlows_pages( $post_id ) {
 
// If you want to remove more pages from the cache then add those page's id in the array.

	if( in_array( $post_id , array( 'add_your_landing_page_ids_comma_separated_id_more_than_one' ) ) ){
		return false; // Cache the Pages.
	}

	return true; // Do Not cache.
}



You can find your step page IDs by going to CartFlows &gt; Funnels, opening the Funnel, then hovering over the Step name to view the ID in the URL.







In the screenshot above, the Step ID is 68.



How to Add Custom Code Safely



If you’re not sure how to add code to your functions.php file, follow this guide: How to Add Custom Code to WordPress";s:3:"url";s:72:"https://cartflows.com/docs/allow-cache-plugins-to-cache-cartflows-pages/";s:4:"slug";s:44:"allow-cache-plugins-to-cache-cartflows-pages";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-26T20:01:44+05:30";s:8:"category";a:1:{i:0;s:13:"code-snippets";}}i:137;O:8:"stdClass":8:{s:2:"id";i:32963;s:5:"title";s:79:"How to Collect the User&#8217;s Contact Data and Redirect to the Checkout Page?";s:7:"content";s:1750:"If you're looking to collect a user’s basic information before sending them to the checkout page, you can achieve this easily using either the CartFlows Optin step or a custom form on a landing page.



Option 1: Using the CartFlows Optin Step



CartFlows provides a built-in Optin step designed for lead generation. When a user submits the Optin form, an order is automatically created in WooCommerce. The user's name and email are captured and stored as part of that order.



If you’re using a CRM, you can integrate it with WooCommerce. Once integrated, your CRM plugin can sync with WooCommerce and receive the user’s contact details as soon as the order is created.



For a complete guide on setting up the Optin step, refer to this documentation.



Option 2: Using a Custom Form and Redirect



If you prefer to use your own form module (e.g., from a page builder like Elementor), you can still capture user information and redirect to the checkout page. Here’s how:



Step 1: Create a Landing Page



Design a landing page with details about your product or offer.



Step 2: Add a Contact Form



Use your page builder’s form module (e.g., Elementor Form, WPForms, etc.) to collect basic information like name and email.



Step 3: Set a Redirect URL



In the form settings, configure the redirect action so that once the form is submitted, users are sent directly to your Checkout page URL.



Step 4: Done!



When users submit the form, their data is captured by the form plugin, and they are redirected to your checkout step to complete the purchase.



Note: This method does not create a WooCommerce order automatically. If you need the lead data synced to your CRM, make sure your form plugin supports that integration.";s:3:"url";s:84:"https://cartflows.com/docs/collect-users-contact-data-and-redirect-to-checkout-page/";s:4:"slug";s:56:"collect-users-contact-data-and-redirect-to-checkout-page";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-30T20:17:13+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:138;O:8:"stdClass":8:{s:2:"id";i:32955;s:5:"title";s:46:"How to Duplicate a Funnel or Step in CartFlows";s:7:"content";s:1307:"CartFlows allows you to quickly duplicate funnels or individual steps with just one click. This is useful when you want to reuse existing layouts, settings, or configurations without building everything from scratch.



This documentation shows you how to duplicate a funnel or step from the CartFlows dashboard.



How to Duplicate a Funnel



To duplicate an entire funnel:




Go to CartFlows &gt; Funnels in your WordPress admin.



Hover over the funnel you want to copy.



Click Duplicate.








CartFlows will create a new funnel with the same steps and configurations. You can rename or modify it as needed.



How to Duplicate a Step



To duplicate a specific step:




Go to CartFlows &gt; Funnels.



Click on the funnel that contains the step you want to duplicate.



Hover over the step and click Duplicate.








The duplicated step will appear at the bottom of the funnel and will have the word “Clone” added to its title. You can rename it and drag it to a different position within the funnel if needed.



Things to Keep in Mind




Duplicating a funnel copies all its steps and their settings.



Duplicating a step copies only that step — not the entire funnel.



If you're using a page builder (like Elementor or Gutenberg), the design inside the step will also be copied.";s:3:"url";s:56:"https://cartflows.com/docs/clone-flow-step-in-cartflows/";s:4:"slug";s:28:"clone-flow-step-in-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-20T18:37:42+05:30";s:8:"category";a:1:{i:0;s:15:"flow-step-clone";}}i:139;O:8:"stdClass":8:{s:2:"id";i:32938;s:5:"title";s:57:"How to Enable/Add Coupons on the CartFlows Checkout page?";s:7:"content";s:2469:"CartFlows makes it easy to allow your customers to apply discount coupons directly at checkout. You can control the visibility of the coupon field, and even customize the field and button text to better match your brand.



Step 1: Enable Coupons in WooCommerce



Before displaying coupons on your CartFlows checkout page, make sure coupons are enabled in WooCommerce:




Navigate to WooCommerce &gt; Settings &gt; General.



Check the option “Enable the use of coupon codes”.



Create and configure your coupons under WooCommerce &gt; Marketing &gt; Coupons.




If you're new to WooCommerce coupons, you can refer to this official WooCommerce guide for detailed steps.



Once your coupons are set up, the coupon field will automatically appear on your CartFlows checkout pages.



Step 2: Show or Hide the Coupon Field on a Specific Checkout Page



You can choose to enable or disable the coupon field for each individual checkout page.



Here's how:



1: Go to CartFlows > Funnels. If you're using the Store Checkout, open the Store Checkout tab instead.







2: Click on the Settings (cog icon) for the Checkout step.







3: Navigate to the Checkout Form tab. Toggle the Enable Coupon Field option as needed.







Step 3: Customize Coupon Field and Button Text (Optional)



Need to change the default placeholder or button label? CartFlows provides a developer-friendly filter to help you personalize the coupon field text.



Add the following code to your child theme’s functions.php file:



/** * Change the CartFlows Coupon Field text and Button text. * * @param array $coupon_field array of field strings/texts. * @return array */add_filter( 'cartflows_coupon_field_options', 'change_cartFlows_coupon_field_strings', 10, 1 );function change_cartFlows_coupon_field_strings( $coupon_field ){	$coupon_field = array(		'field_text'  =&gt; __( 'Coupon Code', 'cartflows' ), // Coupon input field text/placeholder.		'button_text' =&gt; __( 'Apply', 'cartflows' ), // Apply coupon button text.		'class'       =&gt; '', // Coupon input field class.	);	return $coupon_field; // Returning the modified data with new strings.}




&#x1f4a1; Need help adding custom code to your site? Here’s a guide to walk you through the process safely.




With these settings in place, you’ll have full control over how coupons appear and function on your CartFlows checkout pages, improving the customer experience and supporting your promotional campaigns.";s:3:"url";s:60:"https://cartflows.com/docs/enable-coupons-on-cartflows-page/";s:4:"slug";s:32:"enable-coupons-on-cartflows-page";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-05T19:10:05+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:140;O:8:"stdClass":8:{s:2:"id";i:32945;s:5:"title";s:64:"Why is the Upsell/Downsell not Working or it is Getting Skipped?";s:7:"content";s:2356:"Sometimes, you may notice that even after configuring your Upsell / Downsell offers correctly, customers are redirected straight to the Thank You page without seeing those offers. Let’s look into the common reasons for this and how you can resolve them.



Cases Where Upsell / Downsell Pages Get Skipped



Case 1: Cart Total is Zero



If you’re selling a free product (cart total is zero), WooCommerce will not display payment gateway options at Checkout. Since there’s no gateway selected, the Upsell / Downsell page cannot process an additional charge, and the customer will be redirected directly to the Thank You page.



Case 2: Unsupported Payment Gateway



CartFlows currently supports specific payment gateways with Upsell/Downsell. If you use a payment gateway that is not supported, the Upsell / Downsell page will be skipped. You can review the list of supported gateways in our documentation.



Case 3: Upsell / Downsell Placed Before Checkout



If you add Upsell / Downsell pages directly after an Optin step (before the Checkout), they will be skipped. This is because the Optin step only handles free products, and no payment gateway is available at that stage.



Case 4: Checkout Modified by Other Plugins



Some third-party plugins may alter the Checkout or thank you process. If such a plugin interferes, the Upsell / Downsell steps may be bypassed. Disabling conflicting plugins and testing your flow can help identify the cause.



Case 5: Misconfigured Dynamic Offers on Checkout Step



If you’ve set up dynamic offers directly on the Checkout step, but the configuration is incorrect, it may cause the Upsell / Downsell sequence to be skipped. Double-check your dynamic offer rules and ensure they are set up properly to trigger Upsell after the main Checkout purchase.



Solution



To ensure Upsell / Downsell offers are displayed:




Place Upsell / Downsell steps after the Checkout page in your funnel.



Make sure the cart value is at least $1 so that payment gateway options appear at Checkout.



Use one of the supported payment gateways for processing Upsell/Downsell.



Verify that any dynamic offers are configured correctly to trigger after Checkout.




With this setup, your customers will complete checkout using a supported gateway, and then they’ll see the Upsell / Downsell offers as intended.";s:3:"url";s:65:"https://cartflows.com/docs/resolve-upsell-downsell-skipped-issue/";s:4:"slug";s:37:"resolve-upsell-downsell-skipped-issue";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-09-25T22:28:24+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:141;O:8:"stdClass":8:{s:2:"id";i:32911;s:5:"title";s:107:"How to Show or Hide Shipping Fields and the Ship to Different Address Option on the CartFlows Checkout Page";s:7:"content";s:1349:"When selling physical products, you’ll often need to collect the customer’s shipping details and sometimes apply shipping charges based on location. CartFlows allows you to manage when the shipping fields and the Ship to a Different Address option appear on your Checkout pages.



Step 1: Set Up Shipping in WooCommerce



Shipping fields are controlled by WooCommerce. To display them on the Checkout page, you’ll first need to set up shipping zones and rates:




Go to WooCommerce &gt; Settings &gt; Shipping.



Create Shipping Zones based on the regions where you ship.



Add the appropriate Shipping Methods and rates.




If shipping zones and methods are not set up, the shipping fields will not appear on your Checkout page.



For a detailed guide, refer to WooCommerce’s Shipping Documentation.



Step 2: Enable or Disable Shipping Fields in CartFlows



Once your shipping setup is ready, you may want to enable or hide the shipping fields on specific CartFlows Checkout pages. Here’s how:



1: Go to CartFlows &gt; Funnels &gt; Your Funnel.







2: Open the Checkout step and click Settings.







3: Navigate to the Checkout Form > Form Settings tab.



4: Toggle Enable Ship to Different Address on or off, depending on your preference.







5: Click Save Settings to update your page.



Frequently Asked Questions";s:3:"url";s:63:"https://cartflows.com/docs/ship-to-different-address-cartflows/";s:4:"slug";s:35:"ship-to-different-address-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-05T20:33:50+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:142;O:8:"stdClass":8:{s:2:"id";i:32885;s:5:"title";s:66:"How to Fix &#8220;Page Not Found&#8221; on Checkout During Payment";s:7:"content";s:1063:"If you see a “Page Not Found” message when a customer is redirected to the payment gateway from the CartFlows Checkout page, it’s likely caused by a missing default WooCommerce page setting.



This documentation explains the cause and how to resolve it.



Why This Happens



Some payment gateways use the default WooCommerce Checkout page to process payments. During checkout, when the customer is redirected to the payment gateway’s form, WooCommerce uses the order-pay endpoint on its default checkout page.



If the WooCommerce Checkout page is not created or not assigned correctly under WooCommerce settings, this will result in a “Page Not Found” error.



How to Fix the Error



To resolve the issue:




Go to WooCommerce &gt; Settings &gt; Advanced.



Under the Page setup section, find the Checkout page dropdown.



Select a valid page from the dropdown. This should be a standard page created by WooCommerce.




Click Save changes.







If the Checkout page is missing, follow this WooCommerce guide to recreate the default pages.";s:3:"url";s:68:"https://cartflows.com/docs/resolve-page-not-found-message-cartflows/";s:4:"slug";s:40:"resolve-page-not-found-message-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-14T22:56:29+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:143;O:8:"stdClass":8:{s:2:"id";i:32887;s:5:"title";s:49:"How to Turn Off the Auto-fill of Checkout Fields?";s:7:"content";s:1322:"By default, CartFlows helps improve the checkout experience by automatically filling in previously entered billing or shipping information. This feature is designed to make it faster and easier for returning users to complete their purchase.



CartFlows stores this data locally in the user’s browser—nothing is saved on the server or shared with others. This means the information will only auto-fill for the same user using the same browser and device.



While this improves convenience, there may be scenarios where you prefer to disable this auto-fill behavior—especially on shared devices or for privacy-focused setups.



How to Disable Auto-Fill Using a Filter



To turn off the auto-fill feature, you can use the following filter in your child theme’s functions.php file:



/** * Filter to enable/disable the auto-fill of checkout fields  * * @param  string $allow having yes/no * @return string $allow yes or no */add_filter( 'cartflows_allow_persistence', 'do_not_store_persistance_data', 10, 1 );function do_not_store_persistance_data( $allow ){	$allow = 'no';	return $allow;}




&#x1f4a1; Need help adding custom code? Here’s how to safely add code snippets to your site.




Once this filter is in place, CartFlows will no longer pre-fill any checkout field data from a user's previous session.";s:3:"url";s:62:"https://cartflows.com/docs/turn-off-auto-fill-checkout-fields/";s:4:"slug";s:34:"turn-off-auto-fill-checkout-fields";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-07-07T17:45:56+05:30";s:8:"category";a:1:{i:0;s:13:"code-snippets";}}i:144;O:8:"stdClass":8:{s:2:"id";i:32873;s:5:"title";s:89:"How to Enable the Theme&#8217;s Scripts &#038; Styles without Changing the Page Template?";s:7:"content";s:1619:"By default, CartFlows intentionally does not load your theme’s header, footer, or styling on funnel pages. This ensures maximum flexibility and avoids design conflicts—especially helpful when creating focused, distraction-free checkout experiences.



Why the Header &amp; Footer Are Hidden



To maintain full design control and prevent potential layout issues, CartFlows uses its own template for funnel pages. If you'd prefer to show your theme’s header and footer, the recommended approach is to set the page template to Default in the page editor. Here’s how to do that.



However, in some cases, you may notice that the header and footer appear without styling—especially when not using a Default template. If you’d like to load your theme’s CSS and JavaScript files without changing the page template, you can use the following filters.



How to Load Theme Scripts &amp; Styles with a Filter



Add the following code snippet to your child theme’s functions.php file:



/** * Filter to load theme's styles &amp; scripts.  * * @param  bool $remove_styles true/false * @return bool $remove_styles true/false */add_filter( 'cartflows_remove_theme_styles', 'wcf_load_theme_files', 10, 1 );add_filter( 'cartflows_remove_theme_scripts', 'wcf_load_theme_files', 10, 1 );function wcf_load_theme_files( $remove_styles ){		$remove_styles = false;	return $remove_styles;}




&#x1f4a1; Need help adding custom code? Follow this guide to safely insert custom code into WordPress.




Once added, your theme’s styles and scripts will load on CartFlows pages—even if you're not using a Default template.";s:3:"url";s:67:"https://cartflows.com/docs/enable-themes-style-for-existing-layout/";s:4:"slug";s:39:"enable-themes-style-for-existing-layout";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-04T17:49:22+05:30";s:8:"category";a:1:{i:0;s:13:"code-snippets";}}i:145;O:8:"stdClass":8:{s:2:"id";i:32870;s:5:"title";s:69:"How to Turn Off the Auto-fill of Address Fields on Entering Zip-Code?";s:7:"content";s:1372:"CartFlows includes a convenient feature that automatically fills in the Country, State, and City fields on your checkout page based on the zip code entered by the customer. This functionality is powered by the Zippopotam API, which looks up location details for recognized zip codes and auto-fills the corresponding fields to streamline the checkout process.



However, in some scenarios, you may want to disable this behavior, for example, when using custom fields or serving regions where this data is unreliable.



Disable Auto-Fill Using a Filter



To turn off this auto-fill functionality, you can use the following WordPress filter:



/** * Filter to enable/disable the address auto-fill using the zip code.  * * @param  string $allow having yes/no * @return string $allow yes or no */add_filter( 'cartflows_autocomplete_zip_data', 'wa_disable_autocomplete_zipcode', 10, 1 );function wa_disable_autocomplete_zipcode( $allow ) {    $allow = 'no';    return $allow;}



How to Add This Code



To apply this filter, add the snippet to your child theme’s functions.php file or use Code Snippets plugin. If you're unsure how to safely add custom code to your site, we recommend reviewing this guide on adding custom code.



Once added, CartFlows will no longer auto-fill the address fields when a zip code is entered, allowing full manual input from the customer.";s:3:"url";s:61:"https://cartflows.com/docs/turn-off-auto-fill-address-fields/";s:4:"slug";s:33:"turn-off-auto-fill-address-fields";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-12T22:24:27+05:30";s:8:"category";a:1:{i:0;s:13:"code-snippets";}}i:146;O:8:"stdClass":8:{s:2:"id";i:32891;s:5:"title";s:51:"How to Fix Recovery Emails Going to the Spam Folder";s:7:"content";s:2441:"If your recovery emails from the Cart Abandonment Recovery for WooCommerce plugin are landing in the Spam folder, it's important to understand that the plugin does not send emails directly.



The emails are delivered through your website host or an SMTP plugin if one is set up. That means the issue is related to how emails are sent from your site, not how Cart Abandonment is configured.



Why Recovery Emails Go to Spam



Email providers automatically filter emails that look suspicious, poorly configured, or lack important authentication. Here are common reasons why recovery emails may be flagged as spam:



1. Missing SPF, DKIM, or DMARC Records



These DNS records help verify that your site is authorized to send email from your domain. Without them, email services may not trust the message and send it to spam.



2. Using a Free Email Address



Sending emails from an address like yourstore@gmail.com or yourname@yahoo.com lowers deliverability. Always use an email based on your own domain (e.g., support@yourdomain.com).



3. Spam-Triggering Words in Subject or Content



Words like “Buy now,” “Click here,” or “Limited offer” - especially in all caps - can increase the chances of emails being flagged. Keep your messaging clean, helpful, and aligned with your brand voice.



4. Poor Sender Reputation



If your domain has a history of bounced or reported emails, email services may treat all future messages from it as suspicious. This includes sending emails too frequently or to invalid addresses.



5. Lack of User Consent



Sending emails to users who didn’t explicitly opt-in can lead to spam complaints, which damages your sender reputation. Always get clear consent and provide a way to unsubscribe.



6. Low-Quality Content or Layout



Emails that are just one big image, have broken links, or include poor formatting can be flagged by spam filters. Use a mix of clean text and minimal design.



What You Can Do to Fix It




Use an SMTP plugin like SureMail to improve email delivery.



Set up and verify your domain’s SPF, DKIM, and DMARC records. Your hosting provider can help with this.



Always use a domain-based sender email address.



Avoid using aggressive marketing language in subject lines and content.



Test your emails using a service like mail-tester.com to identify problems.



Contact your hosting provider for help reviewing your server’s email configuration.";s:3:"url";s:61:"https://cartflows.com/docs/resolve-recovery-email-spam-issue/";s:4:"slug";s:33:"resolve-recovery-email-spam-issue";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-08-21T21:52:44+05:30";s:8:"category";a:1:{i:0;s:16:"cart-abandonment";}}i:147;O:8:"stdClass":8:{s:2:"id";i:32811;s:5:"title";s:59:"How to Use WooCommerce Subscription Products with CartFlows";s:7:"content";s:2099:"Subscription products allow you to sell access to a product or service on a recurring basis whether daily, monthly, or yearly. With CartFlows, you can easily include subscription products in your funnels, but the first step is to create them using WooCommerce.



What Are Subscription Products?



Subscription products are items that customers purchase with a recurring payment schedule. Instead of a one-time payment, they are billed automatically at the chosen interval (for example, every month or year) to continue receiving the product or service.



Step 1: Install WooCommerce Subscriptions



To create subscription products, you’ll need the official WooCommerce Subscriptions plugin. You can download it directly from WooCommerce and follow their step-by-step guide here: WooCommerce Subscriptions Documentation.



Step 2: Create a Subscription Product



Once the plugin is installed, you can create a new subscription product in WooCommerce. During setup, define the product name, pricing, billing interval (daily, monthly, yearly, etc.), and other relevant options.



Step 3: Assign Subscription Products in CartFlows



After creating your subscription product, you can assign it to CartFlows checkout or offer pages.



1: Navigate to CartFlows &gt; Funnels &gt; Your Funnel.







2: Open the Checkout, Upsell, or Downsell step where you want to assign the subscription product.







3: Go to the Product tab and search for your subscription product and Add it







4: If you’re using multiple simple or variable subscription products, enable Product Options.



5: For variable subscription products, enable the Variation Option to display choices on the checkout page.







Note: On Upsell and Downsell pages, use shortcodes to display product variations. Refer to the dedicated shortcodes documentation for details.



6: Click Save Settings to apply changes.



You’ve successfully created and assigned subscription products in CartFlows. Now you can sell subscriptions directly through your funnels, giving your customers a seamless recurring payment experience.";s:3:"url";s:68:"https://cartflows.com/docs/use-subscription-product-cartflows-pages/";s:4:"slug";s:40:"use-subscription-product-cartflows-pages";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-06T11:39:21+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:148;O:8:"stdClass":8:{s:2:"id";i:32836;s:5:"title";s:65:"How to Resolve the “CartFlows Pro: Download not found.” Error";s:7:"content";s:1746:"If you see the error message “CartFlows Pro: Download not found.” while updating the plugin, follow the steps below to resolve the issue.



Why Does This Error Occur?



This error happens because of cache-related issues. When updating the CartFlows Pro plugin, your website may still be using an outdated instance ID stored in the cache instead of the latest one. As a result, WordPress cannot retrieve the correct update package, leading to the Download not found error.



Fixing the Error



To update CartFlows Pro successfully, follow these steps:



Step 1: Clear all cache




Clear your browser cache.



Clear your website’s cache and server-side cache.




Step 2: Deactivate caching plugins



Temporarily disable caching plugins (e.g., WP Rocket, SG Optimizer).



Step 3: Deactivate the CartFlows Pro license



Go to CartFlows settings and deactivate your license.







Step 4: Deactivate the CartFlows Pro plugin



Navigate to Plugins and deactivate CartFlows Pro.







Step 5: Reactivate the CartFlows Pro plugin



Activate the plugin again from the Plugins page.







Step 6: Re-activate your license



Click on the Activate License button to reactivate your license.







Step 7: Check for updates manually



Go to Dashboard &gt; Updates to check available update manually.







Step 8: Update the CartFlows Pro plugin



Try updating the plugin again and it should now work without errors.



Step 9: Re-enable caching plugins



Reactivate any caching plugins you previously disabled.



Note
Some caching plugins (such as WP Rocket or SG Optimizer) cache your database, which can interfere with plugin updates.Always clear cache and disable caching plugins before updating CartFlows Pro to avoid issues.";s:3:"url";s:68:"https://cartflows.com/docs/resolve-download-not-found-error-message/";s:4:"slug";s:40:"resolve-download-not-found-error-message";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-06T12:52:36+05:30";s:8:"category";a:1:{i:0;s:20:"installation-updates";}}i:149;O:8:"stdClass":8:{s:2:"id";i:32820;s:5:"title";s:56:"How to Import Ready-Made Templates for Funnels and Steps";s:7:"content";s:2174:"CartFlows provides a library of professionally designed templates for full funnels and individual steps. You can use these templates to quickly set up your funnels using the page builder of your choice.



Currently, CartFlows offers ready-made templates for the following page builders:




Elementor



Divi (requires manual import – see this doc)



Beaver Builder



Block Editor (Gutenberg)




Before You Begin



Make sure to select your preferred page builder in CartFlows &gt; Settings, under the Page Builder option. This ensures that only compatible templates will appear when importing.



How to Import a Ready-Made Funnel Template




Go to CartFlows &gt; Funnels.



Click the Create New Funnel button.



A template library will open. Browse through the available templates based on your selected page builder.



Click the View All Steps button on the template you want to use.



Click the Import Funnel button to begin importing the funnel.








The full funnel will be imported, including steps like Landing, Checkout, Thank You, and more all pre-designed and ready for customization.



How to Import a Ready-Made Step Template




Open the funnel where you want to add a new step.



Click Add New Step.



The step template library will open, showing designs for different step types: Landing, Checkout, Upsell, Downsell, Thank You, and Opt-in.



Use the filter to select the type of step you want to import.



Hover over the template you want and click Import.








This action will add the selected step design directly into your funnel.



Troubleshooting Template Import Errors



If you encounter an error while importing, here are the most common causes:




Failed to import the templateReload the page and try again. This often resolves temporary connectivity or cache-related issues.



Internal Server Error (500) Check the debug.log file in your /wp-content/ directory for details.



Under maintenanceThis may happen if the CartFlows template server is under maintenance or if an API call was blocked. Check your browser’s console for more information.




If the issue continues, try reloading the page or contact our support.";s:3:"url";s:70:"https://cartflows.com/docs/import-cartflows-templates-for-flows-steps/";s:4:"slug";s:42:"import-cartflows-templates-for-flows-steps";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-04T18:58:36+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:150;O:8:"stdClass":8:{s:2:"id";i:32841;s:5:"title";s:45:"Supported Multi-Currency Plugin for CartFlows";s:7:"content";s:1364:"CartFlows supports the official WooCommerce Multi-Currency plugin. This documentation explains how to use it with CartFlows and what to expect when placing the currency switcher on CartFlows pages.



Download and Set Up the Plugin



You can download the WooCommerce Multi-Currency plugin from its page on the official WooCommerce marketplace: https://woocommerce.com/products/multi-currency/



To configure the plugin, follow the setup guide provided by its developer: WooCommerce Multi-Currency Setup Guide



Display the Currency Switcher on CartFlows Pages



The plugin includes shortcodes that allow you to display a currency switcher anywhere on your site. You can place this shortcode on the Landing or Checkout page used in your CartFlows Funnel.



Note: The multi-currency shortcode cannot be embedded inside the CartFlows shortcode. Both are separate and need to be placed independently.



Using the Switcher in the Header, Footer, or Widgets



CartFlows does not load your theme’s header, footer, or widget areas by default. So if you add the currency switcher in those locations, it may not appear on CartFlows pages.



To display the switcher in these areas:




Edit the page used in your CartFlows step.



Change the page template to Default.




For more details, refer to this doc: How to Use Your Theme’s Header &amp; Footer in a Step";s:3:"url";s:68:"https://cartflows.com/docs/use-multi-currency-plugin-with-cartflows/";s:4:"slug";s:40:"use-multi-currency-plugin-with-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-20T18:30:34+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:151;O:8:"stdClass":8:{s:2:"id";i:32847;s:5:"title";s:92:"How to Fix &#8220;The Following Required Query String Data is Missing: Instance&#8221; Error";s:7:"content";s:1626:"If you see the error message “The Following Required Query String Data is Missing: Instance” while activating your CartFlows Pro license, it usually means the plugin is unable to generate or retrieve a required instance ID.



This documentation explains what causes this error and how to resolve it.



When This Error Occurs



This message typically appears in the license activation popup on the Plugins page when one of the following conditions exists:



1. The Site Was Cloned or Migrated



If your website was cloned or migrated to another domain or host, the instance ID tied to your original site may no longer be valid. The plugin may not be able to generate a new instance correctly during license activation.



2. Caching Is Preventing the Instance from Being Stored



Sometimes caching (local, plugin-based, or server-level) prevents the instance ID from being stored in the database. When the API call is made to validate the license, it fails because the required instance value is missing.



How to Fix the Issue



Follow these steps to resolve the error and activate your CartFlows Pro license:




Clear all cache on your site - including your browser, local, and server-side cache.



Temporarily deactivate any cache plugin you have installed.



Deactivate the CartFlows Pro plugin.



Reactivate the CartFlows Pro plugin.



Click the Activate License button.



Enter your license key or API key.



Click Activate.




Note: Always make sure to clear all cache and disable any cache plugins before activating your CartFlows Pro license to avoid conflicts with the license instance generation.";s:3:"url";s:93:"https://cartflows.com/docs/resolve-required-query-string-data-missing-instance-error-message/";s:4:"slug";s:65:"resolve-required-query-string-data-missing-instance-error-message";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-14T23:12:31+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:152;O:8:"stdClass":8:{s:2:"id";i:32791;s:5:"title";s:61:"What to Do if the Order Status is Stuck at MainOrderAccepted?";s:7:"content";s:2449:"If some of your orders remain stuck at the "MainOrderAccepted" status, this documentation will help you understand why it happens and how to resolve it.







Why Orders Get the "Main Order Accepted" Status



This status occurs when the Order Settings in CartFlows are set to Add to main order. This option merges all accepted upsell/downsell offers into the main order. The MainOrderAccepted status is assigned by CartFlows after a purchase is made on the checkout page. This temporary status exists because CartFlows may display additional upsell or downsell offers after checkout.




If the customer completes the funnel (including upsells/downsells), the order will move forward normally.



If the customer abandons the process by closing the upsell/downsell page or browser window, the order may remain in MainOrderAccepted.




To handle this, CartFlows uses a scheduled task (WP-Cron) to automatically update the order status after 30 minutes.



Why the Status Might Be Stuck



If the WP-Cron job does not run as expected, orders may stay in the MainOrderAccepted status. This usually happens due to:




Plugin Conflicts – Another plugin may be interfering with the WP-Cron execution.



Disabled Cron Service – Some hosting providers disable the cron service by default.




How to Troubleshoot



Step 1: Verify the WP-Cron




Install and activate the WP Crontrol plugin.



Search for the cron event named cartflows_schedule_normalize_order_status.



Check the Next Run Time to confirm whether it’s scheduled correctly.




Step 2: Test for Plugin Conflicts




Temporarily deactivate all plugins except WooCommerce, CartFlows, and your page builder.



Place a test order and close the browser as soon as the upsell/downsell page loads.



Re-check the cron event in WP Crontrol and wait 30 minutes.



If the order status updates correctly, another plugin is conflicting. Reactivate plugins one by one to find the culprit.




Step 3: Check Hosting Cron Settings



If the cron job is missing or not running:




Contact your hosting provider and ask them to enable the server cron service.



Once enabled, CartFlows’ scheduled tasks will run automatically and update order statuses.




Important Note



In many cases, hosting providers include cron services but keep them disabled by default. A quick request to enable it will resolve the issue and ensure orders move out of the MainOrderAccepted status as expected.";s:3:"url";s:60:"https://cartflows.com/docs/order-stuck-at-mainorderaccepted/";s:4:"slug";s:32:"order-stuck-at-mainorderaccepted";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-09-18T16:50:14+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:153;O:8:"stdClass":8:{s:2:"id";i:32739;s:5:"title";s:50:"How and Where to Add Custom JS, CSS, and PHP Codes";s:7:"content";s:1408:"You may sometimes need to add custom JavaScript, CSS, or PHP code to your site for custom functionality or styling. Below are the methods to safely do this.



Use a Plugin (Recommended for Most Users)



For simplicity and safety, you can use a plugin that allows adding custom code without touching theme files. This works for JavaScript, CSS, and PHP.



We recommend:




Code Snippets&nbsp;



WPCode



Woody code snippets




These plugins let you manage your code snippets in a user-friendly way, and they remain active even after theme updates.



Add Custom JavaScript



CartFlows Funnels Only



Go to Funnel Setting > General section. The script will only apply to the specific funnel.







Add Custom CSS



Custom CSS can be added to two places, either add it to a specific funnel or to the Customizer.



Adding custom CSS to a specific funnel can be done similar like adding JavaScript to a funnel. Go to Funnel Settings > General section. The CSS will be applied only to the specific funnel.







Adding custom CSS to the Customizer can be done by going to to Appearance > Customize > Additional CSS.







Add Custom PHP



Using a Child Theme



Add your PHP code inside the functions.php file of your child theme.







Using a child theme ensures your custom code won’t be lost when updating the theme. If you’re not familiar with what a child theme is, refer to this article.";s:3:"url";s:44:"https://cartflows.com/docs/add-custom-codes/";s:4:"slug";s:16:"add-custom-codes";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-05T13:30:39+05:30";s:8:"category";a:1:{i:0;s:14:"developer-docs";}}i:154;O:8:"stdClass":8:{s:2:"id";i:32710;s:5:"title";s:58:"Introducing the “Separate Orders” Feature in CartFlows";s:7:"content";s:2230:"CartFlows has a powerful new option called Separate Orders, available in CartFlows Pro. This feature gives you the ability to create individual orders for Upsell and Downsell purchases instead of combining them into a single WooCommerce order.



This can help streamline order management, improve refund handling, and ensure proper email notifications are sent for each order stage.



Order Setting



The Create a new child order option allows separate orders to be generated for each accepted offer.



You’ll find this setting under CartFlows &gt; Settings &gt; Order



Here, you'll see two available options:




Create a new child orderThis creates individual orders for each Upsell or Downsell product. The original checkout order becomes the parent order, and each subsequent accepted offer is logged as a separate WooCommerce order.



Add to the main orderThis is the default behavior, where all accepted Upsell and Downsell products are merged into the original checkout order.








Where the Orders Appear



Each new child order will be visible in WooCommerce &gt; Orders, making it easy to track, manage, and take action on each order individually.







CartFlows Parent Order







CartFlows Upsell / Downsell Order



Why Use Separate Orders?



Enabling this feature can help in several key areas:




Simplified refundsProcess returns for Upsell or Downsell products without affecting the main order.



Email notificationsWooCommerce will automatically send order-related emails for each child order, ensuring timely communication with your customers.



Improved access for digital productsIf you're selling courses or memberships as upsells, customers will gain access immediately upon purchase since each product has its own completed order.



Better status trackingSolves the issue where incomplete funnel exits (e.g., closing the browser during an Upsell) previously left the order in an intermediate MainOrderAccepted status.




This feature provides greater flexibility for store owners who want more granular control over how upsell and downsell purchases are handled in WooCommerce. You can now decide whether to keep everything in a single order or split them based on your business needs.";s:3:"url";s:63:"https://cartflows.com/docs/introducing-separate-orders-feature/";s:4:"slug";s:35:"introducing-separate-orders-feature";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-05T15:29:35+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:155;O:8:"stdClass":8:{s:2:"id";i:32737;s:5:"title";s:75:"How to Resolve Large Stripe Payment Icons and Uneditable Credit Card Fields";s:7:"content";s:3201:"If you're seeing oversized Stripe payment icons or the credit card fields are unresponsive on the checkout page, this guide will walk you through resolving the issue.This behavior is usually related to caching problems, where Stripe's AJAX call fails to fetch required styling and form fields. Let’s break down the common causes and how to fix them.



What Causes This Issue?



Stripe uses dynamic JavaScript to load its CSS and payment fields. If this AJAX call is cached or blocked, it can result in:




Card icons appearing unusually large



Card input fields not responding or editable




In most cases, the browser’s developer console will show a 403 error response from Stripe, which prevents the card fields and styles from loading correctly.



How to Identify the 403 Error



Follow these steps to check for the error:




Open the affected checkout page.



Right-click on the page and select Inspect.



Go to the Console tab.



Look for any error messages, especially ones related to Stripe or 403 errors.




Possible Reasons and Solutions



1. Page Caching (Local or Server-Side)



Dynamic requests like Stripe’s payment fields should not be cached. Make sure your CartFlows checkout page is excluded from:




Page caching



Server-level caching (e.g., Varnish, NGINX, or hosting-level rules)



CDN-level caching (e.g., Cloudflare)




Tip: Most cache plugins allow you to exclude specific pages. Ensure both CartFlows’ Checkout and Thank You pages are excluded.



2. Firewall or Security Plugins



Security/firewall plugins (like Wordfence or Sucuri) may block Stripe’s requests if flagged as suspicious. Whitelist the checkout page and allowlist Stripe's script URLs if necessary.



3. Hosting Restrictions



Some hosting setups only allow payment requests on the default WooCommerce checkout page. Since CartFlows uses a custom page, your host may require manual exclusion rules for it. Contact your hosting provider to:




Exclude the CartFlows Checkout page from security rules



Allow dynamic AJAX calls on custom URLs




4. Plugin or Theme Conflicts



If the above steps don’t solve the issue, perform a conflict test:




Disable all other plugins except WooCommerce, CartFlows, and Stripe



Switch to a default theme (like Storefront)



Re-test the checkout page



Gradually re-enable plugins to identify the conflict




To find out the conflict you can also follow these troubleshooting steps.



What Is a 403 Error?



A 403 Forbidden error means the server understands your request but is refusing to authorize it. In the case of Stripe, this often means the server or a plugin is blocking access to essential resources due to caching or security rules.



Still Seeing the Issue?



If the issue persists:




Open the checkout page in a new tab



Inspect the console again for updated error messages



Note the filename or script generating the error



Reach out to the plugin author or submit a ticket through the CartFlows support portal




Note
Payment gateway scripts rely on real-time data and should never be cached. Ensuring dynamic checkout pages are excluded from all caching mechanisms is crucial for proper functionality.";s:3:"url";s:74:"https://cartflows.com/docs/resolve-stripe-icons-issue-fields-not-editable/";s:4:"slug";s:46:"resolve-stripe-icons-issue-fields-not-editable";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-15T13:14:01+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:156;O:8:"stdClass":8:{s:2:"id";i:32731;s:5:"title";s:65:"How to Resolve “No product is selected&#8230;” error message?";s:7:"content";s:697:"In this article, you will get to know how to resolve the error message that you are currently facing on your checkout page -



The meaning of this error message is, there is no product selected in the backend settings of the CartFlows Checkout page and the same checkout page is opened directly via URL / Link / Permalink.











Now, if you open the checkout page with this setting then you will see the “No product is selected. Please select products from the checkout meta settings to continue” error message on the checkout page.







To solve this error message you need to make sure the funnel is in the Test Mode or select the product in the backend setting of the Checkout Page.";s:3:"url";s:69:"https://cartflows.com/docs/resolve-no-product-selected-error-message/";s:4:"slug";s:41:"resolve-no-product-selected-error-message";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-20T19:14:32+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:157;O:8:"stdClass":8:{s:2:"id";i:32735;s:5:"title";s:88:"How to Add Custom Payment Gateway Support for One-Click Upsell and Downsell in CartFlows";s:7:"content";s:2265:"You can integrate your own payment gateway with CartFlows to support one-click Upsell and Downsell functionality. This requires a few steps to register your gateway and handle the payment process through code.



Follow the steps below to add custom support:



Step 1: Register Your Payment Gateway



You’ll need to define a custom class and file name, then register them with CartFlows.



To do this, either:



Option A: Manually add them inside the CartFlows Pro plugin




Go to the cartflows-pro/classes/class-cartflows-pro-gateways.php file



Find the get_supported_gateways function



Add your class and file to the returned array




Option B: Use the available filter (recommended if adding support via a plugin or theme):



add_filter( 'cartflows_offer_supported_payment_gateways', 'your_function_name' );

/**
 * Add new payment gateway in Supported Gateways.
 *
 * @param array $supported_gateways Supported Gateways by CartFlows.
 * @return array.
 */
function your_function_name( $supported_gateways ){
	
	$supported_gateways&#91;'payment_gateway_slug'] = array(
		'file'  =&gt; 'yourfilename.php', // Your Custom code's file name
		'class' =&gt; 'YourClassName',   // Class name used in the Custom Code's file.
                'path'  =&gt; 'FullDirectoryPathofTheFile', // Full directory path of the custom code's file.
	);

	return $supported_gateways; // Adding the payment gateway name.
}




Note: Use the path only if your file is located outside the CartFlows Pro plugin directory.



Step 2: Write the Payment Processing Function



Inside your custom file, create a function named process_offer_payment. CartFlows will call this automatically when processing the Upsell or Downsell.



This is where your payment logic goes. It should handle charging the customer after the main checkout is completed and the offer is accepted.



Step 3: Place the Custom File in the Correct Directory



If you’re not using a custom path, place your file in:



cartflows-pro/modules/gateways/



You can refer to existing gateway files in that directory to understand how to structure your implementation.



Note: We also offer a sample plugin you can use as a reference when building your own custom gateway integration. Download Sample Plugin";s:3:"url";s:69:"https://cartflows.com/docs/add-custom-support-of-any-payment-gateway/";s:4:"slug";s:41:"add-custom-support-of-any-payment-gateway";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-07-08T16:53:15+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:158;O:8:"stdClass":8:{s:2:"id";i:32700;s:5:"title";s:87:"How to Resolve &#8220;Order Does not Exist Error&#8221; on Upsell &#038; Downsell Page?";s:7:"content";s:1490:"If you see the error message “Order does not exist” on your upsell or downsell pages, this documentation will help you understand why it occurs and how to fix it.







Why This Error Appears



This message is specific to upsell and downsell pages in CartFlows. It usually means the checkout process was not completed before trying to access the upsell or downsell page. In other words, the system could not find a valid order to attach the upsell/downsell offer to.



Common Scenarios That Trigger the Error



Case 1: Accessing Upsell/Downsell Pages Directly



If you open the upsell or downsell page directly by its URL (without first completing the checkout) and then click Accept Offer, the error will be displayed.




Note: This happens only when you are logged in.




Case 2: Placing Upsell/Downsell Before Checkout



If an upsell or downsell step is placed before the checkout page in the funnel, the system has no main order to connect the offer with. As a result, attempting to accept the offer will show the error message.




Tip: Upsell and downsell pages should always be placed after the checkout step.




How to Fix




Ensure upsell and downsell steps are positioned after the checkout page in your CartFlows funnel.



Do not test upsell/downsell steps by directly opening their URL; instead, go through the full checkout process first.




By following these practices, the error will no longer appear, and your upsell/downsell offers will function correctly.";s:3:"url";s:62:"https://cartflows.com/docs/resolve-order-does-not-exist-error/";s:4:"slug";s:34:"resolve-order-does-not-exist-error";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-09-18T17:39:10+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:159;O:8:"stdClass":8:{s:2:"id";i:32688;s:5:"title";s:30:"Abandoned Orders Not Capturing";s:7:"content";s:1746:"If your Cart Abandonment Recovery for WooCommerce plugin is not capturing abandoned orders, this documentation will guide you through the possible causes and solutions.



Why Abandoned Orders Might Not Be Captured



The most common reason for abandoned orders not being recorded is a disabled WP-Cron on your WordPress site.



What Is WP-Cron?



WP-Cron is WordPress’s built-in system for scheduling time-based tasks, such as publishing scheduled posts or running automated plugin functions. It acts as a task scheduler that allows WordPress to perform actions at specific intervals.



For more information, refer to this detailed article on WP-Cron.



Why WP-Cron Is Important for the Plugin



The Cart Abandonment Recovery for WooCommerce plugin relies on WP-Cron to detect and mark abandoned carts.



It uses a scheduled cron job named cartflows_ca_update_order_status_action that runs every 15 minutes to check for incomplete orders and mark them as abandoned when appropriate.



If WP-Cron is disabled, this job will not run, and abandoned orders will not be captured.



How to Enable WP-Cron



To re-enable WP-Cron, locate the wp-config.php file in your website’s root directory and add the following line right after the define('DB_COLLATE', ''); line:



define('DISABLE_WP_CRON', false);



This ensures that WP-Cron is active and can execute the necessary tasks for Cart Abandonment Recovery.



Adding an External Cron Job Using cPanel



If you prefer to use an external cron job instead of WordPress’s built-in scheduler, you can set it up through cPanel. Below are a few helpful resources that explain how to do this:




Set Up Cron Jobs in cPanel (GreenGeeks)



Video: How to Set Up Cron Jobs in cPanel (YouTube)";s:3:"url";s:58:"https://cartflows.com/docs/abandoned-orders-not-capturing/";s:4:"slug";s:30:"abandoned-orders-not-capturing";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-03-25T22:06:46+05:30";s:8:"category";a:1:{i:0;s:16:"cart-abandonment";}}i:160;O:8:"stdClass":8:{s:2:"id";i:32683;s:5:"title";s:32:"Cart Recovery Emails Not Sending";s:7:"content";s:1945:"If your Cart Abandonment Recovery for WooCommerce plugin is not sending recovery (follow-up) emails, this documentation will help you understand the possible causes and guide you through the recommended solutions.



Overview



Recovery emails are automated messages sent to customers who abandon their carts before completing a purchase. These emails are triggered based on the schedule you set in the plugin’s settings and are key to recovering potential lost sales.



If recovery emails are not being sent, it’s usually related to how your website is configured to deliver outgoing emails.



Why SMTP Is Important for Recovery Emails



By default, WordPress uses your hosting server’s email function (PHP mail) to send emails. However, this method is often unreliable and can lead to messages being blocked, delayed, or marked as spam.



To ensure reliable email delivery, we recommend using an SMTP plugin such as SureMail. SMTP (Simple Mail Transfer Protocol) routes your website’s outgoing messages through a proper email server, improving deliverability and ensuring that recovery emails reach your customers’ inboxes.



For setup details, refer to the SureMail Knowledge Base.



How to Verify Recovery Email Delivery



Once you’ve installed and configured SureMail or another SMTP plugin, you can confirm that recovery emails are working properly by following these steps:



1: Send a Test EmailGo to your recovery email template settings in the plugin and use the Send Test Email option to send a sample message to your inbox.







2: Check Spam and Promotions FolderIf the test email does not appear in your inbox, check your spam or promotions folders. If it lands there or doesn’t arrive at all, follow the steps in Fix Recovery Emails Going to Spam for troubleshooting.



If the test email is delivered successfully, your SMTP setup is functioning correctly and recovery emails should now send as expected.";s:3:"url";s:55:"https://cartflows.com/docs/recovery-emails-not-sending/";s:4:"slug";s:27:"recovery-emails-not-sending";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-10-16T20:42:20+05:30";s:8:"category";a:1:{i:0;s:16:"cart-abandonment";}}i:161;O:8:"stdClass":8:{s:2:"id";i:32662;s:5:"title";s:46:"How to Use the Permalink Settings in CartFlows";s:7:"content";s:1953:"CartFlows includes its own permalink settings that let you change the slugs used in funnel and step URLs. This is different from the default WordPress permalink settings.



This documentation explains the difference between the two and how to change the CartFlows slug structure.



WordPress vs CartFlows Permalink Settings




The WordPress Permalink Settings are located under Settings &gt; Permalinks. These apply to the entire website, including CartFlows pages.



The CartFlows Permalink Settings are located under CartFlows &gt; Settings &gt; Permalink &nbsp;and control only the slugs used for CartFlows funnel and step URLs.




If your WordPress permalink structure is set to anything other than Post name, you may see URLs like:



yourdomain.com/cartflows_step/checkout-page/



Change the Permalink Slugs for CartFlows



To change the default slugs used in funnel and step URLs:




Go to CartFlows &gt; Settings in your WordPress dashboard.



Click on the Permalink tab.



Choose one of the available options:

Default Permalinks – Resets to cartflows_funnel and cartflows_step



Funnel and Step Slug – Lets you rename both funnel and step slugs at once



Funnel Slug – Lets you rename only the funnel slug



Step Slug – Lets you rename only the step slug





Enter your preferred slug values.



Click Save Changes.








This will update the structure of your CartFlows URLs across the site.



How to Remove cartflows_step from the URL



To remove cartflows_step from the URL of your funnel steps:




Set your WordPress permalink structure to Post name under Settings &gt; Permalinks.



In CartFlows &gt; Settings &gt; Permalink, choose the Default Permalinks option.



Under Post Type Permalink Base, set the step base to cartflows_step and the funnel base to cartflows_base.



Click Save Changes.








For help configuring your WordPress permalink settings, refer to this doc: Recommended Permalink Settings";s:3:"url";s:56:"https://cartflows.com/docs/cartflows-permalink-settings/";s:4:"slug";s:28:"cartflows-permalink-settings";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-04-28T22:51:54+05:30";s:8:"category";a:1:{i:0;s:18:"permalink-settings";}}i:162;O:8:"stdClass":8:{s:2:"id";i:32570;s:5:"title";s:48:"How to Use the Refund Offer Feature in CartFlows";s:7:"content";s:1694:"Refund Offer is a feature in CartFlows Pro that allows you to process refunds for offer products, specifically those purchased through Upsell and Downsell steps in your funnel.



It simplifies post-purchase management by enabling store admins to refund offer products directly from the order details screen in WooCommerce.



Supported Payment Gateways



The Refund Offer feature works only with supported online payment gateways. These include:




PayPal



Stripe



Authorize.net




It does not support offline gateways such as:




Cash on Delivery



BACS



Cheque




How to Use the Refund Offer Feature



Step 1: Open the Order



Go to WooCommerce &gt; Orders, and click on the order where the offer product was purchased.



Step 2: Locate the Offer Refund Section



If the order includes products from Upsell or Downsell steps, a CartFlows Offer Refund section will appear in the order details.







Step 3: Initiate the Refund



Next to each eligible product, you’ll see a Refund button. Click the button for the product you wish to refund.



Step 4: Provide a Refund Reason



A popup will appear asking you to enter a reason for the refund. Fill in the reason and confirm.







Step 5: Refund is Processed



The refund will be processed using the same payment gateway used during the original transaction. Upon successful completion:




A confirmation popup is shown









A note is added to the Order Notes section





The refunded status is reflected on the same page after it reloads








By using this feature, you can ensure smoother refund processing for Upsell/Downsell offers, improving customer satisfaction and reducing manual steps for your team.";s:3:"url";s:48:"https://cartflows.com/docs/refund-offer-feature/";s:4:"slug";s:20:"refund-offer-feature";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-08-02T18:41:22+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:163;O:8:"stdClass":8:{s:2:"id";i:32572;s:5:"title";s:56:"How to Fix the &#8220;Checkout ID Not Found&#8221; Error";s:7:"content";s:1722:"If you’re seeing the "Checkout ID Not Found" message on your Checkout page, it usually means the CartFlows step is not correctly linked to the page where the shortcode is placed.







This documentation explains when this error occurs and how to resolve it.



When This Happens



This error can happen in the following situations:



Case 1: Editing the Checkout Page in a Page Builder



You may see the error while editing your Checkout page inside a page builder. In editor mode, some WooCommerce functions may not be available, which prevents CartFlows from detecting the proper Checkout step.



Solution:




Exit the page builder and return to the WordPress dashboard.



Edit the checkout step in CartFlows > Funnels, select your funnel, and open the Checkout step.



Make sure at least one product is selected, or set the funnel to Test Mode if you’re just designing the layout.



Update the page, then visit the checkout page from the frontend.




Note: To see the checkout fields on the page, there must be at least one product assigned to the step or the funnel must be in Test Mode.



Refer to this guide for help: How to Use Test Mode



Case 2: Shortcode Placed on the Wrong Page



This error can also occur if the [cartflows_checkout] shortcode is placed on a regular WordPress page that isn’t connected to a CartFlows Checkout step.



Solution:



Only place the [cartflows_checkout] shortcode on a page that is assigned as a Checkout step within a CartFlows funnel.



Note: The [cartflows_checkout] shortcode does not work on upsell, downsell, opt-in, or thank you pages. It is intended for Checkout steps only. For more details, refer to this doc: Placing Shortcodes in the Right Places";s:3:"url";s:63:"https://cartflows.com/docs/resolve-checkout-id-not-found-error/";s:4:"slug";s:35:"resolve-checkout-id-not-found-error";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-20T18:51:43+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:164;O:8:"stdClass":8:{s:2:"id";i:32551;s:5:"title";s:65:"How to Set Quantity and Discount for Product on the Checkout Page";s:7:"content";s:2558:"CartFlows allows you to predefine product quantities and apply discounts directly on the Checkout page, giving you greater control over pricing and enabling powerful bulk-purchase offers without additional configuration.



With this feature, you can configure the quantity and discount for each product added to the Checkout step, ensuring a consistent and optimized purchasing experience for your customers.



How Product Quantity and Discounts Work



When configuring products in the Funnel Checkout step settings, you’ll see two key options:




Product Quantity – Lets you set a predefined quantity for the selected product.



Discount Type – Allows you to apply a discount to that product based on the quantity you’ve defined.




This setup is especially useful for bulk pricing strategies. For example, if you’re selling a product and want to offer a discount only when customers purchase two units, you can set the quantity to 2 and apply a discount specifically for that purchase.



How to Configure Quantity and Discount on the Checkout Page




Go to CartFlows → Funnels and open your desired funnel.



Click Settings on the Checkout step.



Open the Products tab.



Expand a product by clicking the downward arrow next to it.



Set the Product Quantity and choose the appropriate Discount Type.








Once saved, the predefined quantity will automatically appear on the Checkout page.



Customer Experience on Checkout




The quantity you set in the backend will be prefilled on the Checkout page.



If the customer increases the quantity, it will increment based on the predefined quantity you’ve configured.



Discounts configured here apply directly on the Checkout page.




If a product already has a discount set from WooCommerce, the CartFlows discount will be applied on top of the amount received from WooCommerce.



Available Discount Types



The Discount Type dropdown includes the following options:




Original – No discount is applied.



Discount Percentage – Applies a percentage-based discount to the product.



Discount Price – Applies a fixed discount amount to the product price.




Common Use Cases




Offer bulk purchase discounts such as Buy 2 and get 20% off.



Apply CartFlows discounts on top of WooCommerce sale prices.



Combine Checkout page discounts with coupons applied via Checkout settings or the coupon field.




This flexible setup helps you create targeted pricing strategies directly within your Checkout flow, improving conversions while keeping the setup simple.";s:3:"url";s:61:"https://cartflows.com/docs/set-product-quantity-and-discount/";s:4:"slug";s:33:"set-product-quantity-and-discount";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-04-30T20:08:24+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:165;O:8:"stdClass":8:{s:2:"id";i:32601;s:5:"title";s:43:"How to Style the Highlight Product Section?";s:7:"content";s:2033:"CartFlows allows you to highlight a product on the checkout page to make it more noticeable to customers. This feature helps draw attention to specific products by displaying custom highlight text and styling.



You can customize the text, border color, text color, and background color of the highlighted product section to match your checkout design.



How to Access the Highlight Product Styling Options



Step 1: Open Funnels



From the WordPress dashboard, navigate to CartFlows &gt; Funnels and edit a funnel.







Step 2: Open the Checkout Step



Select the required funnel and locate the Checkout step.



Click the Settings (Cog icon) on the checkout step to open its settings.







Step 3: Add Products to Checkout



Go to the Products tab and add the product you want to display to the checkout page.







Once products are added, go to the Product Options section and enable the Enable Product Options toggle.







Step 4: Enable Highlight for a Product



Under the Selected Products section, click the Settings (Cog icon) for the product you want to highlight.



Enable the Highlight option and enter the highlight text according to your requirements.







Step 5: Customize the Highlight Styling



To further customize the highlight section, open the Design tab in the checkout step settings.



In the Design tab, you can modify the styling of the highlighted product, including:




Highlight text color



Highlight background color



Highlight border color








These options allow you to adjust the appearance of the highlighted product so it stands out on the checkout page.



If you are using CartFlows native Gutenberg, Elementor, or Beaver Builder checkout forms, the Product Options styling will be available while editing the checkout form inside the respective page builder. This allows you to customize the product option styling directly within the page builder interface.



Step 6: Save the Changes



After making the required changes, click Save Settings to apply the settings.";s:3:"url";s:70:"https://cartflows.com/docs/how-to-style-the-highlight-product-section/";s:4:"slug";s:42:"how-to-style-the-highlight-product-section";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-06-02T20:59:25+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:166;O:8:"stdClass":8:{s:2:"id";i:32553;s:5:"title";s:66:"How to &#8220;Highlight Product&#8221; in CartFlows Checkout Page?";s:7:"content";s:2694:"Highlight Product lets you draw attention to a specific product variation on the CartFlows checkout page by applying a visually appealing layout. This feature displays a selected product prominently based on the settings you choose in the checkout step’s product options.



This documentation will guide you through using the Highlight Product feature and customizing it for your checkout page.



What is Highlight Product?



The Highlight Product feature allows you to emphasize a chosen product variation on the checkout page. This helps draw customer attention to specific products or variations you want to promote.







Note: This feature works only on the CartFlows checkout page when the Product Option toggle is enabled from the Product Options tab.







Accessing Product Options



1: Navigate to Checkout Settings &gt; Products to view all products added to the checkout.







2: Click the small settings icon next to a product to access its product-specific options.







3: Here, you will find the Highlight Product option.



Available Product Option Settings




Selected Products: Displays all products selected for the checkout.



Shortcodes: Use these shortcodes in the product subtext for dynamic content:

{{product_name}} – Displays the product name.



{{quantity}} – Shows the selected quantity.



{{discount_value}} – Displays the discount amount.



{{discount_percent}} – Shows the discount percentage.





Product Option Conditions: Set rules for displaying the highlighted product and variations.








Layout Options



In the checkout step settings, go to Design &gt; Product Options to customize the layout:




Section Title: Change the title of the product options section.



Section Position: Place the section before checkout, after customer details, or before order review.



Skin: Choose between Classic and Cards layout styles.



Show Product Images: Toggle product image display on or off.








Note
The Design tab is only visible when your page builder is set to Other in CartFlows settings. If you're using Elementor, Beaver Builder, Bricks Builder, or the Block Editor, these page builders have native CartFlows modules where product options design can be managed directly within the module settings.




Design Options



Use the design settings to customize colors and styling of the Highlight Product section, including text and background colors.







Note
The Highlight Product feature does not work on the CartFlows Store Checkout page. This is because the Store Checkout replaces the default WooCommerce checkout, and product variations are already selected and added to the cart from the single product page.";s:3:"url";s:72:"https://cartflows.com/docs/highlight-product-in-cartflows-checkout-page/";s:4:"slug";s:44:"highlight-product-in-cartflows-checkout-page";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-06-03T17:06:31+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:167;O:8:"stdClass":8:{s:2:"id";i:31375;s:5:"title";s:51:"How to Create a Marketing Sales Funnel in CartFlows";s:7:"content";s:5662:"This documentation explains how to create a marketing sales funnel using WordPress, WooCommerce, and CartFlows. The process includes installing the required tools, creating a funnel, configuring the Checkout page, and testing the funnel before going live.



1. Get a Domain Name and Hosting



efore creating your website, you need a domain name and hosting.



A domain name is your website address, and hosting is the service that stores your website files and makes them accessible on the internet.



Once you have purchased both, you can proceed with installing WordPress.



If you want to speed up the process of creating your website, you can also use ZipWP. It can generate a complete WordPress website with pages, design, and content that you can customize and use for your funnel.



2. Install and Set Up WordPress



Most hosting providers offer a one click WordPress installation.



After installing WordPress, ensure that your site is configured properly.



Navigate to: Settings &gt; Permalinks then select Post name, then click Save Changes.



This structure creates clean and readable URLs for your website.



3. Install the Required Theme and Plugins



Install a WordPress Theme



Navigate to: Appearance &gt; Themes &gt; Add Theme



Install and activate the Astra theme. Astra is a lightweight and flexible theme that works well with CartFlows.



Astra theme: https://wordpress.org/themes/astra/







Install WooCommerce



WooCommerce is required to create and sell products in your funnel.



Navigate to: Plugins &gt; Add Plugin



Search for WooCommerce, then install and activate it.



Refer to this documentation to know more details about WooCommerce and how to install it: https://cartflows.com/docs/how-to-install-woocommerce/



Install a Page Builder



CartFlows works with multiple page builders. You can install any builder you prefer. The most popular page builders are:




Elementor



Block Editor (Gutenberg)



Beaver Builder




Navigate to: Plugins &gt; Add Plugin



Search for your preferred page builder, then install and activate it. The Block Editor is the default WordPress page editor, so you do not need to install it.



Install CartFlows



Next, install the CartFlows plugin.



Navigate to: Plugins &gt; Add Plugin



Search for CartFlows, then install and activate it.



The free version allows you to build funnels and customize WooCommerce checkout pages. The Pro version adds advanced features such as:




Order Bumps



One Click Upsells and Downsells



Checkout field customization




For a complete walkthrough on installing the plugin, refer to this documentation: https://cartflows.com/docs/how-to-install-cartflows-free/



After activation, configure the page builder integration.



Navigate to: CartFlows &gt; Settings &gt; General



Select the page builder you installed earlier.







4. Create a New Funnel



Navigate to: CartFlows &gt; Funnels &gt; Create New Funnel







You can either import a ready made funnel template or start from scratch. Refer to this documentation for more details about creating funnel: https://cartflows.com/docs/how-to-create-your-first-cartflows-funnel/



5. Configure the Checkout Step



Select the Checkout step in your funnel and click Edit.



From this screen, you can:




Assign a product to the Checkout step



Customize the page layout using your page builder



Adjust checkout settings




For a detailed explanation of assigning products and configuring the Checkout step, see this documentation: https://cartflows.com/docs/how-to-add-assign-products-to-a-checkout-step-in-cartflows/



6. Add Upsell or Downsell Offers



You can increase the average order value by adding upsell or downsell offers.



To add a new step click Add New Step inside your funnel. Select either Upsell or Downsell then choose a template.







For a complete walkthrough on creating these offers, refer to: https://cartflows.com/docs/create-oneclick-upsell-downsell-offers/



7. Set the Landing Page as Your Homepage



If your funnel landing page will be the main entry point for visitors, you can set it as the homepage.



Navigate to: Settings &gt; Reading. Select A static page, then choose your funnel landing page.







This ensures visitors land directly on your funnel.



8. Test Your Funnel



Before launching your funnel, it is important to test the entire process.



Navigate to: CartFlows &gt; Funnels. Edit your funnel and enable Sandbox Mode from the Funnel Settings panel.







Sandbox Mode allows you to simulate purchases and confirm that:




Checkout works correctly



Upsells and downsells function as expected



Payments are processed properly




If you are using Stripe as the payment gateway and sandbox (test) mode is enabled, you can use the test card numbers: 4242 4242 4242 4242 &nbsp;on the Checkout page. Refer to this Stripe documentation to know more about the test number: https://docs.stripe.com/testing



Once everything works as expected, you can disable the Sandbox Mode and start accepting real orders.



Learn More in the Video Below



If you prefer a visual walkthrough, watch the video below to see how to create a marketing sales funnel using CartFlows.




https://www.youtube.com/watch?v=cagYPks1LLk




Did You Know?



CartFlows can also be used to create funnels that are not related to eCommerce. For example, you can build a simple lead generation funnel using just two steps:




A landing page with a lead generation form



A Thank You page




This approach is commonly used to collect leads, offer free resources, or allow visitors to sign up for newsletters and other offers.";s:3:"url";s:66:"https://cartflows.com/docs/how-to-create-a-marketing-sales-funnel/";s:4:"slug";s:38:"how-to-create-a-marketing-sales-funnel";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-05T21:09:17+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:168;O:8:"stdClass":8:{s:2:"id";i:31241;s:5:"title";s:66:"How to Activate the CartFlows Pro License on a WordPress Multisite";s:7:"content";s:1020:"If you are using CartFlows Pro on a WordPress Multisite, you can network activate both the CartFlows Free and CartFlows Pro plugins. However, the license activation must be done from each child site. This documentation will walk you through the process.



Installing CartFlows on a Multisite Network



Step 1: Network Activate CartFlows Free &amp; Pro




Log in to your Network Admin Dashboard.



Go to Plugins > Add New.



Install both CartFlows Free and CartFlows Pro plugins.



Click Network Activate to activate them across all child sites.








Step 2: Activate the License on Each Child Site



Once CartFlows Pro is network activated, the license must be activated individually on each child site. Follow the steps in this document: How to Activate Your CartFlows Pro License



Important Notes




Both CartFlows Free and Pro can be network-activated, but the Pro license must be activated per child site.



License activation is required for CartFlows Pro to function on any child site in the network.";s:3:"url";s:78:"https://cartflows.com/docs/how-to-activate-cartflows-pro-license-on-multisite/";s:4:"slug";s:50:"how-to-activate-cartflows-pro-license-on-multisite";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-03-17T14:24:29+05:30";s:8:"category";a:1:{i:0;s:20:"installation-updates";}}i:169;O:8:"stdClass":8:{s:2:"id";i:31435;s:5:"title";s:44:"How to Enable Paypal Reference Transactions?";s:7:"content";s:1196:"Before, when using One-Click Upsell for WooCommerce with CartFlows, it is required that you enable PayPal reference transactions for it to work. But now, you can already offer WooCommerce One-Click Upsells even without enabling it. Learn more about this here.



Although enabling PayPal reference transactions is not required, but if you are offering Upsell / Downsell from CartFlows here are the steps on how you can get this enabled for one-click Upsell -



Steps to Enable PayPal Reference Transactions



Step 1: Log into PayPal



Ensure you are using a Business Account and log in to your PayPal account.



Step 2: Access PayPal Support



Go to PayPal Contact.



Step 3: Call Support



Scroll down to the button and select the option to Call the support.







Step 4: Follow Dialing Instructions



You will be redirected to a page with instructions for calling PayPal.







Step 5: Request Reference Transactions



Choose Technical Support and request to enable PayPal Reference Transactions for your account.



Step 6: Enable in CartFlows



After PayPal confirms the activation, go to your CartFlows settings and enable reference transactions if needed for specific features.";s:3:"url";s:71:"https://cartflows.com/docs/how-to-enable-paypal-reference-transactions/";s:4:"slug";s:43:"how-to-enable-paypal-reference-transactions";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-20T19:42:57+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:170;O:8:"stdClass":8:{s:2:"id";i:32517;s:5:"title";s:26:"Upsell Downsell Shortcodes";s:7:"content";s:2975:"Upsell and Downsell shortcodes give you more flexibility and control over how product details are displayed on your offer pages, especially when working with Variable Products.



Using these shortcodes, you can customize your upsell and downsell pages by displaying product information, adjusting layouts, and creating more engaging offers that match your design and marketing needs.



Note
Shortcodes for Upsell and Downsell are available only when the Page Builder setting is set to Other.




What Can You Display Using These Shortcodes?



You can now add and display the following product details dynamically on your Upsell and Downsell pages:




Product Variation



Product Quantity



Product Title



Product Description (Long)



Product Short Description



Product Price



Product Image




These shortcodes ensure your customers know exactly what they’re buying and help boost conversions by presenting clear product information.



Note
These shortcodes only work on Upsell and Downsell pages within CartFlows. Using them on other pages (e.g., regular WordPress or WooCommerce pages) can result in errors or unexpected content display.




Where to Find the Shortcodes



You can find these shortcodes by navigating to:



Upsell / Downsell Settings → Shortcodes section







Available Shortcodes and Usage



Accept Offer Link



Use this link to allow users to accept the offer. When clicked, the funnel moves to the next step with the offer accepted.




Usage: Add this link to a button, &lt;a&gt; tag, or image.



Recommended Element: Button or anchor.




Decline Offer Link



A link to decline the offer and continue to the next step in the funnel without accepting it.




Usage: Add to a button, &lt;a&gt; tag, or image.



Recommended Element: Button or anchor.




Product Variation



[cartflows_offer_product_variation]Displays variation options (dropdown style) for variable products.




Use on: Shortcode widget or text editor.




Product Quantity



[cartflows_offer_product_quantity]Allows customers to select product quantity.




Use on: Shortcode widget or text editor.




Product Title



[cartflows_offer_product_title]Shows the product title.




Use on: Heading, shortcode widget, or text editor.




Product Description



[cartflows_offer_product_desc]Displays the full (long) description of the selected product.




Use on: Shortcode widget or text editor.




Product Short Description



[cartflows_offer_product_short_desc]Displays the excerpt or short description of the selected product.




Use on: Shortcode widget or text editor.




Product Price



[cartflows_offer_product_price]Shows the product price. If a discount is applied, the discounted price is shown.




Use on: Shortcode widget, text editor, or heading.




Product Image



[cartflows_offer_product_image]Displays product images. For variable products, the image updates based on selected variation.




Use on: Shortcode widget or text editor.";s:3:"url";s:66:"https://cartflows.com/docs/introducing-upsell-downsell-shortcodes/";s:4:"slug";s:38:"introducing-upsell-downsell-shortcodes";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-20T19:30:07+05:30";s:8:"category";a:1:{i:0;s:14:"developer-docs";}}i:171;O:8:"stdClass":8:{s:2:"id";i:32458;s:5:"title";s:102:"How to Fix the &#8220;We can&#8217;t seem to find an order for you.&#8221; Error on the Thank You Page";s:7:"content";s:1025:"If you see the message “We can’t seem to find an order for you” on the Thank You page, it usually means the page is being accessed without a valid order or session.



This documentation explains why this happens and how to avoid it.



When This Happens



This error appears if the Thank You page is visited directly without completing a purchase, while the funnel is live. CartFlows requires an order ID or session ID to display order details on the Thank You page. Without that data, the page cannot load the order and shows the error message.







How to View the Thank You Page Without an Order



If you’re only checking the design of the Thank You page and not placing an actual order, you can use Test Mode.



Solution:




Go to CartFlows &gt; Funnels.



Open your Funnel and enable Test Mode.



While logged in, open the Thank You page directly to preview the layout.




For help, see this guide: How to Use Test Mode in CartFlows



Note: Be sure to turn off Test Mode before making the funnel live.";s:3:"url";s:81:"https://cartflows.com/docs/solve-order-not-found-error-message-on-thank-you-page/";s:4:"slug";s:53:"solve-order-not-found-error-message-on-thank-you-page";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-03-19T13:25:12+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:172;O:8:"stdClass":8:{s:2:"id";i:32453;s:5:"title";s:47:"How to Fix Endless Loading on the Checkout Page";s:7:"content";s:1063:"If your CartFlows Checkout page is stuck loading and the form never appears, it’s usually caused by caching.



What Causes the Issue



This issue commonly happens when:




The Checkout page is cached by a plugin or server



A 403 error occurs due to security rules or restrictions




Caching can prevent dynamic parts of the Checkout page from working properly, which leads to endless loading or missing content.



How to Fix It




Clear all cache, including browser cache, plugin cache, and any server-side caching set by your host.



Temporarily disable any caching plugin you’re using and test the Checkout page again.



If the issue persists, contact your hosting provider and ask them to clear any remaining cache at the server level.




If you’re seeing a 403 error, share the exact error message with your hosting provider. They may need to whitelist certain requests or adjust security settings to allow the checkout page to work correctly.



For help excluding CartFlows pages from being cached, refer to this doc: How to Disable Caching";s:3:"url";s:64:"https://cartflows.com/docs/solve-loading-issue-on-checkout-page/";s:4:"slug";s:36:"solve-loading-issue-on-checkout-page";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-27T19:27:02+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:173;O:8:"stdClass":8:{s:2:"id";i:32348;s:5:"title";s:76:"How to Setup Authorize.net Gateway for the Cartflows Upsell &#038; Downsell?";s:7:"content";s:1675:"CartFlows support for Authorize.Net Credit Card payments specifically for Upsell and Downsell offers. Follow the steps below to set up Authorize.Net in your CartFlows funnels.



Pre-Requisites



Before setting up Authorize.Net, make sure you have the following:




Authorize.Net Account – Create an account if you don’t have one. During setup, obtain your Transaction Key, which will be needed in the WooCommerce settings.



WooCommerce Authorize.Net Gateway Plugin – Install and activate the official plugin available on the WooCommerce store or the Authorize.Net website.




Steps to Set Up Authorize.Net in WooCommerce



Step 1: Enable Authorize.Net Payment Gateway




From your WordPress Dashboard, navigate to WooCommerce → Settings → Payments Tab.



Enable the Authorize.Net Credit Card option.








Step 2: Enter Transaction Key




Paste the Transaction Key obtained from your Authorize.Net account into the designated field.



Click Save to store your settings.




Step 3: Configure Important Fields




Transaction Type: Set to Charge.



Tokenization: Enable this option so that credit card fields appear on Checkout, Upsell, and Downsell pages.



Debug Mode: Set to Save to Log to capture any error logs.








Step 4: Verify Setup




Visit your Checkout page. You should see the credit card fields provided by Authorize.Net available for payment.








Note
Ensure your website has a valid SSL certificate and all URLs are using HTTPS. Without HTTPS, the payment fields will not work and may display errors.




Following these steps will enable secure Authorize.Net credit card payments for all CartFlows Upsell and Downsell offers.";s:3:"url";s:69:"https://cartflows.com/docs/setup-authorize-net-gateway-for-cartflows/";s:4:"slug";s:41:"setup-authorize-net-gateway-for-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-01-05T22:12:40+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:174;O:8:"stdClass":8:{s:2:"id";i:32341;s:5:"title";s:60:"How to Enable Enfold Avia Layout Builder in CartFlows Steps?";s:7:"content";s:2141:"By default, the Enfold theme’s Avia Layout Builder is not available on CartFlows steps. However, with a simple code addition, you can enable support and start designing your CartFlows pages using the Avia Builder.



Method 1: Add Code to Your Child Theme



Follow these steps to enable the builder by adding custom code to your child theme:



Step 1: Copy the Code Below



// Do not include this if already open!/* * How to add the custome code. * * Please follow below instructions:* 1. Copy the below code.* 2. Open your child theme's functions.php file.* 3. Paste the copied code at the very bottom of it &amp; save the file OR upload it on your server/hosting.*//** * Function to allow Enfold theme to edit the CartFlows pages using it's page builder. *  * @param array $supported_post_types 	Array of supported post type by the theme. *  * @return array $supported_post_types 	Modified array of supported post type by the theme. */function avf_add_cartflows_post_type_in_theme( array $supported_post_types ) {	$supported_post_types[] = 'cartflows_step';	return $supported_post_types;}add_filter( 'avf_alb_supported_post_types', 'avf_add_cartflows_post_type_in_theme', 10, 1 );add_filter( 'avf_metabox_layout_post_types', 'avf_add_cartflows_post_type_in_theme', 10, 1 );



Step 2: Paste Into Your Child Theme




Go to Appearance > Theme File Editor



Open your child theme’s functions.php file



Scroll to the bottom and paste the copied code



Save the changes




Method 2: Use the Code Snippets Plugin



If you prefer not to modify theme files directly, you can use the Code Snippets plugin:




Install and activate the Code Snippets plugin (free from WordPress.org).



Create a new snippet and paste the same code shown above.



Set the snippet to run on both front-end and back-end.



Save and activate the snippet.




Here is a video tutorial on how to add custom functions to your website.




https://www.youtube.com/watch?v=c56d84Eek5M




After applying either method, the Avia Layout Builder will be available for all CartFlows steps, allowing you to design your funnel pages with Enfold’s native builder.";s:3:"url";s:47:"https://cartflows.com/docs/enfold-avia-builder/";s:4:"slug";s:19:"enfold-avia-builder";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-25T23:20:21+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:175;O:8:"stdClass":8:{s:2:"id";i:32313;s:5:"title";s:39:"Personalization Shortcodes in CartFlows";s:7:"content";s:3049:"Personalization shortcodes in CartFlows let you display dynamic customer and order information on your funnel steps. This helps you show relevant messages to users based on the data available during the checkout process.



You can add these shortcodes inside text elements, headings, or HTML blocks using your preferred page builder.



Why Use Personalization Shortcodes



Personalized content helps customers feel acknowledged and confident during checkout. Instead of showing a generic message, you can display information such as the customer email or name to make the message more relevant.



Example: Thank you john@example.com for your order.



Types of Personalization Shortcodes



CartFlows provides two types of personalization shortcodes.




Display values submitted on the checkout page



Display values passed through the URL




Display Checkout Field Values



Use this shortcode to show values entered by the customer on the CartFlows Checkout page, such as first name, last name, or email address.



Shortcode Format



&#91;cartflows_order_fields field="first_name" default="Dear"]



Parameters



field: The checkout field value you want to display



default: Text shown when the field value is not available



Examples



Display the customer first name



&#91;cartflows_order_fields field="first_name" default="My Name"]



Display the customer last name



&#91;cartflows_order_fields field="last_name" default="My Surname"]



You can use the same shortcode structure to display any checkout field value.



Display URL Parameter Values



Use this shortcode to display values passed through URL parameters. This is useful when sending users to a CartFlows step from another page while passing data dynamically.



Shortcode Format



&#91;cartflows_url_fields field="first_name" default="Dear"]



Parameters



field: The URL parameter you want to display



default: Text shown when the parameter does not exist



Examples



Display first name from the URL



&#91;cartflows_url_fields field="first_name" default="My Name"]



Display last name from the URL



&#91;cartflows_url_fields field="last_name" default="My Surname"]



You can use this shortcode for any value passed in the URL.



Note
WooCommerce checkout fields usually include prefixes such as billing or shipping. When using personalization shortcodes in CartFlows, make sure to remove these prefixes.




For example



Use first_name instead of billing_first_name



Use last_name instead of shipping_last_name



Where You Can Use These Shortcodes



You can add personalization shortcodes on the following CartFlows steps.




Checkout step



Upsell step



Downsell step



Thank You step




These shortcodes work inside your page builder content elements and display values only when the related data is available.



Summary



Personalization shortcodes allow you to show checkout data and URL values dynamically on your CartFlows steps. This helps you create clearer, more relevant messages and improves the overall user experience.";s:3:"url";s:64:"https://cartflows.com/docs/personalization-shortcodes-cartflows/";s:4:"slug";s:36:"personalization-shortcodes-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-01-14T15:09:02+05:30";s:8:"category";a:1:{i:0;s:14:"developer-docs";}}i:176;O:8:"stdClass":8:{s:2:"id";i:32316;s:5:"title";s:52:"How to Enable Google Analytics Tracking in CartFlows";s:7:"content";s:1945:"CartFlows includes built-in support for Google Analytics. You can track funnel performance using predefined events that help you monitor user behavior across the Checkout page, Opt-in page, and more.



This documentation shows how to enable Google Analytics tracking in CartFlows and where to enter your measurement ID.



Before You Begin



Make sure you have:




A Google Analytics account (Universal or GA4)



Your Tracking ID (for Universal Analytics) or Measurement ID (for GA4)




If you haven’t set it up yet, refer to these official guides:




How to set up the Analytics Google tag (Legacy)



How to set up Google Analytics 4 (GA4)




Enable Google Analytics in CartFlows



1. From your WordPress dashboard, go to CartFlows &gt; Settings &gt; Integrations.2. Click the Google Analytics Pixel tab.3. Enable the toggle for Enable for CartFlows Pages.







4. Enter your Tracking ID (Universal) or Measurement ID (GA4) in the Enter Google Analytics ID field.







5. To track CartFlows events across the entire website, enable the second toggle: Enable for the whole site.







Once set up, CartFlows will start sending tracking events to Google Analytics.



Events Tracked by CartFlows



The following are the available events:




Begin Checkout



Add to Cart



Add Payment Info



Purchase



Opt-in Lead




Is CartFlows Compatible with GA4?



Yes. CartFlows is fully compatible with Google Analytics 4 (GA4).



To get your GA4 Measurement ID:




Go to the Admin Panel in your GA4 property.



Pick the Analytic Account.



Select your Property.



You will see your Measurement ID, which begins with G-.








Enter this ID in the Enter Google Analytics ID field in CartFlows settings.



Troubleshooting



If tracking is not working, check that your Measurement ID is correct and that the toggle is enabled.



Refer to this article for more help: How to Troubleshoot Google Analytics Tracking in CartFlows";s:3:"url";s:70:"https://cartflows.com/docs/enable-google-analytics-tracking-cartflows/";s:4:"slug";s:42:"enable-google-analytics-tracking-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-20T00:39:53+05:30";s:8:"category";a:1:{i:0;s:15:"flows-analytics";}}i:177;O:8:"stdClass":8:{s:2:"id";i:32315;s:5:"title";s:58:"How to Troubleshoot Google Analytics Tracking in CartFlows";s:7:"content";s:1091:"If your Google Analytics tracking is not working in CartFlows, the most common reason is that your Tracking ID or Measurement ID is missing or incorrect.



This documentation shows how to check your settings and ensure tracking is enabled.



Step 1: Check if Tracking Is Enabled




Go to CartFlows &gt; Settings &gt; Integrations.



Click the Google Analytics Pixel tab.



Make sure the toggle for Enable for CartFlows Pages is turned on.








Step 2: Confirm the Analytics ID




In the same tab, check the Enter Google Analytics ID field.



Make sure the ID is entered correctly:

Universal Analytics IDs start with UA-



GA4 Measurement IDs start with G-






If this field is blank or incorrect, tracking will not work.







Step 3: Test Tracking on the Frontend




Using the Chrome browser, open your site in Incognito mode.



Use the Tag Assistant browser extension to confirm that tracking events are firing on CartFlows pages.




Note
Make sure your CartFlows funnel is set to live, or you’re logged in with Test Mode enabled if you’re checking a non-live funnel.";s:3:"url";s:76:"https://cartflows.com/docs/troubleshooting-google-analytics-tracking-issues/";s:4:"slug";s:48:"troubleshooting-google-analytics-tracking-issues";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-18T17:45:13+05:30";s:8:"category";a:1:{i:0;s:15:"flows-analytics";}}i:178;O:8:"stdClass":8:{s:2:"id";i:32274;s:5:"title";s:87:"How to Resolve the &#8220;Please select a Simple, Virtual and Free product&#8221; Error";s:7:"content";s:977:"Do you notice an Error Message - Please select a Simple, Virtual and Free product.







Solution: 



Following are the steps using which you can select the free Simple and Virtual product on the optin page of the CartFlows.



Step 1: Go to CartFlows > Funnels and edit the funnel.







Step 2: Click the Settings icon (cog icon) on the Checkout step.







Step 3: Navigate to the Products Tab and Search and select your free simple or virtual product from the optin page.







In a nutshell, to resolve this issue, you will need to select Simple and Virtual Product.



The Optin Step type only allows selling the above-mentioned type of products. This Step Type provides only three fields such as First Name, Last Name, Email ID.



So the user cannot make a payment in this scenario, this is the reason you need to set the zero price value Simple / Virtual product.



If you need to add more custom fields in the Optin Type you will need the CartFlows Pro version.";s:3:"url";s:68:"https://cartflows.com/docs/select-a-simple-virtual-and-free-product/";s:4:"slug";s:40:"select-a-simple-virtual-and-free-product";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-19T21:47:58+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:179;O:8:"stdClass":8:{s:2:"id";i:32272;s:5:"title";s:52:"How to Pass Variables as Query Parameters to the URL";s:7:"content";s:1239:"CartFlows allows you to pass field values from the Opt-in step to the next page using URL query parameters.



This feature is helpful when you want to:




Personalize the content on the next step



Use custom code to display dynamic messages



Send user data to an external service (like a CRM)




How to Enable the Feature




Go to CartFlows &gt; Funnels and open your funnel.



Click the gear icon on the Opt-in step to access its settings.



Go to the Settings tab &gt; Optin Settings.



Enable the toggle labeled Pass Fields as URL Parameters.




Once enabled, you’ll see first_name added by default. This means the value entered in the First Name field will be passed to the next step via the URL.







How to Add More Fields



You can pass multiple fields by entering their names in a comma-separated format, such as:



first_name, last_name, email



This also works for custom fields created using the CartFlows Custom Field Editor (Pro feature).



Note: The opt-in page field name starts with the “billing_” prefix, such as billing_first_name or billing_last_name. When adding field names to the setting, make sure to exclude the “billing_” part. For example, use first_name instead of billing_first_name.";s:3:"url";s:68:"https://cartflows.com/docs/pass-variable-as-query-parameters-to-url/";s:4:"slug";s:40:"pass-variable-as-query-parameters-to-url";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-20T00:43:51+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:180;O:8:"stdClass":8:{s:2:"id";i:32256;s:5:"title";s:35:"Introducing CartFlows Optin Feature";s:7:"content";s:1646:"Creating lead generation forms can sometimes be challenging, unexpected errors, too many fields, or difficulty connecting with tools like Mailchimp. To solve this, CartFlows now includes an Optin Step, making it easy to create streamlined, high-converting opt-in funnels.



What Is the CartFlows Optin Step?



The Optin Step is a dedicated step type in CartFlows, designed specifically for lead generation funnels. It allows you to collect user information and connect seamlessly with your email marketing tools.



How to Import and Set Up the Optin Step



Step 1: Import the Optin Step



Navigate to your WordPress Dashboard > CartFlows > Edit your flow and add a new step.From the available step templates, choose either:




Ready Templates that include the Optin step



Or select Create Your Own > Optin Woo




Step 2: Edit the Optin Step



Open the step settings to begin configuring your form and product.



Step 3: Assign a Free Virtual Product



Select a product that is:




Simple



Virtual / Downloadable



Priced at 0




This ensures users can complete the step without making a payment.



Step 4: Form Submission and Lead Capture



Once the user fills out the form, their details will be captured and passed to your configured email marketing tool through WooCommerce (e.g., Mailchimp, ConvertKit, etc.).



Note: Adding custom form fields is available in the CartFlows Pro version.







When Should You Use the Optin Step?



The Optin Step is perfect for creating lead generation funnels. It’s commonly used to offer free digital products (e.g., ebooks, PDFs, downloads) in exchange for user contact information.";s:3:"url";s:63:"https://cartflows.com/docs/introducing-cartflows-optin-feature/";s:4:"slug";s:35:"introducing-cartflows-optin-feature";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-25T23:17:03+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:181;O:8:"stdClass":8:{s:2:"id";i:32233;s:5:"title";s:60:"How to Create Conditional Upsell &amp; Downsell in CartFlows";s:7:"content";s:2518:"What is Conditional Redirect?



Conditional Redirect allows you to control where a customer is redirected after interacting with an Upsell or Downsell offer.



Using this setting, you can send users to a specific next step in the funnel depending on whether they accept (Yes) or decline (No) the offer.



For example:




If the user accepts the Upsell → Redirect them to another Upsell, Downsell, or Thank You page.



If the user declines the Upsell → Redirect them directly to a Downsell or the Thank You page.








This helps create smarter funnels where the next step depends on the user’s decision.



How Conditional Upsell &amp; Downsell Helps



Upsells and Downsells are an essential part of any sales funnel because they help increase the average order value.



By using Conditional Redirect, you can create more strategic funnels where customers are shown the most relevant next offer instead of following a fixed path.



This makes the funnel more dynamic and improves conversion opportunities.



How to Set Up Conditional Redirect in CartFlows Pro



Step 1: Add Upsell and Downsell Steps



From the WordPress dashboard, navigate to CartFlows > Funnels and edit the funnel in which an Upsell / Downsell has been created or will be created.







Step 2: Open the Offer Step Settings



Locate the Upsell or Downsell step in the funnel and open click the Settings (cog icon).







Step 3: Access the Conditional Redirect Option



Inside the step settings Settings Tab > Conditional Redirect







This option allows you to define where users will be redirected based on their choice.



Step 4: Configure Redirect Paths



Set the destination for both options:




Yes (Accept Offer) → Select the step where the user should be redirected after accepting the offer.



No (Decline Offer) → Select the step where the user should be redirected after rejecting the offer.




You can redirect users to another Upsell, Downsell, or Thank You step depending on your funnel strategy.







Step 5: Save the Settings



After configuring the redirect paths, save the settings.



Your funnel will now redirect users to different steps depending on whether they accept or decline the offer.



Note
If you do not see any options in the Conditional Redirect dropdown, it means there are no available offer steps after the current step in the funnel.



To resolve this, add the required Upsell or Downsell steps after the current offer step, and they will become available in the dropdown.";s:3:"url";s:62:"https://cartflows.com/docs/create-conditional-upsell-downsell/";s:4:"slug";s:34:"create-conditional-upsell-downsell";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-20T20:16:50+05:30";s:8:"category";a:1:{i:0;s:17:"one-click-upsells";}}i:182;O:8:"stdClass":8:{s:2:"id";i:32213;s:5:"title";s:41:"How to Enable Collapsible Checkout Fields";s:7:"content";s:957:"CartFlows Pro allows you to make specific Checkout fields collapsible. This helps create a cleaner layout by letting customers expand only the sections they need to interact with.



Note: You must enable the Custom Field Editor to access this feature.



Where to Find the Setting




Go to CartFlows &gt; Funnels and open your funnel.



Open setting of the Checkout step.



Go to the Checkout Form tab.



Go to the Field Editor section and enable the Enable Custom Field Editor toggle.




How to Enable Collapsible Fields




Locate the field you want to collapse.



Make sure the field is not required.



Enable the Collapsible toggle.



Click Save/Update.








The selected field will now be hidden under a toggle on the Checkout page.



Make Coupon and Additional Field Collapsible




Enable the Coupon Field or Additional Field setting first.



Once enabled, the Collapsible toggle will appear.



Enable the toggle and save your changes.";s:3:"url";s:62:"https://cartflows.com/docs/enable-collapsible-checkout-fields/";s:4:"slug";s:34:"enable-collapsible-checkout-fields";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-06-02T21:23:20+05:30";s:8:"category";a:1:{i:0;s:21:"checkout-field-editor";}}i:183;O:8:"stdClass":8:{s:2:"id";i:32147;s:5:"title";s:58:"How to Translate CartFlows Using the Loco Translate Plugin";s:7:"content";s:1301:"You can translate CartFlows using the Loco Translate plugin, which allows you to edit plugin strings directly from your WordPress dashboard.



Follow the steps below to translate text like button labels, coupon fields, or any other CartFlows string.



Install and Access Loco Translate




Install and activate the Loco Translate plugin from the WordPress repository.



Navigate to Loco Translate > Plugins.



Select CartFlows from the list








Add a New Language



1. If the language you want to translate into is not listed, click the New Language button.2. Select the language you want to use.







3. Choose Custom location under the file location options.4. Click Start Translating.







You may choose a different location if needed, depending on your site setup.



Translate CartFlows Strings




Use the search bar to find the text you want to translate (for example, “Coupon”).



Select the string, then add your translation in the bottom translation field.



Click Save.








Preview Translations on Frontend



Once saved, your translated strings will appear on the frontend according to your site’s language.



Note: Make sure your WordPress site language matches the language you added in Loco Translate. You can set this from Settings > General > Site Language.";s:3:"url";s:68:"https://cartflows.com/docs/translate-cartflows-using-loco-translate/";s:4:"slug";s:40:"translate-cartflows-using-loco-translate";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-07-07T23:59:49+05:30";s:8:"category";a:1:{i:0;s:19:"translate-cartflows";}}i:184;O:8:"stdClass":8:{s:2:"id";i:32131;s:5:"title";s:52:"How to Enable Fusion Page Builder on CartFlows Steps";s:7:"content";s:470:"If you’re using Fusion Page Builder, you can enable it to work with CartFlows steps by updating the Fusion Builder settings.



Enable Fusion Builder for CartFlows Steps




Go to Settings > Fusion in your WordPress dashboard.



Under the Post Types section, tick the Steps checkbox.



Click Save Changes.








Once enabled, the Edit with Fusion Builder button will appear when editing a CartFlows step. You can now design your step using the Fusion Page Builder.";s:3:"url";s:54:"https://cartflows.com/docs/enable-fusion-page-builder/";s:4:"slug";s:26:"enable-fusion-page-builder";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-13T22:46:52+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:185;O:8:"stdClass":8:{s:2:"id";i:32088;s:5:"title";s:38:"Setup Pre-Checkout Upsell in CartFlows";s:7:"content";s:1425:"The Pre-Checkout Upsell feature allows you to display an offer directly on the Checkout page when a customer clicks the Place Order or Proceed to Checkout button.



This helps you present an additional product before the order is placed, without interrupting the checkout flow. Since the offer is shown before payment processing, it works seamlessly with almost all WooCommerce payment gateways available on your checkout page.



How to Enable Pre-Checkout Upsell



Step 1: Open the Checkout Step Settings




Go to WordPress Dashboard &gt; CartFlows &gt; Funnels.



Open your funnel and click Settings on the Checkout step.



Navigate to the Checkout Offer tab.








Step 2: Enable Checkout Offer




Toggle the Enable Checkout Offer option.



Select the product you want to offer from the Select Product dropdown.








You can further customize the offer behavior using the additional settings available in the Checkout Offer section.







How It Works on the Frontend



After enabling the Pre-Checkout Upsell:




Visit the Checkout page on the frontend.



Fill in the required checkout details.



Click Proceed to Checkout or Place Order.




At this point, a popup offer will be displayed, allowing the customer to accept or decline the additional product before completing the order.







Note
The Pre-Checkout Upsell works with almost all WooCommerce payment gateways.




Frequently Asked Questions";s:3:"url";s:53:"https://cartflows.com/docs/setup-pre-checkout-upsell/";s:4:"slug";s:25:"setup-pre-checkout-upsell";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-12T18:54:56+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:186;O:8:"stdClass":8:{s:2:"id";i:32083;s:5:"title";s:57:"How to Troubleshoot a Conflict with the Plugin and Theme?";s:7:"content";s:1725:"If you're experiencing issues such as:




CSS not applying properly



Checkout page continuously loading



Cart not displaying or updating correctly



Layout issues (e.g., cart items misaligned or stacked)



Unexpected product replacements in the cart




These are often caused by conflicts with your theme or other installed plugins.



Before reaching out to support, here are some quick and effective steps you can take to identify and resolve the issue:



Step 1: Switch to a Default Theme



Temporarily switch your website theme to a default WordPress theme like Twenty Twenty-One or Twenty Twenty-Three. Check if the issue still occurs. If the problem disappears, your theme may be conflicting with CartFlows or WooCommerce.



Step 2: Deactivate Other Plugins



Deactivate all plugins except CartFlows and WooCommerce.Then, test the functionality again. If the issue is resolved, re-enable your plugins one by one to identify the conflicting plugin.



Note: This is a standard debugging approach followed by most WordPress support teams and helps identify over 90% of issues. We recommend taking a full backup of your site before proceeding.



Step 3: Review Custom Code



If you’ve added custom code to your theme or through third-party plugins, consider temporarily disabling it to rule out conflicts.



Watch: Troubleshooting in Action



Here’s a quick video walkthrough to guide you through this process:




https://www.youtube.com/watch?v=yWEnKnzwc0U




If the issue persists after trying the above steps, feel free to reach out to our Technical Support team. If possible, please share a staging site or grant temporary access to your live site so we can help debug the issue more effectively.";s:3:"url";s:49:"https://cartflows.com/docs/troubleshooting-steps/";s:4:"slug";s:21:"troubleshooting-steps";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-25T23:18:45+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:187;O:8:"stdClass":8:{s:2:"id";i:31733;s:5:"title";s:41:"How PayPal and Stripe Work with CartFlows";s:7:"content";s:3460:"This documentation explains how PayPal and Stripe work with CartFlows when processing payments through WooCommerce.



CartFlows integrates with WooCommerce payment gateways. Once a payment gateway is enabled in WooCommerce, it can be used on CartFlows Checkout pages.



The following gateways are commonly used with CartFlows:




PayPal Standard



PayPal Express Checkout (PayPal Checkout)



Stripe




PayPal Standard



Note
PayPal Standard is no longer suggested by PayPal. WooCommerce strongly encourages switching to the PayPal Payments extension instead. Support for PayPal Standard is very limited, and it is hidden for new installations since WooCommerce 5.5.0.




To accept payments using PayPal Standard, make sure the following settings are configured in WooCommerce.




Enable PayPal Standard.



Enable Sandbox Mode if you want to test payments. Disable it when accepting live payments.



Enable Logging to record potential errors.



Enable IPN Email Notifications.



If IPN email notifications are enabled, add the PayPal Identity Token.



Set Payment Action to Capture.



Enter the required API credentials.



Add Sandbox API credentials when testing payments.



Add Live API credentials when accepting real payments.




For more details, refer to the WooCommerce documentation: https://docs.woocommerce.com/document/paypal-standard/



PayPal Express Checkout



Note
PayPal Express Checkout (PayPal Checkout) is no longer suggested by PayPal. It is no longer available for download via the WooCommerce Marketplace and support ended on 1 March, 2022. WooCommerce encourages upgrading to the PayPal Payments extension instead.




To use PayPal Express Checkout with CartFlows, configure the following settings.




Enable PayPal Checkout.



Set the Environment to Live or Sandbox.



Enter the corresponding API credentials for the selected environment.



Enable Debug Log in the Advanced Settings.



Enable Reference Transactions in CartFlows.




To enable Reference Transactions in CartFlows, navigate to: CartFlows &gt; Settings



Then enable Reference Transactions.



Reference Transactions are required to enable true one click upsells with PayPal.



For more information about PayPal Express Checkout, refer to: https://docs.woocommerce.com/document/paypal-express-checkout/



Stripe



To accept payments using Stripe, configure the following settings.




Enable Stripe.



Enable Test Mode when testing payments.



Add the Test Publishable Key and Test Secret Key.



Add the Live Publishable Key and Live Secret Key.




For more information about Stripe configuration, refer to: https://docs.woocommerce.com/document/stripe/



Frequently Asked Questions















How can I enable Reference Transactions in PayPal?



To request Reference Transactions for your PayPal account:




Log in to your PayPal account.



Go to the Email Contact Form.



Choose My Account as the topic.



Choose Changing or Updating Account Information as the sub topic.



Send a request asking PayPal to enable Reference Transactions.




Example message:



Hello Team,I would like to enable Reference Transactions on my PayPal account.My PayPal email address is: your@email.com.I need this feature to support post purchase upsells or one click upsells via WooCommerce.Kind regardsYour Name



After submitting the request, wait for PayPal to confirm the activation. The approval process may vary depending on the country.";s:3:"url";s:67:"https://cartflows.com/docs/working-of-paypal-stripe-with-cartflows/";s:4:"slug";s:39:"working-of-paypal-stripe-with-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-03-13T18:07:28+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:188;O:8:"stdClass":8:{s:2:"id";i:31729;s:5:"title";s:58:"How to Translate CartFlows Using the TranslatePress Plugin";s:7:"content";s:1032:"CartFlows can be translated using the TranslatePress plugin, allowing you to localize your funnel steps and content directly from the frontend.



Follow the steps below to translate your CartFlows funnel pages.



Configure TranslatePress Settings




From your WordPress dashboard, go to Settings &gt; TranslatePress.



Under the General tab, find the All Languages section.



Add the language(s) you want to translate your website into.








Once added, the new language will appear in your site’s language switcher.



Translate CartFlows Funnel Steps



1. Open the CartFlows step or page you want to translate.2. From the top admin bar, click the Translate Page button.







3. Click the text you want to translate and click on it.







4. Enter your translated text in the field that appears.5. Click the Save translation button to apply your translation.







Repeat this for each string you want to translate on the page.



Watch a Video Tutorial



Or refer to the following video to see how you can do this:";s:3:"url";s:67:"https://cartflows.com/docs/translate-cartflows-with-translatepress/";s:4:"slug";s:39:"translate-cartflows-with-translatepress";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-07-08T00:00:40+05:30";s:8:"category";a:1:{i:0;s:19:"translate-cartflows";}}i:189;O:8:"stdClass":8:{s:2:"id";i:31682;s:5:"title";s:56:"Shortcode Reference for Email Fields in Cart Abandonment";s:7:"content";s:1762:"You can personalize your abandoned cart recovery emails using the shortcodes listed below. These shortcodes allow you to dynamically insert customer details, cart contents, and other relevant information into your emails.



Available Shortcodes



No First Name Shortcode  Description 1Admin Firstname{{admin.firstname}}It displays the name of the shop owner or an administrator.2Admin Company{{admin.company}}It displays the name of the shop or company.3Abandoned Product Details Table{{cart.product.table}}It displays the details of products that were abandoned with Product name, Product image, Quantity, Price and Line subtotal in table format.4Abandoned Product Names{{cart.product.names}}It displays only product names that were abandoned. 5Cart Checkout URL{{cart.checkout_url}}It is the URL that redirects to the checkout page.6Coupon Code{{cart.coupon_code}}It is the coupon code that can be used on the checkout page for the discount.7Customer First Name{{customer.firstname}}It displays the First name of the Customer.8Customer Last Name{{customer.lastname}}It displays the Last name of the Customer.9Customer Full Name{{customer.fullname}}It displays the Full name of the Customer.10Cart Abandonment Date{{cart.abandoned_date}}It displays the date on which the cart is abandoned.11Site URL{{site.url}}It displays the Main Site URL of the shop or company.12Unsubscribe Link{{cart.unsubscribe}}It allows customers to unsubscribe from the email of cart abanded. If a customer unsubscribes from this link then they will not receive future emails for an abandoned cart.



These shortcodes can be used in the email templates within the Cart Abandonment Recovery for WooCommerce plugin to create personalized and relevant email content for your customers.";s:3:"url";s:64:"https://cartflows.com/docs/shortcode-reference-for-email-fields/";s:4:"slug";s:36:"shortcode-reference-for-email-fields";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-08-21T21:46:18+05:30";s:8:"category";a:1:{i:0;s:16:"cart-abandonment";}}i:190;O:8:"stdClass":8:{s:2:"id";i:31688;s:5:"title";s:34:"Filters to Customize Product Table";s:7:"content";s:1476:"Cart Abandonment Recovery for WooCommerce allows customization of the email template styles using WordPress filters. This is especially helpful if you want to match the design of your product table and images to your brand.



Modify Product Table &amp; Image Styles



You can use the following filter to adjust the styles applied to the product table and product image inside the recovery emails:



/* * The woo_ca_email_template_table_style filter allows you to change the default styles of  * Product table &amp; product image provided by Cart Abandonment Recovery for WooCommerce plugin. * */add_filter( 'woo_ca_email_template_table_style', 'wcar_product_table_styles', 10 ); function wcar_product_table_styles( $style ){    $style['product_image']['style'] = 'height: 42px; width: 42px;';        $style['table']['style'] = 'color: #636363; border: 1px solid #e5e5e5; width:250px;';        $style['table']['attribute'] = 'align="center" ';        return $style;}



Include Cart Total with Tax and Shipping



If you'd like the product table in the recovery email to also display the cart total including tax and shipping, you can use the filter below:



// Show product table with cart total including tax and shipping costadd_filter( 'woo_ca_recovery_enable_cart_total', '__return_true' );



Note: These filters should be added to your child theme’s functions.php file. If you’re not sure how to add custom code, please refer to this guide on adding custom code.";s:3:"url";s:62:"https://cartflows.com/docs/filters-to-customize-product-table/";s:4:"slug";s:34:"filters-to-customize-product-table";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-08-21T21:47:58+05:30";s:8:"category";a:1:{i:0;s:16:"cart-abandonment";}}i:191;O:8:"stdClass":8:{s:2:"id";i:31676;s:5:"title";s:67:"How to Enable Webhooks in Cart Abandonment Recovery for WooCommerce";s:7:"content";s:2480:"The Cart Abandonment Recovery plugin for WooCommerce includes webhook support to help automate actions like sending coupon codes or follow-up notifications when a customer abandons the checkout process.



This allows seamless integration with automation tools like Zapier, so you can customize what happens after an abandonment event, for example, automatically emailing a unique coupon code.



Where to Find the Webhook Setting



To enable Webhooks, follow these steps:




Go to your WordPress dashboard.



Navigate to WooCommerce > Cart Abandonment.



Click on the Settings tab.



Locate the Webhook section and enable the Webhook Toggle.








Once enabled, you’ll be able to paste a webhook URL from your preferred automation platform.



How Webhooks Work



A webhook acts like a listener. When a shopper abandons the checkout, the plugin triggers the webhook to perform an action — such as:




Sending an email with a coupon code.



Notifying your CRM or marketing tool.



Logging the event in an external system.




You can create and manage this logic using services like Zapier.



How to Set Up a Webhook with Zapier



Here’s how to configure a webhook using Zapier:



Step 1: Create a Zap




Log in to Zapier and click My Zaps.



Click Create Zap.








Step 2: Add a Webhook Trigger




For the trigger app, search and select Webhooks by Zapier.



Choose the Catch Raw Hook trigger and click Continue.








Step 3: Copy the Webhook URL




Zapier will generate a webhook URL. Copy it.








Step 4: Paste the Webhook URL in Plugin Settings




Go back to WooCommerce &gt; Cart Abandonment &gt; Settings &gt; Webhook.



Paste the Zapier webhook URL.








Step 5: Trigger a Sample




In the Cart Abandonment plugin, use the Trigger Sample option.









You can review the webhook data as shown below –








Step 6: Set the Action




Add an Action Step in your Zap (e.g., Send Email etc.).









Customize the action according to your workflow.




Sending Coupons via Webhook



If you’ve enabled the Auto-Generate Coupon Code feature in the plugin:




Abandoned users will receive a personalized email with a discount.



You can choose between a fixed or percentage discount and set an expiry timer for the coupon.




Need More Customization?



You can create multiple Zaps with different triggers and actions depending on your needs — whether it's CRM integration, SMS alerts, or adding users to a mailing list.";s:3:"url";s:69:"https://cartflows.com/docs/enable-webhooks-cart-abandonment-recovery/";s:4:"slug";s:41:"enable-webhooks-cart-abandonment-recovery";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-08-21T20:50:54+05:30";s:8:"category";a:1:{i:0;s:16:"cart-abandonment";}}i:192;O:8:"stdClass":8:{s:2:"id";i:31534;s:5:"title";s:39:"Facebook Pixel Integration in CartFlows";s:7:"content";s:1364:"CartFlows supports native integration with Facebook Pixel, allowing you to track user behavior and conversions directly within your CartFlows funnels.



If you already use the PixelYourSite plugin, CartFlows automatically integrates with these plugins, no additional setup needed.



However, if you’re not using either plugin, CartFlows provides a built-in Facebook Pixel integration that makes connecting your pixel simple.



How to Enable Facebook Pixel Integration



1. Go to CartFlows &gt; Settings &gt; Integrations2. Locate the Facebook Pixel section3. Enable the toggle to activate Facebook Pixel integration







4. Enter your Facebook Pixel ID in the field provided and choose which events you’d like to track5. Click Save Changes to apply your settings







Once configured, Facebook Pixel will start tracking key user interactions within your CartFlows funnels.



Using Third-Party Plugins



If you prefer using a dedicated plugin, CartFlows seamlessly integrates with the PixelYourSite plugin.



You can continue using your existing setup, CartFlows automatically detects and works with this plugin.



How to Test or Verify the Working of Facebook Pixel Support



For testing the working of Facebook Pixel on your Checkout Page with Google Chrome browser, you will need to have the following Google browser extension: Meta Pixel Helper";s:3:"url";s:54:"https://cartflows.com/docs/facebook-pixel-integration/";s:4:"slug";s:26:"facebook-pixel-integration";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-14T19:45:21+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:193;O:8:"stdClass":8:{s:2:"id";i:31238;s:5:"title";s:46:"How to Display a Terms and Conditions Checkbox";s:7:"content";s:676:"If you want customers to agree to your Terms &amp; Conditions before completing their order, you can enable a checkbox on the Checkout page.



CartFlows uses WooCommerce for the Checkout page, so this feature is handled through WooCommerce settings.



Add a Terms &amp; Conditions Checkbox



1. Create a new page and add your Terms &amp; Conditions content to it.2. Go to WooCommerce > Settings > Advanced.3. Under the Page setup section, look for the Terms and conditions dropdown.4. Select the page you created.







5. Save the changes.



WooCommerce will now automatically add a checkbox to your Checkout page with a link to the selected Terms &amp; Conditions page.";s:3:"url";s:70:"https://cartflows.com/docs/how-to-a-display-terms-conditions-checkbox/";s:4:"slug";s:42:"how-to-a-display-terms-conditions-checkbox";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-03T14:40:46+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:194;O:8:"stdClass":8:{s:2:"id";i:31178;s:5:"title";s:44:"How To Enable ActiveCampaign With CartFlows?";s:7:"content";s:568:"Using CartFlows with WooCommerce enables you to integrate your marketing automation tools. If you're using ActiveCampaign, depending on which plan you purchase, you'll be able to integrate WooCommerce with it.



If your ActiveCampaign Plan is either Plus, Professional, or Enterprise, integration with WooCommerce is supported.



Here is the link on how to setup WooCommerce Integration with ActiveCampaign.



If your ActiveCampaign Plan is not supported, you might want to try the following alternative marketing automation tools.



Zapier for WooCommerceWPFusion";s:3:"url";s:71:"https://cartflows.com/docs/how-to-enable-activecampaign-with-cartflows/";s:4:"slug";s:43:"how-to-enable-activecampaign-with-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2024-11-12T15:17:37+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:195;O:8:"stdClass":8:{s:2:"id";i:31086;s:5:"title";s:33:"How To Add Order Bump To A Funnel";s:7:"content";s:2409:"An Order Bump allows you to offer an additional product directly on the checkout page. This is a simple yet powerful way to increase your average order value. Customers can add the extra product with a single click while completing their purchase.



How to Add an Order Bump



Step 1: Edit Your Funnel



From your WordPress dashboard, navigate to CartFlows &gt; Funnels and edit the Funnel where you want to add the Order Bump.







Step 2: Open the Checkout Step



Locate your Checkout step and click on the Settings icon (cog icon).







Step 3: Add an Order Bump



Go to the Order Bump section on the sidebar.



Type the name of your Order Bump and click Add.







Once added, click on the Settings icon (cog icon) of the newly created Order Bump to configure it.



Order Bump Settings Overview



The Order Bump settings are divided into four tabs:




Product



Content



Styles



Conditions




Below is a detailed explanation of each section.



1. Product Tab



Here, you can select the product you want to offer as an Order Bump.



Product – Type the name of the product you want to add and select it from the search results.







2. Content Tab



This section allows you to control the text and basic display options of the Order Bump.




Checkbox Label – Customize the checkbox text customers click to add the offer.



Highlight Text – Add a compelling headline to grab attention.



Description – Provide additional details about the product.



Enable Image Options – Enable or disable the product image display.








3. Styles Tab



Customize the appearance of your Order Bump to match your brand.



Layout




Order Bump Skin – Choose the design style for the Order Bump.



Width – Adjust the width of the Order Bump section.



Position – Control where the Order Bump appears on the checkout page.




Colors




Adjust available color settings to match your design preferences.




Borders




Customize border styles and appearance.




Shadows




Add or modify shadow effects for better visual emphasis.








4. Conditions Tab




Enable Conditional Order Bump – Display the Order Bump only when specific conditions are met.








Once configured, don't forget to enable the Order Bump and save the settings to apply the changes. Your Order Bump will now appear on the checkout page, helping you increase conversions and overall revenue.";s:3:"url";s:78:"https://cartflows.com/docs/how-to-add-order-bumps-to-woocommerce-sales-funnel/";s:4:"slug";s:50:"how-to-add-order-bumps-to-woocommerce-sales-funnel";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-08T17:40:00+05:30";s:8:"category";a:1:{i:0;s:10:"order-bump";}}i:196;O:8:"stdClass":8:{s:2:"id";i:31077;s:5:"title";s:41:"How to Import and Export Funnels and Step";s:7:"content";s:1576:"CartFlows lets you export and import your funnels, making it easy to reuse them across different websites. You can also export and import the design templates for individual funnel steps using your preferred page builder.



Export a Funnel




Go to CartFlows &gt; Funnels.



Tick the checkbox next to the funnel title then click the Export button that is visible after you tick the checkbox or click the three dots of the funnel and click the Export button.








Funnel can also be exported from inside the funnel.



Go to the funnel you would like to export and click the Export button at the top.







This will download a .json file to your local computer.



Note: If you’re exporting from a local site, import may not work on a live website. Funnel exports are supported only between live sites.



Import a Funnel



1. Click the Import button at the top of the Funnels page.







2. Upload the .json file that contains your exported funnel.



3. Click Import Funnel button.







Once complete the imported funnel will show up in your Funnels list.



Import or Export Step



If you want to move the design of an individual funnel step, you can do so using your page builder’s template import or export options.




Go to the funnel step you want to modify.



Click Edit Funnel to open the page in your page builder



Use the builder’s import/export tool to upload or download the template.




Each page builder handles templates differently. Use the following guides to learn more:




Elementor&nbsp;



Beaver Builder



Bricks Builder



Divi";s:3:"url";s:70:"https://cartflows.com/docs/import-export-flows-page-builder-templates/";s:4:"slug";s:42:"import-export-flows-page-builder-templates";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-26T22:38:12+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:197;O:8:"stdClass":8:{s:2:"id";i:31205;s:5:"title";s:30:"How Coupons Work in CartFlows?";s:7:"content";s:3705:"Coupons are a powerful way to offer discounts to your customers and encourage more purchases. When a coupon code is applied on the checkout page—either manually by the customer or automatically—the discount amount (fixed or percentage) is deducted from the order subtotal.



Using coupons strategically can help boost conversions, increase average order value, and drive more sales through your checkout flow.



Enable Coupon Usage in WooCommerce



1: Before creating coupons, make sure coupon functionality is enabled in WooCommerce.



2: From your WordPress dashboard, navigate to WooCommerce &gt; Settings.







3: Under the General tab, locate the General options section.



4: Check the Enable the use of coupon codes option.







5: Save your changes.



Creating Coupons



You can create and manage coupons directly from WooCommerce.



1: Go to WooCommerce &gt; Coupons.



2: Click Add Coupon.







3: Enter a coupon code manually or use the Generate coupon code button.



4: (Optional) Add a description to help you identify the purpose of the coupon later.







Once created, configure the coupon settings from the Coupon Data panel.



Coupon Data Settings



General




Discount type – Choose between percentage discount, fixed cart discount, or fixed product discount.



Coupon amount – Specify the discount value or percentage.



Allow free shipping – Enable this option if the coupon should remove shipping charges.



Coupon expiry date – Set an expiration date for the coupon.




Usage Restrictions




Minimum spend – Minimum order subtotal required to apply the coupon.



Maximum spend – Maximum order subtotal allowed to use the coupon.



Individual use only – Prevents the coupon from being combined with other coupons.



Exclude sale items – Prevents the coupon from applying to discounted products.



Products – Select specific products where the coupon is valid.



Exclude products – Select products where the coupon should not apply.



Product categories – Limit the coupon to specific categories.



Exclude categories – Exclude certain categories from using the coupon.



Allowed emails – Restrict coupon usage to specific email addresses.








Usage Limits




Usage limit per coupon – Total number of times the coupon can be used.



Usage limit per user – Number of times a single customer can use the coupon.








After completing the setup, click Publish to make the coupon active.



Applying Coupons on a CartFlows Checkout Page



Coupons can be applied on a CartFlows checkout page in two ways:




Manually by the customer



Automatically by pre-applying the coupon




To edit your checkout step:




Go to CartFlows &gt; Funnels from your WordPress dashboard.



Open the desired Funnel.



Click Settings on the Checkout step.








Manual Coupon Application



To allow customers to enter a coupon code themselves:




Open the Checkout Settings.



Open the Checkout Form > Form Settings.



Toggle the Enable Coupon Field option.



Click Save Settings.








This displays a coupon input field on the checkout page, allowing customers to apply a coupon manually.







Automatic Coupon Application



You can automatically apply a coupon so customers don’t need to enter a code.




 In the checkout settings, open the Products and click on Auto Apply Coupon tab.



Type and choose a coupon from the Auto Apply Coupon dropdown.



Click Save Settings.








(Optional) To prevent customers from applying additional coupons, disable the Coupon Field option in the Checkout Form tab.



When enabled, the discount is applied automatically, and customers cannot add another coupon code.";s:3:"url";s:44:"https://cartflows.com/docs/how-coupons-work/";s:4:"slug";s:16:"how-coupons-work";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-14T19:40:11+05:30";s:8:"category";a:1:{i:0;s:8:"features";}}i:198;O:8:"stdClass":8:{s:2:"id";i:31070;s:5:"title";s:19:"Flatsome UX Builder";s:7:"content";s:1249:"To use the Flatsome UX Builder on CartFlows steps, you'll need to add a small piece of code to your child theme’s functions.php file. This will allow the builder to be available when editing CartFlows steps.



Step 1: Add Code to Your Child Theme’s functions.php




Open your child theme’s functions.php file.



Add the following code:




// Do not include this if already open!
/**
 * Code goes in theme functions.php
 */
add_action( 'init', function () {
	if( function_exists( 'add_ux_builder_post_type' ) ) {
		add_ux_builder_post_type( 'cartflows_step' );
	}
} );



This code will enable the Flatsome UX Builder for CartFlows steps so you can use it for editing your checkout and other funnel pages.



Step 2: Alternatively, Use the Code Snippets Plugin



If you’re not comfortable editing theme files, you can use the free Code Snippets plugin to add this custom function. The plugin allows you to safely add custom PHP code without directly modifying your theme files.



For more details on adding custom functions to your website, you can follow this tutorial.




https://www.youtube.com/watch?v=c56d84Eek5M




This will make the Flatsome UX Builder available for editing CartFlows steps, giving you more design flexibility.";s:3:"url";s:47:"https://cartflows.com/docs/flatsome-ux-builder/";s:4:"slug";s:19:"flatsome-ux-builder";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-07-02T14:59:29+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:199;O:8:"stdClass":8:{s:2:"id";i:30659;s:5:"title";s:19:"Funnel in Test Mode";s:7:"content";s:1281:"CartFlows includes a Test Mode option that allows you to preview your funnel steps—like the Checkout and Thank You pages—without needing to place real orders. This is especially useful when you're designing or reviewing the funnel.



Note: Test Mode does not control sandbox settings for payment gateways. To test payments, you’ll need to enable sandbox/test mode from the payment gateway settings separately.



How to Enable or Disable Test Mode



Step 1: Navigate to CartFlows &gt; Funnels



From your WordPress dashboard, go to CartFlows > Funnels. Select the desired funnel and click Edit.







Step 2: Toggle Test Mode



At the top right of the funnel editor, you will find a mode selector. Click on it and choose between Sandbox Mode







When Test Mode is active:




You can preview all funnel steps without assigning real products.



CartFlows automatically assigns a random WooCommerce product to simulate the checkout process.



You can share preview links with your team for collaboration or design review.



A notification banner will appear at the bottom of the page indicating that Test Mode is active.








Once you're done designing or testing, simply disable the toggle and click Update to make the funnel live.



Frequently Asked Questions";s:3:"url";s:45:"https://cartflows.com/docs/flow-in-test-mode/";s:4:"slug";s:17:"flow-in-test-mode";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-04T22:35:48+05:30";s:8:"category";a:1:{i:0;s:15:"troubleshooting";}}i:200;O:8:"stdClass":8:{s:2:"id";i:30612;s:5:"title";s:26:"Creating Variable Products";s:7:"content";s:2049:"If you sell products that come in different sizes, colors, or styles — like a t-shirt in multiple sizes and colors — you don’t need to create separate products for each variation. Instead, you can use Variable Products in WooCommerce to handle this more efficiently.



CartFlows fully supports variable products and lets you display product options directly on the checkout page.



Example Use Case



Let’s say you sell a panda-themed t-shirt. This shirt is available in three sizes (S, M, L) and four colors. Instead of creating 12 different products, you can create one product with two attributes: Size and Color, and define variations for each combination.



How to Set Up Variable Products in CartFlows



Step 1: Create a Variable Product in WooCommerce



In your WordPress dashboard, create a new product or edit an existing one. Set the Product Data to "Variable Product", add attributes (like Size or Color), and create your variations.



If you're new to WooCommerce variations, here's a helpful video tutorial that starts directly at the section on setting up variable products.




https://youtu.be/CWSb-aWovqE?t=3142




Step 2: Assign the Product to Your Checkout Step




Navigate to CartFlows &gt; Funnels and edit your funnel.



Open the Checkout step and go to the Checkout Setting (cog igon).



Go to the Product Options section on the sidebar.



Enable the Product Options as well as the Variations.








Once enabled, your product variations will automatically display on the checkout page.



Step 3: Choose a Layout for Product Options



CartFlows offers three display layouts for variable product options:



Card Layout – A modern visual layout using cards for each option.







Classic Layout – A more traditional list-style layout.







Card Inline Layout – Offering a more modern and streamlined look.







Note: If you’re using a page builder (such as Elementor or Gutenberg), you can directly customize the design of the variation selector using CartFlows’ widget or block settings.";s:3:"url";s:54:"https://cartflows.com/docs/creating-variable-products/";s:4:"slug";s:26:"creating-variable-products";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-06T13:15:28+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:201;O:8:"stdClass":8:{s:2:"id";i:30539;s:5:"title";s:27:"CartFlows Funnel Step Types";s:7:"content";s:1584:"A funnel consists of multiple steps that guide users through the buying journey. CartFlows offers several step types, each serving a specific purpose.



Available Step Types



Landing Page Step



The Landing Page step is used to create lead generation or sales pages. You can have multiple landing pages in a single funnel.



Checkout Step



The Checkout step is where buyers complete their orders. It includes options to:




Link to a product.



Add an upsell (Pro feature).



Adjust checkout fields (Pro feature).



Style the Checkout form.




A funnel can have only one Checkout step.



Upsell Step (Pro Feature)



The Upsell step appears after the Checkout step. This is where you can offer an additional product after the initial purchase.



A funnel can have multiple Upsell steps.



Downsell Step (Pro Feature)



The Downsell step appears after an Upsell step. If a buyer declines the upsell offer, they are directed to the Downsell step, where you can present a lower-cost or alternative offer.



A funnel can have multiple Downsell steps.



Thank You Step



The Thank You step is the final step in a funnel. It is used to:




Display order details (if a Checkout step is included).



Provide next steps or instructions to buyers.




Opt-in Step (Free/Pro)



The Opt-in step is used to collect leads and provide free products. It is placed between the Landing Page and the Checkout step.




Requires free Simple Virtual/Downloadable products.



Users enter their details to gain access to the product.



Additional custom fields require CartFlows Pro.";s:3:"url";s:48:"https://cartflows.com/docs/cartflows-step-types/";s:4:"slug";s:20:"cartflows-step-types";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-03-04T16:01:23+05:30";s:8:"category";a:1:{i:0;s:15:"getting-started";}}i:202;O:8:"stdClass":8:{s:2:"id";i:30397;s:5:"title";s:35:"How to Use LearnDash with CartFlows";s:7:"content";s:1957:"his documentation explains how to use LearnDash with CartFlows to sell online courses through WooCommerce.



LearnDash is a course builder plugin for WordPress that allows you to create and manage online courses. These courses can be sold using WooCommerce products.



Since CartFlows works with WooCommerce products, you can use it to create optimized checkout pages and funnels for selling your courses.&nbsp;



Video Overview



The video below demonstrates how to integrate LearnDash with WooCommerce and use CartFlows to sell your course.




https://www.youtube.com/watch?v=thb2tyMFCEA




Selling LearnDash Courses with CartFlows



Once LearnDash is integrated with WooCommerce, you can sell your course using CartFlows by following the steps below.



1. Create a Course Product in WooCommerce



First, create your course in LearnDash.



Next, create a WooCommerce product that will be used to sell the course.



Navigate to: Products &gt; Add New



Configure the product details such as title, description, and price.



2. Attach the Course to the Product



After creating the WooCommerce product, attach the LearnDash course to that product.



This ensures that when a customer purchases the product, they are automatically enrolled in the corresponding course.



3. Add the Product to Your Funnel



Once the product is configured in WooCommerce, you can add it to your funnel.



Navigate to: CartFlows &gt; Funnels



Open your funnel and edit the step where you want to sell the course, such as the Checkout, Upsell, or Downsell step.



4. Select the Course Product



In the settings of the Checkout, Upsell, or Downsell step, select the WooCommerce product that is linked to your LearnDash course.



5. Save the Changes



Save the changes to your funnel step.



Your LearnDash course can now be sold through CartFlows, allowing you to use features such as optimized checkout pages, order bumps, and upsell or downsell offers.";s:3:"url";s:37:"https://cartflows.com/docs/learndash/";s:4:"slug";s:9:"learndash";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-03-13T17:57:10+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:203;O:8:"stdClass":8:{s:2:"id";i:30371;s:5:"title";s:43:"How to Exclude CartFlows Pages from Caching";s:7:"content";s:1420:"To ensure CartFlows works correctly, it’s important to exclude specific funnel steps from being cached. Caching may interfere with CartFlows functionality, especially on Checkout, Upsell, Downsell, and Thank You pages.



How to Exclude Funnel Steps from Caching



Each caching plugin offers its own method for excluding URLs. Below are links to official documentation for popular caching plugins:




WP Rocket: Exclude pages from the cache and optimizations



W3 Total Cache: How to Exclude Specific Pages from W3 Total Cache



WP Fastest Cache: Exclude Page



WP-Optimize: How do I enable/use page cache



Swift Performance: Cache Exceptions



Comet Cache: Exclude the Home Page (and others) from being cached




If you are using a caching plugin that is not listed here, please refer to its documentation or contact the plugin developer to learn how to exclude specific URLs from caching.



Excluding Pages in the Breeze Plugin



If you’re using the Breeze caching plugin, the video below shows how to exclude CartFlows funnel steps from being cached:




https://www.youtube.com/watch?v=v72mdEY-HIQ




Server-Level Caching by Web Hosts



Some hosting providers apply caching at the server level, which cannot be controlled by plugins. If you’re using a host that applies caching automatically, contact their support team and ask them to exclude your CartFlows funnel steps from server-side caching.";s:3:"url";s:43:"https://cartflows.com/docs/disable-caching/";s:4:"slug";s:15:"disable-caching";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-05T12:25:01+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:204;O:8:"stdClass":8:{s:2:"id";i:30365;s:5:"title";s:38:"How To Connect Stripe Payment Gateway?";s:7:"content";s:1195:"CartFlows offers built-in compatibility with the official WooCommerce Stripe Payment Gateway plugin, making it easy to accept online payments through Stripe. This integration also supports advanced features like order bumps, upsells, and downsells.



Follow the steps below to install and configure Stripe on your website:



&#x25b6;&#xfe0f; Watch: Stripe Integration Overview



Before getting started with the setup steps, we recommend watching the video below for a quick overview of the process:




https://www.youtube.com/watch?v=5rMDGdkmSGU




Step-by-Step Setup



Step 1: Install the Stripe Payment Plugin




From your WordPress dashboard, go to Plugins > Add New.



Search for WooCommerce Stripe Payment Gateway.



Locate the plugin by WooCommerce, then click Install and Activate.




Step 2: Configure Stripe Settings




Go to WooCommerce > Settings > Payments.



Click Manage next to Stripe.



Choose your environment (Live or Test/Sandbox).



Enter your Stripe API credentials and click Save Changes.




&#x1f4cc; You can download the plugin for free from the WordPress.org repository.



Looking for more details? Check out the full Stripe setup guide from WooCommerce.";s:3:"url";s:65:"https://cartflows.com/docs/how-to-connect-stripe-payment-gateway/";s:4:"slug";s:37:"how-to-connect-stripe-payment-gateway";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-13T22:44:13+05:30";s:8:"category";a:1:{i:0;s:12:"integrations";}}i:205;O:8:"stdClass":8:{s:2:"id";i:30331;s:5:"title";s:15:"GDPR Compliance";s:7:"content";s:1831:"CartFlows includes features that help store owners collect and manage data in ways that align with GDPR principles. This documentation outlines the three main areas where CartFlows interacts with customer data.



1. Checkout Forms



CartFlows uses WooCommerce checkout forms and stores the entered data in the browser’s local storage. This ensures that if a user accidentally refreshes the Checkout page, their input won’t be lost.



As far as we understand, this does not violate GDPR compliance. However, if you prefer to disable this feature, refer to this guide: How to Turn Off Auto-Fill on Checkout Fields



2. Analytics



CartFlows provides built-in analytics to help you monitor and improve your funnel performance. This feature does not track personal data of website visitors.



To power analytics, CartFlows uses a few cookies — none of which collect contact or sensitive information.



Analytics Cookies:




wcf-visited-flow- – Tracks which funnel is currently being viewed



wcf-step-visited- – Tracks the current step being viewed



cartflows-ab-test- – Set only when A/B split testing is enabled




Additional Cookies:




cartflows_session_ – Sets a unique session ID per user to support a smoother checkout



wcf_active_checkout – Tracks which Checkout page is currently active, along with cart data




These cookies are designed to support funnel functionality and do not contain personal data.



Disclaimer



CartFlows is not a legal advisor. For full GDPR compliance, we recommend consulting with your legal counsel regarding how you use these features.



For more on WooCommerce and GDPR, refer to: https://woocommerce.com/posts/gdpr-compliance-woocommerce/ 



For cookie use in our Cart Abandonment plugin, refer to this article: Cart Abandonment Cookies &amp; GDPR Compliance";s:3:"url";s:43:"https://cartflows.com/docs/gdpr-compliance/";s:4:"slug";s:15:"gdpr-compliance";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-02T17:45:44+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:206;O:8:"stdClass":8:{s:2:"id";i:30328;s:5:"title";s:36:"How to Set a Funnel as Your Homepage";s:7:"content";s:458:"If you’re building a website exclusively for a funnel, you may want to set the landing page step of your CartFlows funnel as the homepage.



Here’s how to do it:




Go to Settings > Reading in your WordPress dashboard.



Under Your homepage displays, select A static page.



From the Homepage dropdown, choose your CartFlows landing page step.



Click Save Changes.








You’ll now see the selected landing page as the homepage of your website.";s:3:"url";s:48:"https://cartflows.com/docs/set-flow-as-homepage/";s:4:"slug";s:20:"set-flow-as-homepage";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-02T17:53:13+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:207;O:8:"stdClass":8:{s:2:"id";i:30183;s:5:"title";s:32:"How To Add An Affiliate Program?";s:7:"content";s:684:"If you're planning to launch an affiliate program for your store or funnel, you're in luck, any affiliate plugin that integrates with WooCommerce will also work seamlessly with CartFlows.



We recommend using AffiliateWP for a robust and feature-rich setup. You can explore their offering at affiliatewp.com.



Looking for a free solution? You can consider the Affiliates Manager plugin available on the WordPress repository: wordpress.org/plugins/affiliates-manager



Once installed and configured, these plugins will track referrals, manage commissions, and help you grow your sales through affiliate marketing, all while working smoothly alongside your CartFlows-powered funnel.";s:3:"url";s:59:"https://cartflows.com/docs/how-to-add-an-affiliate-program/";s:4:"slug";s:31:"how-to-add-an-affiliate-program";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-06-20T23:44:13+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:208;O:8:"stdClass":8:{s:2:"id";i:30165;s:5:"title";s:20:"Using Pricing Tables";s:7:"content";s:1611:"CartFlows works seamlessly with any pricing table you wish to use, making it easy to direct customers to different funnels based on their selected pricing option.



By linking each pricing table option to its own unique funnel, you can customize the entire purchase journey, from checkout to upsells and thank you pages, based on the pricing plan selected.



How to Set Up Funnels for Pricing Tables



Step 1: Create a Pricing Page



Start by creating a standard WordPress page where you will add your pricing table. You can use any page builder to design this.







Step 2: Build the First Funnel



Create a new funnel in CartFlows for your first pricing option. Set the first step as the Checkout page and add any additional steps you’d like, such as Order Bumps, Upsells, Downsells, and the Thank You page.



Step 3: Assign the Product



In the checkout step, assign the product that corresponds to this specific pricing plan.



Step 4: Clone the Funnel



Use the Duplicate feature to duplicate the funnel for each additional pricing option. This saves time and ensures a consistent structure across all plans.







Step 5: Update the Product



In each cloned funnel, update the checkout step with the product linked to the respective pricing plan.



Step 6: Link Buttons to Funnels



Copy the checkout step URL from each funnel and link it to the corresponding button in your pricing table.







With this setup, customers clicking on a pricing option will be directed to the tailored checkout experience for that plan, helping you deliver a more personalized and high-converting funnel.";s:3:"url";s:48:"https://cartflows.com/docs/using-pricing-tables/";s:4:"slug";s:20:"using-pricing-tables";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-19T22:15:07+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:209;O:8:"stdClass":8:{s:2:"id";i:30161;s:5:"title";s:42:"How to Hide WooCommerce Pages and Products";s:7:"content";s:887:"If you want to sell products exclusively through CartFlows funnels, you may not want those products or the default WooCommerce shop page to be publicly visible on your site.



This documentation shows you how to hide individual product pages and the WooCommerce shop page.



Hiding Individual Product Pages



To hide a specific product page:




Edit the product in your WordPress dashboard.



Under the Publish section, click the Edit link next to Catalog visibility.



Select Hidden from the available options.



Click OK, then click Update to save your changes.








Hiding the WooCommerce Shop Page



To remove the default WooCommerce shop page:




Go to WooCommerce > Settings > Products tab.



In the Shop page dropdown, click the small X icon to unassign the page and leave the dropdown blank.








For more details, refer to the official WooCommerce documentation.";s:3:"url";s:66:"https://cartflows.com/docs/how-to-hide-woocommerce-pages-products/";s:4:"slug";s:38:"how-to-hide-woocommerce-pages-products";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-29T20:09:10+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:210;O:8:"stdClass":8:{s:2:"id";i:30158;s:5:"title";s:44:"Recommended Permalink Settings for CartFlows";s:7:"content";s:503:"CartFlows works best when WordPress permalinks are set to use a compatible structure.



Follow the steps below to configure the correct permalink setting.



Set the Permalink Structure




Go to Settings > Permalinks in your WordPress dashboard.



Under Permalink structure, select Post name.



Click Save Changes.








Note: If your permalink settings are not set to Post name, you may see URLs like yourdomain.com/cartflows_step/checkout-page/. Using the recommended structure helps avoid this.";s:3:"url";s:52:"https://cartflows.com/docs/best-permalinks-settings/";s:4:"slug";s:24:"best-permalinks-settings";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-05-22T21:31:19+05:30";s:8:"category";a:1:{i:0;s:18:"permalink-settings";}}i:211;O:8:"stdClass":8:{s:2:"id";i:30149;s:5:"title";s:54:"How To Use Your Themes Header &#038; Footer In A Step?";s:7:"content";s:1442:"By default, CartFlows steps use CartFlows-specific page templates designed to offer more control over the layout. However, if you'd like to display your theme’s header and footer on a step, you can switch to your theme’s default template.



This documentation explains how to use your theme’s header and footer in a CartFlows step.



Available Page Templates in CartFlows



CartFlows includes two page templates:




CartFlows - Boxed – Displays the page in a boxed layout.



Template for Page Builder – Displays the page in a full-width layout, allowing flexibility when using a page builder.




When you create a new step, CartFlows will automatically assign the CartFlows template. You can change it at any time.



How to Use Your Theme’s Header and Footer



To switch from the CartFlows template to your theme’s template:




Edit the step by clicking the Edit Step button.



In the Page Attributes section (on the right sidebar), look for the Template dropdown.



Select Default Template (or your theme’s template, if labeled differently).



Click Update / Save to save your changes.








Using Page Builders



The instructions above are based on the Block Editor (Gutenberg).If you're using a different page builder (like Elementor, Beaver Builder, etc.), the method to select a page template may vary. Please refer to your page builder’s documentation for the correct steps.



Frequently Asked Question";s:3:"url";s:74:"https://cartflows.com/docs/how-to-use-your-themes-header-footer-in-a-step/";s:4:"slug";s:46:"how-to-use-your-themes-header-footer-in-a-step";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-03-24T20:45:53+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:212;O:8:"stdClass":8:{s:2:"id";i:30065;s:5:"title";s:30:"Getting Started with CartFlows";s:7:"content";s:272:"This video offers an introduction to CartFlows and its core features. It's a helpful starting point if you're new to the plugin or want a quick overview of how it works.



Watch the video below to learn more about the basics of CartFlows.




https://youtu.be/tCm60PWOd0M";s:3:"url";s:53:"https://cartflows.com/docs/general-settings-overview/";s:4:"slug";s:25:"general-settings-overview";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-03-24T19:39:17+05:30";s:8:"category";a:1:{i:0;s:15:"getting-started";}}i:213;O:8:"stdClass":8:{s:2:"id";i:29970;s:5:"title";s:27:"How to Install WooCommerce?";s:7:"content";s:553:"CartFlows requires the WooCommerce plugin to work. If WooCommerce is not installed, CartFlows will prompt you to install it during the setup.



The installation process is exactly the same as installing the CartFlows Free plugin. You can refer to this documentation as guidance: How to Install CartFlows Free



The only difference is in Step 3, where you’ll need to search for “WooCommerce” instead of “CartFlows” in the search bar.



For additional information about WooCommerce, you can refer to this documentation: How to Use WooCommerce";s:3:"url";s:54:"https://cartflows.com/docs/how-to-install-woocommerce/";s:4:"slug";s:26:"how-to-install-woocommerce";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-03-14T21:08:50+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:214;O:8:"stdClass":8:{s:2:"id";i:29967;s:5:"title";s:23:"How to Use WooCommerce?";s:7:"content";s:451:"CartFlows requires the WooCommerce plugin to work. WooCommerce is one of the most widely used eCommerce platforms, powering millions of websites globally.



If you’re new to WooCommerce or want to explore its features further, you can refer to the official documentation here: https://docs.woocommerce.com



If you prefer a visual walkthrough, you can also watch the video below that shows how to install and configure WooCommerce on your website.";s:3:"url";s:50:"https://cartflows.com/docs/how-to-use-woocommerce/";s:4:"slug";s:22:"how-to-use-woocommerce";s:9:"parent_id";N;s:13:"last_modified";s:25:"2025-03-19T22:41:46+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:215;O:8:"stdClass":8:{s:2:"id";i:29922;s:5:"title";s:39:"How to Hide Fields on the Checkout Page";s:7:"content";s:1037:"CartFlows allows you to customize the checkout form by hiding fields you don’t want to display. You can easily manage this through the Checkout Form settings within the Checkout step.



This documentation will show you how to hide unwanted fields from the CartFlows Checkout page.



Steps to Hide Checkout Fields



Step 1: Edit Your Funnel



1. From your WordPress dashboard, go to CartFlows > Funnels.2. Locate and edit the funnel you want to modify.







3. Click on the Checkout Settings (cog icon) to access its settings.







Step 2: Enable the Custom Field Editor




Go to the Checkout Form tab.



If the Enable Custom Field Editor option is disabled, switch it on.








Step 3: Hide Checkout Fields




Once the custom field editor is enabled, you’ll see a list of all fields.



Use the toggle switch next to each field you want to hide.



After making your changes, click the Save Settings button to apply them.








You’ve now successfully hidden the fields you don’t want to show on the checkout page.";s:3:"url";s:55:"https://cartflows.com/docs/how-to-hide-checkout-fields/";s:4:"slug";s:27:"how-to-hide-checkout-fields";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-06T14:46:10+05:30";s:8:"category";a:1:{i:0;s:7:"general";}}i:216;O:8:"stdClass":8:{s:2:"id";i:300;s:5:"title";s:47:"Supported Payment Gateway for One Click Upsells";s:7:"content";s:1600:"CartFlows Pro allows you to offer one‑click upsells and downsells to increase the average order value of your sales funnels. For this functionality to work properly, the payment gateway used during checkout must support the required tokenization or reference transaction features.



Below is the list of payment gateways that are officially supported for CartFlows one‑click upsell and downsell offers.



Supported Payment Gateways



CartFlows Pro supports one‑click upsells with the following gateways:




Authorize.net



BACS (Direct Bank Transfer)



Cash on Delivery (COD)



Mollie – Credit Card and iDEAL



WooCommerce PayPal Payments



Stripe – Credit Card



Square




These gateways have built‑in compatibility with CartFlows to process additional offers without requiring the customer to re‑enter payment details.



Gateway Compatibility Notice



One‑click upsells require dedicated compatibility with each payment gateway. Because of this, support must be built individually for every gateway.



The CartFlows team continues to add compatibility for more gateways over time as they become available.



If you attempt to use a payment gateway that is not supported, CartFlows will display a notice on the Upsell or Downsell step in the Flow editor.



This notice indicates that the currently selected gateway does not support one‑click upsells.



Frequently Asked Questions









To avoid this, you can either use the supported payment gateways or you can add custom support of your payment gateway in the CartFlows with the help of a freelance developer.";s:3:"url";s:45:"https://cartflows.com/docs/one-click-upsells/";s:4:"slug";s:17:"one-click-upsells";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-03-12T23:51:40+05:30";s:8:"category";a:1:{i:0;s:17:"one-click-upsells";}}i:217;O:8:"stdClass":8:{s:2:"id";i:295;s:5:"title";s:28:"How To Install CartFlows Pro";s:7:"content";s:1435:"When you want to install a CartFlows Premium plan (Plus, or Pro), you need to download the plugin, install it, and activate the license key.



Note: The CartFlows Free plugin is required. If you haven’t installed it yet, see this document.



Installing CartFlows Pro



Step 1: Go to your Account and click on Your Products



In your Account page, go to Your Products to view all your products.







Step 2: Download CartFlows Pro



Click Download to start the .zip download.







Step 3: Login to your WordPress website



When you log in, you will be in your Dashboard.



Step 4: In the Plugins menu, click Add New Plugin



Navigate to Plugins &gt; Add New Plugin from your WordPress dashboard.







Step 5: Click Upload Plugin at the top of the screen



The screen will expand with the option to upload plugins.







Step 6: Upload the plugin and click Install Now



In the Add Plugins screen, you can click on Choose File and upload the .zip file. Click on Install Now to install the plugin; this may take some time.







Step 7: Click Activate Plugin



After installing the plugin, click on Activate Plugin to complete the installation.







Congratulations! You’ve successfully installed the CartFlows Pro plugin on your website.



What’s next?



Make sure to activate your license to receive plugin updates and access premium features. Click here to learn how to activate your CartFlows Pro license.";s:3:"url";s:52:"https://cartflows.com/docs/how-to-install-cartflows/";s:4:"slug";s:24:"how-to-install-cartflows";s:9:"parent_id";N;s:13:"last_modified";s:25:"2026-05-26T12:58:18+05:30";s:8:"category";a:1:{i:0;s:20:"installation-updates";}}}}