V2

Migrating your FrameAuth (previously FramerAuth) powered site from V1 to V2

How to upgrade your existing project from legacy versions to V2 and unlock powerful new features.

Migrating from V1

TUTORIAL

V2 is a ground-up rebuild designed to help you build more powerful membership websites in Framer without code.

Migrating to V2 unlocks a more flexible access system, improved payment flows, stronger project management, updated components, and a better experience for your members.

Before you can start using V2 on your live site, you will need to migrate your existing V1 project. Some parts of the migration happen automatically, while others require manual updates inside Framer. This guide will walk you through the full process.

We'll migrate your site for free

If you’d rather not handle the setup yourself, reach out and we’ll migrate your project for you.

Migrating to V2 is optional. Legacy will remain fully functional.

New features in V2

Payments:

Stripe payments

Lemon Squeezy

Multi-product (Stripe, Lemon Squeezy)

Project management:

Team access

Multi-project

Analytics

Auth:

OTP

OAuth (Google, Github)

Email verification

Validation (new user approve/reject)

Features:

Webhooks

API

User:

Tags (improved access controls)

Custom Fields

Profile photo

Data that will be migrated

Users

Purchases + access

Bookmarks

Considerations before migrating

Migrating from legacy (V1/beta) to V2 comes with a few important considerations to keep in mind to ensure a smoothly transition.

Please review carefully the following:

Important: Please review!

Test data does not get migrated. No sandbox products, purchases, or users get migrated.

Locked pages are not automatically migrated and will need to be re-locked in V2.

Lemon Squeezy license keys are no longer used/needed in V2.

You must use the new ActionButton component to trigger checkouts. Lemon Squeezy links will not work.

Passwords do not migrate. In V2, users can use passwordless options like OTP, OAuth, or set a new password via the forgot password form.

How to migrate to V2

Now that you've learned about the limitations and considerations, let's migrate:

1

Create a V2 account

If you haven't already, please sign up for a V2 account. Your existing email will only allow you to sign in to V1.

After signing up you will have two accounts, one for V1 and one for V2.

2

Connect Lemon Squeezy

If you did not use Lemon Squeezy in V1, skip this step.

Go to the plugins page and connect your live mode Lemon Squeezy store.

When creating your API key, set the expiration date at least 5 years in the future so you do not need to replace it soon.

Note: Testing data and sandbox purchases will not be migrated. Only live Lemon Squeezy data is imported.

3

Start the migration

Go to the migration page.

Click 'connect site' then sign in with your V1 email address to connect your legacy site, then start the migration.

Monitor the migration progress (you can close the page/website). Depending on the size of your V1 dataset, the migration can take anywhere from 1 minute to 3 hours.

4

Remove the existing snippet

Go to your Framer project settings and open the Custom Code section.

Remove any snippets that were added manually or by the legacy plugin.

The snippet is usually located at the start of the <body> section.

5

Connect your V2 project to your Framer site

Open the plugin, sign in to your V2 account, select your project, and click connect.

Note: if a warning message appears, it will display the same warnings that were mentioned above.

Connecting your project to V2 will not interfere with your existing V1 site or setup. You can undo the migration at any point if you choose to go back to the legacy version for any reason.

If you have any questions or concerns, chat with us.

6

Replace overrides

  1. Open the FramerAuth.tsx file in your Framer project.

  2. Press CMD + A on Mac or CTRL + A on Windows to select everything in the file.

  3. Delete the existing V1 overrides

  4. Paste in the V2 migration overrides:

V2 Overrides

7

Replace missing override instances

Click 'publish' (publish to staging).

When you publish your site to staging, Framer may warn you that some overrides are missing.

This is expected if your project used certain V1 overrides.

Replace the missing V1 overrides with their V2 equivalents:

V1

V2

withNoActiveLicense

ShowIfWithoutTag

withActiveLicense

ShowIfWithTag

withVariantActiveLicense

ToggleIfWithTag

withFirstName

Name

withFullName

Name

If your project used a custom withPlan or bookmarking overrides in V1, contact support for help updating your setup.

8

Replace legacy components with V2 components

In your Framer project, find the components used in V1 like SignUpForm, SignInForm, etc.

Add the V2 components to the canvas then right click on a V1 component and select 'replace all instances' then select the V2 equivalent.

Legacy forms include "Form" appended at the end while V2 forms do not, so it's easy to distinguish legacy versus V2. For example, the sign in form in legacy is called SignInForm while in V2 it's just called SignIn.

You may also need to rename pages. Double check to make sure your paths pages match. For example, /update-password is called /reset-password in V2.

The V2 pages are:

  • /sign-in

  • /sign-up

  • /forgot-password

  • /reset-password

  • /otp

  • /account

If you used custom page paths in V1, please contact support.

We recommend adding an OTP flow

Existing user's passwords will not be migrated to V2. This means the user can set a new password through the forgot password flow, or what we recommend, is making sign in via OTP your primary sign in.

This will allow your existing users to enter their email address to receive a one-time-password for a seamless login experience.

9

Remove legacy and deprecated components

After replacing with V2 components, delete all legacy components with "Form" appended.

Legacy forms:

  • SignInForm

  • SignUpForm

  • MemberProfileForm

  • UpdatePasswordForm

  • ForgotPasswordForm

Delete deprecated components from your project:

  • AuthWidget

  • ActivateLicenseForm

10

Replace old Lemon Squeezy checkout links with ActionButton

If you did not use Lemon Squeezy in V1, skip this step.

Important step!

If your website uses Lemon Squeezy links in V1 to trigger a checkout, then this one is important. All checkouts in V2 must be triggered via the new ActionButton component provided in the plugin.

  1. Go to the Store page in your V2 dashboard.

  2. Select the product that was imported from Lemon Squeezy.

  3. Copy the product’s lookup key.

  4. Add the ActionButton component to your Framer project.

  5. Paste the lookup key into the lookup key field.

  6. Use the ActionButton as your new checkout button.

When clicked, the ActionButton will automatically trigger checkout for the selected product.

What has changed with Lemon Squeezy in V2?

In V1, we used Lemon Squeezy license keys to validate access. In V2, license keys are no longer used.

Instead, FrameAuth uses the email address from checkout.

If the user does not already exist, we create an account for them, send them an email notifying them, and grant the correct tags (access). If the user already exists, FrameAuth grants the correct tags to their existing account.

This makes it easier for customers to purchase access and sign in without needing to copy, paste, activate, or manage a license key.

In V2, you can connect more products, variants, and have more flexibility with how access is granted.

11

Review imported tags (access controls)

If you did not use Lemon Squeezy in V1, skip this step.

After migrating we will automatically create tags for your product variants. In V2, tags are how access controls are handled.

Tags are how access control works in V2.

Users can receive tags in two ways:

  • Automatically after a successful purchase

  • Manually assigned from the user page in your dashboard

After migration, existing purchasers will already have the tags connected to their previous purchases.

A tag will be created for each product variant that was imported.

Review the tags that were created and adjust them as needed. You can keep the imported tag structure, rename tags, consolidate tags, or create a simpler access structure if that better fits your site.

For example, you may want to use one Premium tag instead of multiple product-specific tags if all premium customers should receive the same access.

12

Re-lock pages

Locked pages are not migrated automatically.

After reviewing your tags, manually re-lock any pages that should be protected.

For each protected page, choose the tag required for access.

For example:

  • Lock the account page with no tag to make it accessible to users who are signed in.

  • Lock your course dashboard to users with the Course Access tag

  • Lock your premium resource library to users with the Premium tag

13

Go live and connect custom domain

Go live from the settings.

In V2, connecting a custom domain is required to prevent cookie errors. Your domain will need to be connected in order for your project to go live.

Connect your domain then you're all set to publish your website and start receiving sign ups in V2.

Migration checklist

Before going live, confirm the following:

1

Your Framer project is connected to the correct V2 project

2

Your legacy V1 snippet has been removed from Framer

3

Your FramerAuth.tsx file has been updated

4

Missing overrides have been replaced

5

V1 components have been replaced with V2 components

6

Deprecated components have been deleted

7

Old Lemon Squeezy checkout links have been replaced with ActionButton

8

Imported tags have been reviewed

9

Protected pages have been locked again

10

Your custom domain is connected

11

Sign up, sign in, checkout, and locked content have been tested

12

Your site has been tested on staging before publishing live

FAQ

Will my user's passwords be migrated?

If I plan to use Stripe do I still need to connect Lemon Squeezy?

Do I need to migrate to V2?

Migrating your FrameAuth (previously FramerAuth) powered site from V1 to V2

Copy Link