Migrating to Flow Roll from Another Platform
Switching gym software shouldn't mean starting over. Moving to Flow Roll involves three phases: bringing your member list over, transferring your members' saved payment cards, and activating billing so everyone keeps getting charged without re-entering their card details.
This guide walks through all three. And you don't have to do it alone — the Flow Roll team offers free guided onboarding to walk through the trickiest part (the card migration) with you.
Will Your Members' Saved Cards Transfer?
This is the first question to answer, because it depends entirely on which software you're leaving. There are three possibilities:
✅ Already on Stripe — easiest path. If your current software bills through Stripe, your Stripe account already holds your members' saved cards. You simply connect that same Stripe account to Flow Roll and the cards are already there — no migration request needed. Common platforms: PushPress, Momence, Glofox (Glofox Payments), Hapana, and Gymdesk (if you used its Stripe integration).
🔁 Non-Stripe processor — request a free card migration. If your software bills through a third-party gateway, Stripe's migration team can securely import your members' saved cards with your old processor's cooperation. Phase 2 below covers exactly how. Common platforms: Mindbody, Kicksite, Spark Membership, Gymmaster, Mariana Tek, and Pike13.
🔄 Migration not available — members re-enter their cards. Some processors prohibit exporting card data. If yours does, members will be asked to re-enter their payment details the first time they pay through Flow Roll. You can still import your members and assign plans in the meantime. Common platforms: Jackrabbit (Jackrabbit Pay) and most modern Zen Planner setups (Zen Planner Pay / Payrix).
[!NOTE] Zen Planner and Gymdesk vary by setup: older Zen Planner accounts and Gymdesk accounts using the Stripe integration are already on Stripe, while Zen Planner Pay / Payrix setups cannot export cards.
Not sure which processor you have? Two quick checks:
- Your bank statement (most reliable): Look at the name on the daily payout deposits in your business checking account. "STRIPE TRANSFER" or "STRIPE PAYMENTS" means you're already on Stripe. A name like "PAYRIX", "MINDBODY PAY", or "USAEPAY" means you're on a non-Stripe processor.
- Your payments dashboard: If your membership charges show up in a Stripe dashboard you can log into at
dashboard.stripe.com, you're already on Stripe. (A Stripe account for your website or merch store doesn't count — it has to be where your membership payments land.)
Phase 1: Export and Import Your Members
Export a member list from your current software as a CSV (.csv) or Excel (.xlsx) file — every platform has its own export path, so check your software's help center if you can't find it. Older .xls files aren't accepted; re-save them as .xlsx first. If your Excel file has several sheets, Flow Roll reads the one whose header row contains First Name and Last Name and tells you which sheet it used.
Include these columns in the exact order Flow Roll expects: first name, last name, birthday, email address, phone, emergency contact name, emergency contact phone, and member status. First name, last name, email, and phone are required for every member — and email is also how Flow Roll matches members to their Stripe cards later. Member status can be blank; if filled in, it must be one of the values shown under View Allowed Values List. If your gym tracks belts, add belt and belt stripe just before member status. For cash-billed members you can add an optional Paid Through column after member status. The import reads columns by position using fixed headers — there's no drag-to-map step, so the order has to match exactly. Membership tier, notes, and middle name aren't import fields, and an import is capped at 5,000 members at a time.
Here's how to import your members:
- Go to the Members page and click the Import Members button (download icon).
- Upload your CSV or
.xlsxfile. Common formatting inconsistencies — name capitalization, phone punctuation, date styles — are tidied automatically as the file is read. - Review the preview, then click Add [N] New Members and confirm with Create Members.
What the Preview Is Telling You
Possible duplicates. Flow Roll checks each row against the members and leads already in your gym — and against earlier rows of the same file — and flags anything that looks like a match, with a Possible Dupes count above the table. Tap the orange copy icon beside a flagged row's Row # to see who it matched and why — by email, phone, or name. This is a warning, not a block: continue and the confirmation dialog lists the flagged names it's about to create anyway. To avoid the duplicate, remove that row from your file and click Re-Import Members.
One thing it can miss: if your roster fails to load on a weak connection, matches against existing members may go unflagged (within-file duplicates are always caught). Give the preview a second look on a large import.
Seat limits. Your Flow Roll plan caps how many students your gym can hold. If your file has more members than you have seats left, a Seats Left tile appears and the confirmation dialog warns you in orange. Rows past the cap are rejected, so upgrade your plan or split the file first.
[!WARNING] One bad row stops the whole import. Flow Roll checks each row and halts at the first problem — a missing name, email, or phone, an unreadable birthday, an invalid phone number, a belt that isn't one of your gym's, a non-numeric belt stripe, or a member status that isn't on the allowed list. An Import Error dialog names that single row (for example Row 4: Jane Smith - Invalid phone number) and nothing is imported, not even the good rows. The message stays in a red The last file could not be imported banner on the upload step while you fix your source file; upload it again and repeat if another row is bad. Clicking View Allowed Values List before you start is the quickest way to avoid status and belt errors, since it shows the accepted values exactly as the importer expects them.
[!TIP] You can import members before your card migration finishes. When the cards land in Stripe later, Flow Roll picks them up automatically — no re-import needed.
Phase 2: Migrate Saved Cards to Stripe (Non-Stripe Platforms Only)
Skip this phase if you're already on Stripe.
Before you start, two things:
- Create a Stripe account at
stripe.comif you don't have one. The migration request must come from the account owner, so make sure the account is yours. - Keep your old software active. Your old processor has to participate in the transfer — closing your account mid-migration can stall the export or make it impossible.
Here's how to request the card migration from Stripe:
- Log in at
dashboard.stripe.comas the account owner. - Open Stripe's data migration help article:
https://support.stripe.com/questions/data-migrations-types-that-can-be-requested - Scroll to the bottom and click Contact Support to open the secure email form.
- Fill out the form: select Data Migrations as the topic, choose Importing data into Stripe, enter the name of the software you're leaving, and paste this message:
"Hello Stripe Migrations Team, I am moving my business and need to migrate my customer payment tokens from [Old Software Name] into this Stripe account. Please provide the next steps and the PGP encryption key I need to give my old processor."
What happens next:
- Stripe replies with a PGP key — usually within 1 to 3 business days. Think of it as a digital padlock that protects your members' card data in transit. You never see or handle any card numbers.
- You hand the key to your old processor. Contact their support team, ask for their payment data export procedure, and provide the PGP key. Some processors require a formal request form, and some charge a fee.
- The processors transfer the data behind the scenes. Plan for 2 to 5 weeks end to end — the old processor is usually the slow part. Stripe emails you to confirm once the cards have landed.
[!WARNING] Do not cancel your old software subscription until Stripe confirms the card data has arrived. Closing your old account mid-migration can make the transfer impossible to complete.
Phase 3: Link Members and Start Billing
Once your members are imported and the cards are in your Stripe account, the final phase happens entirely inside Flow Roll.
[!NOTE] Roster already in Stripe? You can skip the CSV entirely — click Create members from Stripe (person add icon) in the Stripe Integration section and Flow Roll creates a linked member for each Stripe customer that isn't in Flow Roll yet.
First, connect your Stripe account:
- Navigate to the Account page (gear icon).
- Scroll to the Stripe Integration section.
- Click Link Stripe Account to Gym and authorize the connection in the secure Stripe window. Flow Roll uses Stripe's standard OAuth connection, so your existing account — including its full payment history — stays under your control.
Next, link your members to their Stripe cards:
- In the same Stripe Integration section, click the link-members button (group add icon) — it reads Link [N] member(s) while members are waiting to be linked.
- Flow Roll matches each member to their Stripe customer by email address and suggests the matches for review. A green card chip means a saved card is on file and ready to bill.
- Anything uncertain is grouped under Needs review or Shared on the Suggestions tab for you to confirm. Members with no email match at all appear on the Manual tab, where Pick a Stripe customer… lets you choose theirs by hand.
- Click Link [N] members to Stripe at the bottom, then Confirm changes in the dialog to save the links. A summary dialog confirms what was linked and, if any of those members have no subscription yet, offers Start Membership Billing right there.
Finally, start membership billing:
- Click the start-billing button (play icon) in the Stripe Integration section — it reads Start billing for [N] member(s) while linked members are missing a subscription.
- Assign a plan to each member — or use the Apply plan to all… dropdown to set everyone at once.
- Optionally set a First charge date per member to honor remaining days from their old plan (or Set first charge date for all to apply one date to everyone).
- Click Start [N] memberships and confirm with Start billing to create the subscriptions. Any failures (expired or declined cards) are listed in a Finished with errors dialog, and the failed members stay in the list so you can retry them individually.
[!TIP] Members who paid by cash or check won't appear in the linking tool. Assign them a plan from their member profile once they provide a card.
Frequently Asked Questions
How long does the whole migration take? The Flow Roll side takes minutes. The Stripe card migration is the long pole: Stripe usually replies within 1 to 3 business days, but the full transfer typically takes 2 to 5 weeks because your old processor has to export the data on their side.
Will my members notice anything? No. Their saved cards move behind the scenes and they never re-enter anything. Once billing starts, Stripe sends each member a receipt to their email on file.
Does Flow Roll ever see my members' card numbers? No. The transfer happens directly between your old processor and Stripe using Stripe's secure migration process. Flow Roll connects to your Stripe account only after the cards are already there.
Can I cancel my old software as soon as I've exported my members? Not if you're doing a card migration — wait until Stripe confirms the data has landed. If you're already on Stripe (or doing re-collection), you can cancel as soon as your members are imported.
My software isn't listed in this guide. Use the bank-statement and dashboard checks above to find out whether you're already on Stripe. Still unsure? Reach out — our team offers free guided onboarding to sort it out with you.