Knowledge base

Frequently Asked Questions

Every question in unSquared's in-app Knowledge Base, in one place - search across all of it, or filter down to one topic.

194 questions total

Getting Started

What is unSquared?
unSquared moves your Square data - products, customers, gift cards, discounts, collections, and URL redirects - into Shopify, so you can switch platforms without starting from scratch. You review and configure each migration type, then run it with real-time progress and a downloadable report.
Is my Square data safe? Does unSquared change anything in Square?
Yes, it's safe. unSquared only reads from Square - it never creates, edits, or deletes anything there. All the changes it makes happen on the Shopify side only.
Should I migrate everything, or only the data I think I need?
We recommend everything - every data type and every Field Mapping field. Once you deactivate your Square account, Square no longer gives you access to your item library, customer directory or sales history, and the account can't be reopened, so anything left behind is gone for good. Anything you don't need can be deleted, hidden or archived in Shopify in minutes. Adding a missed field later is more work - another run that rewrites products you may have edited, and only while Square is still connected. The one exception is gift cards: Shopify never lets an imported gift card be deleted, only deactivated, so pick those deliberately.
What Square account access do I need to connect?
Owner-level access to your Square account. Square's own secure sign-in screen requires this to authorize any third-party app, unSquared included - a staff login with limited permissions won't be able to complete the connection.
What permissions does unSquared request from Square, and why?
Seven permission categories, each tied to a specific migration type: Products Catalog (items, variants, images, stock levels), Customers (contact details and groups), Gift Cards (codes, balances, expiry), Merchant Info (your business profile, used to label reports and confirm the connection), Vendors (vendor names applied to migrated products), Team Members (staff names applied to migrated product variants), and Square Online Site (your Square Online domain, used to build URL redirects). unSquared only ever asks for read-only access to this data - it can view it but never change or delete it in Square.
What can I migrate with unSquared?
Products & Variants - titles, pricing, images, inventory per location, and taxonomy category. Customers - contact details, addresses, and marketing consent. Gift Cards - codes, balances, and expiry dates. Discounts - discount codes and automatic discounts recreated from your Square rules. Collections - built automatically from your Square categories. Product Weight + Online Price - a lightweight CSV-based update for product weight and/or Square's Online Sale Price, for products already in Shopify. Inventory Sync - keeps stock levels current after your initial migration. URL Redirects - so old Square product links still work after you switch. Each type has its own settings page, migration history, and downloadable report.
How many products, customers, gift cards and URL redirects can I migrate?
There's no unSquared limit on how many - unSquared reads everything from Square page by page until it has it all. The limits that apply come from Shopify and Square, mostly per item. Products: up to 3 options and 250 images per product (Shopify's limits), so unSquared brings up to 3 options and the first 250 images of each Square item. If a Square item has more than 3 options, the extra options are combined into the 3rd so the product still migrates (or the item is skipped and listed in the report if you turn off "Combine extra options" in Product Settings). A Square item can have up to 250 variations, and unSquared migrates every one of them, each with its Square link and stock. More than 2,000 products switches to a faster batch mode automatically, and if a very large store (not on Shopify Plus) reaches Shopify's daily limit on new variants, unSquared pauses and continues by itself about 24 hours later. Customers: no limit - customers with no email and no phone, or sharing an email or phone with another customer, are skipped and listed in the report. Gift cards: no limit - every active Square gift card migrates; inactive ones are skipped. URL redirects: one per migrated product that is Active in Shopify; Shopify allows up to 100,000 redirects per store (20 million on Shopify Plus).
Does unSquared migrate my website's overall SEO settings (meta tags, site config) from Square Online?
No - only product-level SEO. During Product Migration, unSquared brings over each product's own SEO title and meta description (from Square's own SEO fields for that product), and separately uses its Square Online SEO permalink as a fallback match for URL Redirects. It does not migrate site-wide settings from Square Online - things like global meta tags, robots/sitemap configuration, social-media link preview settings, favicon, custom scripts or tracking pixels, or page layouts and custom sections. Those live in Square's website settings, which unSquared has no access to at all; you'll need to recreate them directly in Shopify (Online Store > Preferences, and your theme's settings).
Does unSquared migrate my Square orders or sales history?
No. unSquared migrates catalog and account data - products, customers, gift cards, discounts, collections, and redirects - not past orders or sales history.
Will migrating affect my live Shopify store while it's running?
No - your store stays online and usable the whole time. Migrations write new or updated records in the background; there's no downtime or maintenance mode.
About how long will a migration take?
It varies, but as a rough guide: unSquared deliberately paces every update it sends to Shopify to stay comfortably within Shopify's limits, so that pacing - not unSquared's own speed - is usually what sets the floor. Products take the longest per item since each one involves several pieces (the product itself, its images, its stock at every location), roughly 1-2 seconds each on average - so a few hundred products usually finishes in well under 30 minutes, and a catalog in the thousands can take a couple of hours. Customers, Gift Cards, Discounts, and Collections are simpler and typically process in well under a second each, so even a few thousand records usually finishes in minutes. Inventory Sync only touches items whose stock actually changed, so it scales with how much changed, not your total catalog size. These are approximations, not guarantees - actual time depends on your catalog's size and Shopify's response times at the moment you run it. Once the migration starts, the progress card shows real counts from your own data (created, skipped, failed), so you can follow exactly how far along it is.
How do I choose what to migrate?
Right after you connect Square, unSquared asks which data types you want to bring over - Products, Customers, Gift Cards, and/or URL Redirects. Pick at least one and save to continue. You can select more than one, and change your selection anytime afterward from Settings.
Can I change what I'm migrating later?
Yes - go to Settings > What You're Migrating to add data types anytime, and to remove ones you haven't migrated yet. Two exceptions: you can't uncheck a type while a migration or scheduled run for it is currently active, and you can't remove a type that has already been migrated.
Can I try unSquared before I pay?
Yes. Right after you connect Square and choose what to migrate, the Get Started screen offers a free preview. Click "Preview Data" to see how a small sample of your own Square data would look in Shopify - about 15 products (with one collection and one discount), 10 customers, your active gift cards and a few URL redirect examples, depending on what you chose. You don't need to buy a plan to use it, and nothing is created in your Shopify store. You finish setup from the button at the bottom of the preview. Or click "Skip to Dashboard" to finish setup and go straight to your dashboard.
Do I have to use the free preview to finish setup?
No, but you do have to choose. Get Started is finished by clicking Skip to Dashboard, or by clicking Preview Data and then the button at the bottom of the preview (Finish setup and go to Dashboard). Until then your dashboard menu stays hidden, and if you close the app and come back, Get Started shows again with your choices already ticked so you can pick one of the two buttons.
Can I look at the free preview again after I finish setup?
Yes. Open Settings and use the Preview Data card (it sits under What You're Migrating) to see a fresh sample of your data. It is a view-only second look: a Back to Settings button is the only way out, and nothing can be started, finished or bought from that page. The card only appears while Square is connected, you have chosen at least one type the preview can show, and your one-time migration is not yet marked complete. Opening the preview address directly (from a bookmark or your browser history) after setup is finished sends you to your dashboard instead - use the Settings card.
Does the free preview change anything in my Shopify store or Square account?
No. The preview only reads a small sample from Square and shows how it would look in Shopify. Nothing is created, changed or deleted in Shopify, and nothing is changed in Square. It doesn't start a migration, doesn't appear in your Migration History, doesn't change your dashboard checklist and doesn't use up any part of your plan, so there is nothing to clean up afterward.
What does the free preview show?
Each item is shown the way it would look in Shopify, using unSquared's default settings. A product opens into a Shopify-style product page: title, URL handle, status, description, images, options, every variant (price, SKU, barcode, inventory, weight, cost, tax and shipping settings, the variant's own image and its metafields), tags, collections, sales channels, the search engine listing, and every metafield unSquared can save. Fields with nothing in Square are still listed and marked Empty. A customer opens into contact details, default address, note, tags and metafields. Gift cards and URL redirects are shown too, plus one example collection and one example discount.
How are the preview's sample items chosen, and why only a few?
The preview reads one small page from Square, so it opens quickly even for a very large account. You see the first 15 active products, the first 10 customers a real migration would bring over (customers with no email or phone number are skipped, as in a real run), up to 10 active gift cards and up to 10 URL redirect examples. The totals in your Square account are shown next to each count. The collection is the Square category most of the sample products belong to, and the discount is an active Square discount, preferring one that applies to the sample products. Use Refresh sample to read a fresh sample from Square.
Which settings does the free preview use? Do I need to map locations first?
unSquared's default settings, so there is nothing to set up first - no location mapping, Field Mapping or Migration Settings. Optional customer and gift card details (address, birthday, note, expiry and the Square details kept in a gift card's note) are shown as if turned on, so you can see everything unSquared can bring over. Marketing consent is never imported unless you turn it on. The inventory shown is the quantity unSquared would set in Shopify after you map your locations; nothing is written until you migrate. You choose your real settings later, on each migration's page.
Does the free preview guarantee my migration will turn out exactly like this?
It is an accurate picture, not a guarantee. The preview uses the same conversion unSquared uses in a real migration, so you see what unSquared would send to Shopify. It can't ask Shopify to accept anything, though, so it can't show things only Shopify can tell, such as a product that already exists in your store or a record Shopify rejects. Your real settings can also change the result. The downloadable report from the real migration lists every item that was created, skipped or failed.
Why can't I uncheck a data type in Settings?
A type is locked (shown checked and disabled, with a note explaining why) while a migration for it is actively running or paused, or while a scheduled run is queued - unchecking it mid-run could leave things in an inconsistent state. Once that run finishes (or the schedule completes/is cancelled), the checkbox unlocks again. A type you've already migrated is also locked, and stays locked: its card is shown checked and disabled with the note "Already migrated, can not edit.". Only that card locks - the other types stay editable.
Why are ALL the cards in "What You're Migrating" disabled, not just the one that's running?
If any data type has a migration actively running/paused or a scheduled run queued, the whole checklist locks, not just that one card, and you'll see a warning explaining why. Changing an unrelated type's selection while something else is running risks the dashboard checklist and cards flickering mid-run, so nothing here is editable until that migration or schedule finishes - then every card unlocks again as normal. (A type you've already migrated is different: only its own card is locked, and it doesn't lock the others.)
What does the checklist on my dashboard mean?
"Your Migration Checklist" shows each data type you chose to migrate, with its current status: Not started, In progress, or Completed. It updates automatically as you run migrations - there's nothing separate to manage here. Next to the heading, a badge such as "2 / 4 completed" counts how many of your selected types have completed.
Why does a migration card say "Excluded"?
That data type isn't part of your current migration selection, so its card is dimmed with a link to update your choice in Settings instead of a working link to that migration page. Nothing is deleted or lost - add it back from Settings > What You're Migrating whenever you want to migrate it.
What does "one-time migration" mean, and what happens once I finish?
"One-time" means unSquared copies your selected Square data into Shopify once, on your schedule - it doesn't keep Square and Shopify continuously synced afterward (Products has separate opt-in tools, Inventory Sync and Re-sync Products, if you want to keep pulling in changes later). After you pick your data types on the Getting Started screen, you configure and run each one from its own migration page, with real-time progress, pause/resume, and a downloadable report. Your dashboard checklist tracks each type's status - Not started, In progress, or Completed - so you can see at a glance once everything you selected is done. Nothing else changes automatically after that; you can still revisit any completed type's migration page anytime, and you can always add more data types later from Settings. When you are completely done, you can mark your one-time migration complete from the dashboard; that closes every migration and tool, and if you click it too soon you can reopen it once, within 24 hours, to use any one-time tools you have not used yet.

Running & Managing Migrations

Can I pause, resume, or cancel a migration partway through?
Yes, for every migration type. Pausing stops it at a safe point without losing what's already been processed, and cancelling ends it there - nothing already migrated is undone either way.
I cancelled a Products migration partway through - what happens to Categories and Discounts?
If you had Categories and/or Discounts turned on, cancelling gives you a choice: "Stop everything now" stops immediately and skips them, same as before. "Finish Categories & Discounts, then stop" stops importing new products (for a large migration running in a faster high-volume mode, that means after the batch already in progress finishes, not instantly), but still creates Categories/Discounts for whatever products already made it in before marking the migration cancelled. If neither toggle was on, or you're cancelling Inventory Sync or Re-sync Products, cancel just stops immediately.
Can I cancel the Categories or Discounts step on its own, once it's running?
Yes - each has its own Cancel button, independent of the Products step and of each other. Cancelling Categories doesn't stop Discounts (or vice versa), and either one can be cancelled without touching the products that already migrated. Nothing already created in Shopify by that step is undone.
What happens if some items fail during a migration?
The migration keeps going - one failed item doesn't stop the rest. Download the migration report afterward to see exactly which items failed and why, so you can fix the issue in Square and re-run.
A migration card shows an "Unavailable" badge and no link - what does that mean?
That migration type has been temporarily switched off, usually while our team investigates a critical issue with it. It's unrelated to your Square connection or your store's data - nothing you've already migrated is affected, you just can't start a new run of that specific type until it's switched back on. If you have a notification email configured under Settings, you'll get a one-time heads-up email when this happens, and a scheduled Gift Card migration for that window will run automatically once the feature is back - no need to reschedule it yourself.
Why is there no Download Report button for some runs in Recent Migrations?
When a run processed nothing at all - nothing imported, skipped, or failed - there's simply nothing to report, so the Download Report button is replaced with a dash instead of producing an empty file. This applies the same way across every migration type's history table.
Where did the separate Inventory, Discounts, and Collections tabs go from Migration History?
They're no longer separate entries - Discounts and Collections have always been sub-steps that happen inside a single Product Catalog run, so Migration History now shows just one "Product Catalog" row for that run instead of three. Open its View Report page and use the view dropdown above the item table to switch between Product Catalog, Inventory, Discounts, and Collections - the downloaded Excel (.xlsx) report has the same four as separate sheets in one file. "Sync Inventory" still has its own row, just relabeled from "Inventory" so it isn't confused with the Inventory view inside the Product Catalog report.
I unselected a data type in Settings, but its tab is still showing in Migration History - is that a bug?
No, that's intentional. Unselecting a data type on your migration checklist only controls what shows up to migrate going forward - it doesn't erase anything you've already migrated. If a type has any completed migration history, its tab stays on Migration History so you can always come back and review or download past reports, even after you've unchecked it in Settings. It just won't have a "Go to [page]" button, and you won't be able to open that migration page directly, since it's no longer part of your current selection - add it back from Settings > What You're Migrating if you want to run it again.
Why are "Manage Inventory" and "Re-sync Products" greyed out even though I've migrated products before?
unSquared checks Shopify for Square-migrated products each time this page loads and whenever you open either modal - not just whether a migration ever completed. If none are currently found - most commonly because they were deleted from Shopify afterward - both buttons are disabled and a banner explains why. Run Product Migration again to re-enable them. If the check itself fails (e.g. a temporary Shopify connection issue), the buttons are left as they were rather than disabled. A few other conditions grey out one or both buttons too: no location mapping has ever been saved, a Products/Inventory Sync job is already active, the page's catalog data is still loading, or your plan doesn't include that feature. Two conditions are not shared between the two: Manage Inventory also greys out while "Refresh Data" is running, and Re-sync Products also greys out while a standalone Collections or Discounts job is running (which doesn't affect Manage Inventory).
Why is "Refresh Data" greyed out on the Product Catalog page?
Refresh Data clears unSquared's cached copy of your Square data and reloads it live, so it's disabled while there's already a live operation in progress that it would interfere with: any Products/Inventory Sync job, a standalone Collections job, or a standalone Discounts job that's currently active, or while the page's own counts and previews are still loading for the first time.
Why is "View History" greyed out on the Product Catalog page?
It's disabled until at least one Products job has ever been created for this shop - including a failed or cancelled one, not just a completed migration. On a fresh install, or a shop that has never started a Product Catalog migration, there's nothing to show yet, so the button stays disabled until the first run is started.
Can I start a new Product Migration, Re-sync Products, or Manage Inventory while one of them is already running?
No. Only one Products/Inventory Sync job can run at a time per store, and unSquared blocks starting another on the server as well as in the UI, so it can't be bypassed by having the page open in two tabs or refreshing at the wrong moment. Standalone Collections and Discounts creation are blocked the same way whenever a full Product Migration is active. A running Product Weight Migration also blocks Product Migration, Re-sync, and Manage Inventory, and vice versa - both write the same variant weight field.
Can I start a new Customer, Gift Card, or URL Redirects migration while one of them is already running?
No - the same rule as Products applies to each of these individually: only one run of a given type at a time, enforced on the server as well as in the UI. Wait for the current run to finish, or cancel it, before starting another of that same type.
Can I run a Products migration and a Customers migration at the same time?
No - Products and Customers can't run at the same time. Shopify only allows one large "bulk" data transfer per store at a time, and either migration can switch into that faster high-volume mode automatically for a very large catalog or customer list. unSquared can't know that in advance, so it blocks the second migration as soon as the first one starts (waiting to start, running or paused) until it finishes or is cancelled. The Migrate and Re-sync buttons are greyed out with an explanation, and if a page was already open when the other migration started, clicking the button shows a message and nothing starts. Gift Cards and URL Redirects are not affected - a Shopify-side limit, not an unSquared restriction.
Do I need to keep my browser open, or stay on the page, while a migration is running?
No. Once you click Migrate, the run continues on unSquared's servers in the background - closing the tab, navigating elsewhere, or closing your browser entirely doesn't stop it. Come back anytime to see live progress, or download the report once it's finished. The only way to stop a run early is clicking Cancel.
What if unSquared's own servers restart or go down briefly while my migration is running?
Your progress isn't lost. unSquared automatically detects a run that got interrupted this way and picks it back up on its own once things are back - already-migrated records are never redone or duplicated. For a large product migration, it also checks with Shopify which products the batch in progress had already created, finishes their stock and sales channels, and reports each one once. This is different from uninstalling the app mid-migration, which does deliberately stop the run.
My product migration stopped part-way. What happens when I run it again?
unSquared recognizes every product it already created, so running Migrate again carries on from where it stopped instead of starting over. Products already in Shopify are skipped (or updated in place if "Allow override already migrated products in Shopify" is on), and the rest are created using your saved settings. Nothing is duplicated. Before you start, the Products page shows a "Continuing a previous migration" note above the Migrate button with how many products are already in Shopify and about how many remain. The remaining number is approximate, because the two counts come from Shopify and Square separately.
The progress card is at 100% but says "Finishing up…" - is it stuck?
No. Every product has been processed at that point. unSquared is finishing the last steps, such as inventory, publishing and any Categories & Discounts you turned on, and the card shows a moving bar instead of a percentage. For a large catalog this can take a few minutes, and the card updates by itself when the run is done. Pause and Cancel stay available.
Will migrating overwrite my existing Shopify products?
Only if you turn on "Override Existing Products" - OFF by default. With it off, products already migrated are left untouched and simply skipped on the next run. This option is specific to Products; Customers and Gift Cards always skip existing records rather than overwrite them.
What happens to archived or deleted Square products if I choose to include them?
By default, unSquared only migrates active Square products - archived and deleted items are skipped entirely. Turning on "Include Archived Products" and/or "Include Deleted Products" brings those across too, but instead of creating them as Active, unSquared sets their Shopify status to Archived and adds a matching tag, so you can immediately spot and filter them in Shopify admin.
The "Total Products" count under My Square Catalog changed when I turned on a toggle - is that right?
Yes, that's expected. "Total Products" always reflects exactly what the current toggle combination would migrate - unlike the toggles themselves, this count updates live and doesn't wait for Save Settings, since it's just a preview.
I flipped a toggle but nothing changed - why?
Toggles on the Products, Customers, and Gift Cards pages only take effect once you click "Save Settings" - flipping a switch updates what you see on screen, but the actual migration uses whatever was last saved. This stops the page from flickering warnings on and off before you've actually decided, and means what you see in "Ready to Migrate" always matches exactly what running Migrate will do.
Can I schedule a migration to run later instead of right now?
Yes, for Inventory Sync and Gift Cards - pick a date and time (up to 14 days out) and it runs automatically at that time. Other migration types are run manually.
Do I need to keep the Products or Gift Cards page open for a scheduled migration to actually run?
No. A scheduled run is checked for and started by unSquared's backend, not by your browser tab. Once it starts, its progress card is labeled "Scheduled run" so you can tell it apart from a manually started migration, and you can pause/cancel it the same way as any other run.
I scheduled a migration, then ran it manually before the scheduled time. What happens to the schedule?
It's automatically cancelled - starting the migration manually always supersedes a pending schedule for that same type, so it won't also fire later and run again. A dismissible banner confirms this on the page, with a link to the report for the manual run, and the cancelled schedule still shows up in Schedule History for your records.
How do I know a scheduled migration has finished?
The Dashboard shows a "Recent Scheduled Migrations" banner for each scheduled run that completed or failed in the last 7 days (up to 5). The Gift Cards page shows the ones for scheduled gift card migrations, and the Product Catalog page the ones for scheduled Inventory Syncs. Click View details to open it in Migration History. Closing a banner hides it for good for your whole store - on every browser and device, and for every staff member.
Why did Shopify ask me to review unSquared?
That's Shopify's own review prompt, shown once your dashboard checklist shows every migration type you chose as complete. It's not something unSquared controls directly - Shopify decides if and when to actually display it.
Where did the Recent Migrations History section go from the dashboard?
It moved to its own page - click the "Migration History" button near the top of the dashboard to see it, with the same tabs, table, and "View Report" links as before. Moving it off the dashboard keeps the dashboard itself loading faster, since it no longer has to fetch your full migration history just to show the page.
What does the "Type" column in Recent Migrations mean - Re-sync vs Regular?
It tells you which kind of run that row was. "Re-sync" means it came from Re-sync Products or Re-sync Customers - runs that only refresh already-migrated records and optionally add brand-new ones. "Regular" means it was a normal Products, Customers, Gift Cards, or URL Redirects migration. The same distinction is included as a "Migration Type" row in the downloadable report for that run.
I see a red banner that says "Couldn't load some details" with a "Try again" button - what does that mean?
Some numbers on unSquared's pages - such as counts, your discount list, or a preview - are fetched in the background after the page appears. This banner means one of those lookups just failed. The usual cause is that Square or Shopify was briefly slow or unavailable, or your internet connection blipped for a moment, and it is almost always temporary. Nothing has been changed or lost, and no migration was started or stopped because of it. The rest of the page keeps working. What to do: (1) Click "Try again" - it reloads only the lookup that failed, and the button shows a spinner while it retries. (2) If it fails again, wait about a minute and try once more, or click "Refresh Data" on that page. (3) If needed, reload the page. (4) If it still fails after a few minutes, check the dashboard for a Square API outage notice, and check under Settings that Square is still connected. If everything looks fine, contact support (Settings > Need Help?) and tell us which page you were on, roughly what time it happened, and include a screenshot. You can see this banner on Products, Customers, Gift Cards and URL Redirects, and in the Product Weight + Online Price section of Settings. On the migration pages it is not shown while a migration is running, because the progress card takes its place.
Some numbers on my migration page show a spinner instead of a number, and "Migrate" is greyed out - what should I do?
That is on purpose. When a lookup fails, unSquared keeps showing the normal loading spinner instead of a number, because showing 0 would be wrong and could make you think you have no products, customers or gift cards. Migrate stays greyed out until the real numbers are known, so a migration is never started using counts that unSquared doesn't actually have. To fix it, click "Try again" in the red banner near the top of the page, or click "Refresh Data". Once the numbers load, the spinners turn into real values and Migrate becomes available again - as long as the page's other requirements are met, such as having saved your Migration Settings. Your saved settings are never changed by a failed lookup, including choices like your discount option.
The whole page shows an error number (like 500) and "Something went wrong" - what should I do?
This screen replaces the page when something fails in a way that stops it from showing at all. The large number is the error code (500 means a problem on our side, 503 means unSquared is briefly unavailable, and so on), and the message under it says what happened. Click "Try again", which simply reloads the page - most of the time that is all it takes, especially if the cause was a moment of poor internet or a short outage. Since a recent update, the small background lookups (counts, previews and similar) no longer cause this screen: if one of those fails you'll see a "Couldn't load some details" banner with a Try again button instead, and the rest of the page keeps working. You can still see this full-page screen, for example, if your internet connection dropped while the page was loading. If it keeps coming back, close the app and reopen it from your Shopify admin, and if it still happens, contact support (Settings > Need Help?, or email us if Settings won't open) with what you were doing, the error number, the time it happened, and a screenshot. "Back to Dashboard" takes you to the main dashboard instead.
I clicked Migrate (or Re-sync, Sync Inventory, Create Collections or Create Discounts) and got a message that it couldn't start - what should I do?
This means something went wrong for a moment, either on our side or in the connection to Square or Shopify, so the migration did not start. Nothing was migrated and nothing on your Shopify store was changed by that click. The page stays open and your settings are kept. It is safe to click the button again - unSquared never runs two of the same migration at once, so you cannot start it twice by mistake. What to do: (1) Wait about a minute and click the button again. (2) If it fails again, click "Refresh Data" on that page, then try once more. (3) Check under Settings that Square is still connected. (4) If it still won't start, contact support (Settings > Need Help?) and tell us which page and button you used, roughly what time it happened, and include a screenshot. One thing to check: if you had a scheduled run waiting for the same migration and you started it by hand, the scheduled run is replaced by the manual one, so look at the scheduled list to make sure it is what you expect.
I saved my "What to migrate" choices and saw "We couldn't read your selection" - what does that mean?
This is rare. It means the choices you saved did not reach unSquared in a form it could read, so nothing was saved and your earlier selection is unchanged. Reload the page, choose what you want to migrate again, and click Save. You can find this list after connecting Square and under Settings > What You're Migrating. If the message keeps coming back, contact support (Settings > Need Help?) and tell us what you were doing and include a screenshot.

Field Mapping & Taxonomy

What is Field Mapping, and do I need to configure it?
It's the list of every piece of Square data unSquared can bring across - title, variants, price, description, SKU (the code you use to track each product's stock), barcode, weight, images, tags, and several behind-the-scenes detail groups - with a checkbox to include or skip each one. Title, Variants, and Price are required and can't be unchecked; everything else is optional and on by default. One exception: the hidden link back to each Square product is always migrated no matter what, since Re-sync Products, Inventory Sync, and duplicate-detection all depend on it internally.
What is a metafield in Shopify, and where do I see the ones unSquared creates?
A metafield is Shopify's built-in way to attach extra structured data to a product, variant, customer, or collection that has no native field of its own for it - each one has a namespace and key (for example square.channel_names) so different apps' data never collides. See them on a product's own page in Shopify Admin under "Metafields", filter or bulk-edit products by one, reference them in your theme code, or read them from Shopify Flow and other apps. unSquared writes its own square.* and custom.* metafields for Square catalog details that have no native Shopify field to go in - category paths, modifier data, sales-channel names/types, vendor details, per-location stock settings, and more.
Does unSquared bring over my vendor details and low-stock settings from Square?
Yes, as variant metafields in the square.* namespace. For vendors, unSquared saves the vendor's ID, name, status, account number, note, address and contacts (contacts removed in Square are left out), plus your vendor's own SKU for that variation and the vendor cost. If a variation has more than one vendor in Square, unSquared uses the first one - the same vendor that fills Shopify's Vendor field. For stock settings, square.low_stock_threshold holds the low-stock alert level, and square.location_inventory lists each location's inventory-tracking setting and low-stock alert by location name. The location availability and the variation's own timestamps follow the Misc Square Data and Square IDs groups in Field Mapping.
Where does Square's buyer-facing name and HTML description go in Shopify?
The Shopify product title always uses the Square item name, and the description is the item's plain description with line breaks. The buyer-facing name is saved in square.buyer_facing_name and the HTML version of the description in square.description_html (both under Misc Square Data in Field Mapping), so nothing is lost and you can use them in your theme or when editing the product.
My Square barcodes are actually stored in the SKU field, not the UPC (barcode number) field - can unSquared still migrate them as barcodes?
Yes. Open the Barcode row in Field Mapping and change "Where should the barcode come from?" from "My barcode in Square" to "My SKU in Square - use it as the barcode for every product." Two extra options appear: keeping the value in Shopify's SKU field too, and saving the real barcode in the background instead of losing it. Field Mapping choices apply immediately to whatever migration you run next in this session; click Save Field Mapping if you also want the choice remembered for next time.
Only some of my Square products have a real barcode - the rest use SKU as their scannable code. How should I migrate those?
Use the Barcode row's third option: "My barcode in Square - but use the SKU instead for products that don't have one." This keeps the real barcode for every product that has one, and only substitutes SKU for products Square has no barcode on at all - unlike the "use SKU for every product" option, it never overwrites a real barcode.
Does the "Measurement Unit" row in Field Mapping bring over my products' real weight?
No, not for most products. Square simply doesn't store an item's actual physical weight anywhere - "Measurement Unit" only exists for items Square sells by weight, so when detected, unSquared sets a placeholder weight of 1, not the real weight. For real, accurate per-item weights, use the separate Product Weight migration, which reads actual values from a CSV export.
Does unSquared keep track of my products' item type from Square?
Yes - behind the scenes, unSquared remembers each product's Square item type in two forms: Square's raw internal value, and the same thing as the human-readable label Square's own item type picker shows (Physical good, Prepared food and beverage, Event, Digital, Donation, and so on). Both are kept so the right format is available whichever way you or another app need to reference it.
What is taxonomy mapping, and do I need to set it up?
It's how each Square category gets matched to Shopify's standard product taxonomy, which powers Shopify's category-based filtering and reporting. It's optional and off until you turn it on - a toggle at the top of Taxonomy Mapping switches it on (saved as soon as you flip it), and while it's on, unSquared auto-suggests matches for you; anything left unmapped is simply not categorized rather than blocking your migration.
How accurate is the auto-suggested taxonomy mapping?
It's a starting point, not a guarantee - auto-suggest matches each Square category name against Shopify's own taxonomy search and picks its best result, usually close but not always the most precise, deepest category. Review suggestions before migrating. To fine-tune after migrating instead, select products in Shopify admin and use Bulk Edit to update Category.
I clicked "Clear All" in Taxonomy Mapping by accident - can I get my mappings back?
Yes, if you catch it right away - clearing shows a toast with an "Undo" button that restores every mapping exactly as it was, as long as the toast is still on screen. Once it disappears, or once you click Save Taxonomy Mapping, the clear is final.

Products, Inventory & Collections

Why is "Migrate to Shopify" greyed out on the Products page with a warning to save settings?
Migration Settings must be saved at least once before a product migration can run, even with nothing changed. Click "Save Migration Settings" once - it's enabled for exactly this on a first visit - and the warning clears. Inventory Sync and Re-sync Products aren't affected.
Why is "Migrate to Shopify" greyed out with a warning to review and save Field Mapping?
On your first product migration, Field Mapping must be saved at least once, even if you keep every field at its default (all ticked). Review the fields and click "Save Field Mapping" once - it's enabled for exactly this while it says "Not saved yet" - and the warning clears, as long as Migration Settings is saved too. You only do this once per store.
Do I need to migrate Products before running Inventory Sync or Re-sync Products?
Yes. Both only work on products that were originally migrated through unSquared - they recognize matching Shopify products using a hidden tracking link unSquared sets during Product Migration. Products added directly in Shopify won't be matched.
Will migrating create a duplicate if I already have that exact product in Shopify?
No - as long as unSquared can see it. unSquared recognizes a product as already migrated via its own hidden tracking link, but also checks every Square item against your other existing Shopify products by SKU, barcode, and handle. A match is skipped by default. An "Overwrite existing Shopify product with matching Square SKU, barcode, or handle" toggle on Ready to Migrate lets you overwrite it with Square's data instead. Either way, the report states exactly which field caused the match. If only some of a product's variants match, the whole product is skipped - see the next question.
If only one variant of a Square product already exists in Shopify, what happens to its other variants?
unSquared treats a match on any one variant (by SKU or barcode) as a match for the whole Square product. With the "Overwrite existing Shopify product with matching Square SKU, barcode, or handle" toggle off (the default), the whole product is skipped - so its other variants, the ones with no match in Shopify, are not migrated either, and nothing in Shopify is changed. The skipped row's note says how many variants were left behind, and both the downloadable report and View Report flag these products. To bring the complete product over, run again with the toggle on - this overwrites the matched Shopify product with Square's data, so back up first.
What does "Sync Inventory" do, and how is it different from Re-sync Products?
Inventory Sync only touches stock quantities - never title, price, images, tags, or any other field. It compares Square's current quantity to Shopify's at every mapped location and only writes where they differ. Re-sync Products is broader - it refreshes title, description, price, images, inventory, and other saved details together using your current settings.
What's the Pre-Sync Report, and do I need to run it before Sync Inventory?
It's optional - a downloadable spreadsheet (CSV) comparing Square and Shopify quantities for every already-migrated variant before you sync anything. Running it never writes anything to Shopify; it's purely a preview.
What happens to products that are only available at a Square location I didn't map?
They still migrate as full products, but show 0 stock everywhere until fixed. Go back to Location Mapping, map the remaining location(s), then click "Sync Inventory" - unSquared re-checks every product already migrated and activates stock wherever a location is now mapped.
Why does the product count next to a Square location show something like "2,500+" instead of an exact number?
That count is capped at 2,500 items per location on purpose, to keep Location Mapping loading quickly. The "+" means the real total is at least that many. This only affects the on-screen estimate - the migration itself always processes your full catalog.
Do I need to migrate Products before creating URL Redirects?
Yes. URL Redirects point old Square product URLs to their new Shopify equivalents, so those products need to already exist in Shopify.
Can I create Collections without running the Product Migration?
No. Collections is a setting inside Product Catalog Migration, not a separate step - turn on "Create Shopify Collections" and it runs together with that same migration.
Can I skip Discounts or Collections, or run just one of them?
Yes. "Create Shopify collections from Square categories" and "Migrate discounts from Square" are two independent toggles in Migration Settings - turn either on or off in any combination. Both default to off.
What kind of Shopify collections does unSquared create from my Square categories?
Automated ("smart") collections that use a tag rule matching the category, so products keep getting added automatically as more are migrated. If a manual collection with the same name already exists, the newly migrated products are added to it instead of creating a duplicate.
Why are the collections unSquared created from my Square categories empty?
Most likely "Tags" was unchecked in Field Mapping when the products were migrated. Each collection adds products by their Square category tag, so without it no product matches. Check Tags, save Field Mapping, then re-sync or re-run so the products get their category tags. A warning under the Collections setting now flags this before you migrate.
A re-run created a second copy of a collection (like "shirts-1") - why?
The original most likely uses one of Shopify's newer collection options - excluding products, sub-collections, or more than one source. unSquared doesn't support those yet and can't see such a collection, so it created a new one (and URL Redirects can't match it). Delete the extra copy and keep unSquared's collections on standard condition rules for now.
Can customers keep buying a product after it sells out ("Continue selling when out of stock")?
Yes, if you turn on "Continue selling when out of stock" in Product Settings (under Product Filter Options) and click Save Settings before you migrate. It is off by default. When it is on, every product variant the migration creates or overwrites is set to "Continue selling when out of stock" in Shopify, so customers can still order it when its stock is zero (useful for made-to-order or backordered items), and Shopify lets the stock count go below zero as those orders come in. When it is off, Shopify's own default applies and a variant stops selling when its stock reaches zero. Square doesn't give unSquared a matching setting to copy, so this is your choice for the whole run - it can't be set for only some products. Variants whose stock isn't tracked are always sellable, whichever way it is set. The Ready to Migrate step and the migration report both show your choice.
My migrated products can't be bought when their stock is 0. How do I change that?
That is Shopify's default: unless "Continue selling when out of stock" is on for a variant, it stops selling when its stock reaches zero, and unSquared only changes that if you ask it to. For products already in Shopify you have two options. In Shopify admin, open the product and tick "Continue selling when out of stock" in each variant's inventory settings. Or turn on "Continue selling when out of stock" in Product Settings, click Save Settings, then run Re-sync Products with "My entire Square product catalog" selected ("Only what changed in Square" skips products that haven't changed in Square, so it wouldn't update them). Turning the setting off later does not turn it off on variants that already have it - change those in Shopify admin.
Will migrated products automatically show up in my Online Store or POS?
Depends on what Square tells unSquared. If a Square item is assigned to a specific channel (like your Square Online site or Point of Sale), it publishes to the matching Shopify channel automatically. If Square gives no channel data for an item, the "Publish ECOM products to Online Store" and "Make all products available for POS" toggles (off by default) decide instead. If your Square account has no Online Store channel at all, turning the first toggle on publishes every migrated product to Shopify's Online Store.
What do the square-channel-* and no-square-channel-assigned tags mean?
They reflect exactly what Square reported about each product's sales channels at migration time - square-channel-[name] per assigned channel, or no-square-channel-assigned when Square gave no channel data at all. The same data is also saved as the square.channel_names and square.channel_types metafields.
I uploaded my Square export for Product Weight Migration and got a "Could not find a Token column" error - what's wrong?
Nothing you need to fix - upload the file as-is. Square's export sometimes has an extra title or blank row above the real header row. unSquared automatically finds whichever row actually contains the Token/Weight columns. If you still see this error, confirm the file was exported directly from Square Dashboard and hasn't had its Token column renamed or removed.
My Product Weight Migration file is too large to upload - what do I do?
Files are capped at 20MB. Trim the export to just the Token column plus whichever of Weight or Online Sale Price you actually want to update, and delete blank rows - this routinely shrinks the file 10x or more. If still too big, split it into several smaller files and apply each in turn; this is safe and won't duplicate updates.
Some rows in my Product Weight file show as matched even though I thought their tracking link was gone - how?
unSquared falls back to matching by SKU for any row whose hidden tracking value doesn't resolve to a Shopify variant. This only works if your file has a SKU column and that SKU exists on exactly one Shopify variant - if it exists on more than one, the row is flagged separately rather than matched at random.
Can unSquared migrate Square's "Online Sale Price" to Shopify as a Compare-at price?
Yes, through the same Product Weight Migration upload - Square doesn't share a compare-at/original-price field with any app at all. If your file has an Online Sale Price column, a toggle appears offering to update price: Shopify's price becomes the Online Sale Price, and the variant's prior price becomes the Compare-at price. Off by default since it changes a live selling price. If the toggle is on but the column is empty in every row, the preview tells you no data was found there and only weights are updated.
Why does a large product migration show no Pause button, and "Importing N products" instead of "X of Y"?
Migrations with more than 2,000 eligible products switch to a faster high-volume mode instead of creating them one at a time, submitted in batches of 500. The progress card names the whole job (for example "Importing 5,116 products…") with a live count that climbs as products are created, so it doesn't look stuck between batches. There's no way to pause mid-batch - only Cancel is available.
I cancelled a large product migration - will I lose track of what was already created?
No. unSquared only checks for a cancel request between batches, so the batch already in progress always finishes completely first. Nothing already created in Shopify is undone or left incomplete, and your report reflects exactly what finished before the cancel took effect.
My report says "Created, but stock could not be fully set in Shopify" - what should I do?
The product was created in Shopify, but Shopify didn't accept its stock at one or more locations (the reason is in the note). Run Sync Inventory on the Products page - it re-applies Square's current stock to every migrated product, no need to re-run the migration. If the message comes back, check that the Shopify location in Location Mapping is still active. This note appears in large product migrations (2,000+ products).
My product migration shows "Paused (daily limit)" - what does that mean, and do I need to do anything?
Shopify limits how many new variants a store can create per day once it already has a very large catalog (Shopify Plus stores are exempt, and Shopify doesn't publish the exact numbers) - a Shopify-side limit, not an unSquared one. unSquared pauses automatically and picks back up on its own about 24 hours later from exactly where it left off. No action is needed.
What happens if a product image fails to upload during migration?
The product still migrates normally - a broken or rejected image never blocks the rest. It shows up in the downloadable report's "Failed Images" sheet, which only appears when there's at least one failure.
A Square variant has several images but Shopify only shows one - what happens to the rest?
Shopify gives each variant one image slot, so unSquared links the first image a Square variation owns to its Shopify variant and puts every other image in the product gallery. Tick "Extra Variant Images" in Field Mapping (off by default) to also save each variant's other images in a square.extra_images metafield - an image list pointing at the same gallery pictures, hosted by Shopify, that you can see in admin and your theme can show. Only images Square assigns to that variation are included. The report's "Variant Images" sheet lists the affected variants.
How do I find out which image failed and for which product/variant?
Open the downloadable Migration Report and check the "Failed Images" sheet. Each row shows the Square product/variant ID, SKU, Shopify handle and title, the image URL that failed, its position, and the actual error Shopify returned.
What happens to a Square item that has more than 100 variations?
unSquared migrates all of them. A Square item can have up to 250 variations (Shopify allows up to 2,048 variants per product), and each one is created in Shopify with its Square link and its stock, so Inventory Sync and Re-sync Products keep every variation up to date, not just the first 100. The one per-item limit that still applies is Shopify's 3 options per product: if a Square item has more than 3, unSquared combines the extra options into the 3rd (or skips the item if you turned off "Combine extra options" in Product Settings). Items you migrated before this was improved, with more than 100 variations, still have their later variations without a Square link or stock - contact support from Settings (Need Help?) with the item name and we will help.
Does Shopify limit how many variants, images, or products I can have?
Yes - Shopify enforces its own ceilings independent of unSquared: up to 2,048 variants and 250 images/media per product, 3 options per product, and daily throttles on new product/variant creation once a store gets very large. Most catalogs never come close, but a heavily-variated or heavily-photographed one can.
See the full Shopify Platform Limits Guide →
What happens to a Square product that has more than 3 options (for example Size, Color, Material and Fit)?
Shopify only allows 3 options per product, so unSquared has to adjust it. By default "Combine extra options for products with more than 3 options" in Product Settings is on, and the product still migrates. If leaving out the extra options would still keep every variant unique, only the first 3 options are used. If it would make two variants identical (which Shopify rejects), option 3 and every option after it are combined into one, for example "Material & Fit" with values like "Wool / Slim". Every variant keeps its own SKU, barcode, price, stock and images. The product is tagged unsquared-extra-options, each variant keeps its original options in a metafield called square.option_values, and the migration report notes it. In the storefront the shopper sees one combined dropdown instead of separate ones.
I turned off "Combine extra options". What happens to products with more than 3 options?
They are skipped: not created in Shopify, so they are also missing from collections, discounts and URL redirects. Nothing is lost from Square. Open the migration report and look at the "Skipped - More Than 3 Options" sheet. It lists every skipped product, one row per variant, with all of its original options (not limited to 3) plus SKU, barcode, price, cost, stock by location and image links, so you have every detail. The migration report page also has a "Download Shopify import file (CSV)" button that prepares them for Shopify's own product import (see the next question). Or turn the setting back on and run the migration again.
Can I import the skipped products with Shopify's own CSV import?
Yes. Open the migration report for that run: a banner says how many products were skipped for having more than 3 options and has a "Download Shopify import file (CSV)" button. Shopify's own import also allows only 3 options per product, so each Square product is split into several Shopify products, one for each combination of its 4th and later options (for example "Jacket - Wool / Slim" and "Jacket - Wool / Regular"). Options 1 to 3 stay as the options, each product is tagged unsquared-extra-options so you can find them, and every variant keeps its SKU, barcode, price, cost, weight, stock and images. Before you upload it at Products > Import in Shopify, check the inventory columns: they are named after your Square locations ("Inventory Available: Main Store"), so rename them to your Shopify location names or delete them. Products added this way are new products that are not linked to Square, so Re-sync Products and Inventory Sync will not update them, and they are not in your collections, discounts or URL redirects until you add them. The file is only available for runs that saved the product details, so for an older run use the "Skipped - More Than 3 Options" sheet in the downloaded report. The simplest route is still to leave "Combine extra options" on.
Can shoppers filter by Material and Fit separately in Search & Discovery after the options are combined?
Not directly. A combined option such as "Material & Fit" has values like "Wool / Slim", so Search & Discovery filters on it as one filter with those combined values. unSquared also saves every variant's original options in a variant metafield called square.option_values (for example "Size: S, Color: Black, Material: Wool, Fit: Slim"), and Shopify can use a single line text variant metafield as a storefront filter. But that metafield holds all of the options in one piece of text, so a filter built on it lists whole combinations, not Material and Fit on their own. If you need separate filters, create one single line text variant metafield definition per option (for example Material and Fit), fill each one from square.option_values with Shopify's bulk editor or a product CSV import, then in the Search & Discovery app go to Filters, select Add filter, and choose it as a Variant metafield. This is done in Shopify and is not something unSquared does for you.
What is the example product with more than 3 options on the Preview page?
A made-up jacket, not read from your Square account, shown in a dashed box so it can't be mistaken for one of your products. It follows your saved "Combine extra options" setting: with it on it shows how the options are combined, with it off it shows what would be listed in the skipped-products sheet instead. The preview only reads a small sample of your catalog, so it can't tell you how many products across your whole catalog will be affected. The migration report after the run lists every one.
I see "Couldn't load your locations" with a "Refetch location data" button on the Products page - what does that mean?
Each time you open the Products page, unSquared fetches your Square locations and your Shopify locations so you can map them to each other for inventory. This banner means that lookup failed just now. It is usually a short Square or Shopify hiccup, and it is most likely to happen right after you reconnect Square, because that first lookup has to go all the way to Square. Until the locations load, Location Mapping and every section below it (field mapping, taxonomy, migration settings and Ready to Migrate) stay hidden and Migrate is greyed out. unSquared deliberately does not treat this as "you have no locations", because that would be untrue. Click "Refetch location data" to try again - the button shows a spinner while it retries. Your previously saved location mapping is not deleted by a failed lookup. If it keeps failing after a few tries, check that Square is still connected under Settings, then contact support.
Product Weight + Online Price shows "Something went wrong on our side", or a "Couldn't load some details" banner in Settings - what now?
These are two different messages, and neither means there is a problem with your file. (1) The red banner: when this section opens, unSquared checks whether your plan includes it, whether a product migration is running, and whether a weight migration is already in progress. If that check fails, the section stays closed (no upload box) and shows the banner. Click "Try again". A failed check does not mean you need to upgrade - it shows the retry banner, not the upgrade prompt. If a weight migration is already running, its progress card comes back once the check succeeds. (2) "Something went wrong on our side. Please try again.": this appears when previewing your file, applying weights, or cancelling and our server hits an unexpected problem, such as a brief database or Shopify issue. A failed preview changes nothing. If Apply or Cancel shows it, open Recent Migrations > Product Weight + Online Price first to see whether a run was started or stopped, so you don't apply twice, then try again. The usual messages for known situations (the feature switched off, your plan not allowing it, a product migration running, or an empty file) are unchanged.
In Taxonomy mapping I see "Couldn't load some details" instead of my Square categories, and the Categories tile shows a dash - what does that mean?
unSquared loads your Square category list in the background when you open the Products page. This banner means that lookup just failed - usually because Square was briefly slow or unavailable, or your connection blipped. It is almost always temporary. Nothing has been changed: your saved taxonomy mapping is exactly as you left it, and Migrate is not blocked by this. The Categories tile shows a dash (-) instead of a number because unSquared doesn't know the real count yet, and it deliberately does not show 0 or "No Square categories found", since that would be untrue. Click "Try again" in the banner to reload the list. If it keeps failing after a few tries, click "Refresh Data" on the Products page, check under Settings that Square is still connected, and contact support if it still doesn't load.
A row in Taxonomy mapping says "The search couldn't run just now", or Auto-suggest says it couldn't run - was anything changed or lost?
No - nothing was changed or saved. These messages mean the search (or the Auto-suggest lookup) could not reach Shopify for a moment, so it never actually ran. In a row, you'll see "The search couldn't run just now. Nothing was changed." with a small "Try again" button - it is shown instead of "No results", and it does not offer "Set to Uncategorized", because a search that never ran hasn't found that nothing matches. Click Try again to search again. For Auto-suggest you'll see an error message at the top; no mappings are added and no "No new taxonomy suggestions found" message appears - just click Auto-suggest again. If you had already searched a row successfully, its results stay on screen even if a follow-up refinement search fails. If it keeps happening for several minutes, reload the page and contact support if it continues.

Gift Cards

Why does the free preview only show some of my gift cards?
Only active Square gift cards are migrated, because Shopify only accepts active ones, so only those are previewed (up to 10, with the total shown). In the list the code is masked; open View details to see the full code, value, expiry and note. Shopify gift cards have no metafields, so the Square details unSquared keeps are saved in the card's note. Gift cards are permanent once imported - Shopify only lets you deactivate them, not edit or delete them - so the preview is a good place to check them before you migrate.
Why does it say gift card importing isn't enabled for my store?
Shopify requires this specific capability to be turned on for your store before gift cards can be imported - separate from having gift cards enabled generally. Contact Shopify Support to request it; Gift Card migration is blocked until it's enabled.
Will every gift card in Square migrate?
Only active gift cards migrate - that's all Shopify accepts. Cards that are pending, deactivated, or blocked in Square are skipped automatically; activate them in Square first if you want them included. A $0 balance doesn't exclude a card - it still migrates, just with a $0 balance in Shopify. The one hard limit is Shopify's own $2,000 cap per gift card - a card worth more than that can't be created and is skipped.
Will migrating gift cards send emails to my customers?
Only if you choose that. With "Link Gift Cards to Customers by email" on (it starts off until you turn it on and save), you pick "Link silently, do not email" (recommended, the default), which attaches each card to the customer's record with no email, or "Link and email the customer", which makes Shopify send its standard gift-card email containing their code. A warning banner shows whenever the email option is selected. With linking off, nobody is emailed.
What happens to a gift card if the customer it belonged to no longer exists?
The gift card still migrates - it just won't be linked to a customer. "Link to Customer Records" only ever searches for an existing exact match by email; it never creates a new customer record.
A gift card didn't get linked to a customer - is there a way to still find who it belongs to?
Yes - turn on "Add customer details to the gift card note". This saves the Square customer's name, email, and ID directly on the gift card's note field, even when automatic linking can't find a unique match, so you can assign it manually afterward.
Why is "Migrate to Shopify" greyed out with a warning to save settings, even though I haven't changed anything?
Migration Settings must be saved at least once before a Gift Cards migration (or a scheduled one) can run, even if you leave every toggle off. Click "Save Settings" once - it's enabled specifically for this, even with nothing changed - and both the warning and the disabled state clear. This is a deliberate confirmation step, not a bug.
The Gift Cards page shows "Couldn't load some details", spinners instead of counts, and Migrate and Schedule are greyed out - why?
The Gift Cards page looks up how many gift cards you have in Square, both in total and how many are active. If that lookup fails you'll see the banner, the two count tiles keep their spinner instead of showing 0, the migration setting toggles are locked, and both Migrate and Schedule Migration stay greyed out - unSquared can't tell yet whether there are active cards to migrate. The "no gift cards" warning is not shown either, because it would be false. Click "Try again" to reload the counts; once they load, everything unlocks again. Separately, before a migration unSquared also checks that gift card import is enabled for your Shopify store. If that particular check can't run for a moment it is treated as fine and no warning is shown - the real check runs again on our server at the moment you start a migration, so you're still protected.

Customers

Will every customer in Square migrate?
By default, only customers with an email address or a phone number migrate. Customers with neither are skipped automatically, but you can bring them over anyway by turning on "Migrate customers with no email and no phone" - each is tagged no-email-phone so you can follow up manually.
Why is "Eligible to Migrate" lower than "All Customers"?
"All Customers" is your full Square total; "Eligible to Migrate" is how many a migration would actually take. Customers sharing an email with an earlier customer, customers with no email and no phone, and customers sharing a phone number are skipped (the first two can be included with their toggles; shared phones are always skipped), so it can be a little lower. It updates instantly as you flip either toggle, and Ready to Migrate lists what is included or skipped after you save. Square is only re-read on your first visit and when you click "Refresh Data".
What's in the downloadable Customer Migration report?
It has 3 sheets: "Migrated Customers" (created in Shopify), "Rejected Customers" (a genuine failure or no usable email/phone), and "Duplicate Customers" (skipped because Square doesn't enforce unique email/phone). Each row shows the customer's name, email, phone, Square customer ID, Shopify customer ID, status, and an error message when relevant. For a duplicate or already-exists skip, unSquared looks up the matching Shopify customer and includes its ID too.
What do the Customer Migration Settings toggles (email consent, addresses, birthday, notes) actually import?
"Import email marketing preferences" marks opted-out Square customers as unsubscribed in Shopify. Everyone else with an email is marked subscribed, because Square only reports opt-outs, so someone Square's dashboard shows as "Not subscribed" can still arrive as subscribed. Customers with no email are marked not subscribed. "Import addresses" maps Square addresses to Shopify's format. "Include birthday" saves it behind the scenes on the customer record. "Include notes" copies Square's customer notes into Shopify's note field. All four are independent toggles.
What does "Migrate customers with no email and no phone" do, and why is it off by default?
By default, Square customers with neither an email nor phone are skipped, since Shopify customer records are built around having at least one way to reach someone. Turning this on migrates them anyway and tags them no-email-phone.
What does "Migrate duplicate email address customers" do, and why is it off by default?
Square allows two different customer profiles to share the same email address. By default only the first one migrates - the rest are skipped and listed on the Duplicate Customers report sheet. Turning this on migrates them too, under +1, +2, +3... variants of the same email (e.g. jane+1@example.com), tagged Duplicate-Customer so you can find and merge them in Shopify afterward.
Why does a large customer migration (5,000+) show no Pause button, and a coarser progress bar?
Migrations with more than 5,000 eligible customers switch to a faster high-volume mode instead of creating customers one at a time. Shopify processes the whole batch at once, so there's no live per-customer progress and no way to pause mid-batch.
I cancelled a large (5,000+) customer import - will I lose track of what was already created?
No. Shopify finishes winding down the batch already in progress first, shown as "Cancelling...". unSquared then double-checks directly with Shopify to confirm exactly which customers were created, so your report and Imported count reflect reality rather than showing zero.
What does "Create customer segment" do?
It creates a saved customer group in Shopify (Shopify calls this a "segment") called "Square Migrated Customers" that automatically includes everyone with the square_migrated tag, plus one additional segment per Square customer group. If a segment already exists, it's left alone rather than duplicated. Segments are built entirely from your Square data - they don't depend on the separate Global Customer Tags field, so there's nothing else to fill in for this to work.
Do I need to fill in Global Customer Tags to use "Create customer segment"?
Not for the segment itself - those are independent. "Create customer segment" always works off your Square data alone (customer groups and the square_migrated tag). That said, Global Customer Tags is required before you can migrate customers at all, so you'll need it filled in either way - just not because of the segment feature. Anything entered there is added to every customer migrated in that run, in addition to their automatic Square group tag(s). For example, a customer in Square's "Wholesale Buyers" group with "square-import" set as a global tag ends up with both tags side by side in Shopify.
Why is "Migrate to Shopify" greyed out with a warning about Global Customer Tags?
Global Customer Tags is required before a Customer Migration can run - at least one tag has to be saved in that field. You can still save your other settings with it blank, but Migrate stays disabled with a warning banner above it until a tag is added and saved.
Is there a limit on how many Global Customer Tags I can add?
Yes - Shopify's own limits apply: up to 255 characters per tag, and up to 250 tags per customer. unSquared checks against both before letting you start a migration, and shows exactly which tag or count is the problem if a limit is exceeded.
On the Customers page, "Couldn't load some details" appears, "Eligible to Migrate" keeps spinning, and the toggles and Migrate are greyed out - why?
The Customers page needs two numbers: the total number of customers in Square, and a breakdown of how many of them a migration would actually move (customers with no email or phone, and customers with duplicate emails or phone numbers, are counted separately). If either lookup fails you'll see the banner, the affected tiles keep their spinner, and the eligibility toggles and Migrate stay greyed out. This is deliberate: unSquared never falls back to Square's raw total, because that number is higher than what a migration really imports, and you could start with the wrong expectation. The "No customers found" warning is also not shown, since unSquared doesn't yet know that there are none. Click "Try again" - it reloads only the lookup that failed. Once both numbers load, the spinners turn into numbers and everything unlocks again.

Discounts

Can a discount restricted to a Square customer group work right away?
Not until matching customers exist in Shopify with the right tag. These discounts target a Shopify customer segment by tag, so run Customer Migration first (or tag customers manually) - otherwise the discount is created with no one currently eligible.
What's the difference between "Discount Code" and "Automatic Discount" when creating Shopify discounts?
A Discount Code requires the customer to enter a code at checkout. An Automatic Discount applies on its own with no code needed. Both target the same products using special tags unSquared adds behind the scenes during Product Migration - you pick one method per run. Two kinds of Square discount are always created as codes even when you pick Automatic: ones staff apply by hand, and ones with a day/time schedule.
Are there Square discounts unSquared can't automatically recreate in Shopify?
Yes - Variable % and Variable $ discounts, where Square lets staff enter the amount at checkout. Shopify discounts need a fixed value up front, so these are stored as reference-only tags instead of being auto-created.
My Square discount has "Apply discount after taxes" turned on - does that carry over?
No - Shopify has no equivalent setting. Every Shopify discount is applied before tax, calculated on the already-discounted price. The discount itself still migrates; only the after-tax timing is dropped. A common workaround is letting the order go through at full price and issuing a partial refund afterward.
My Square discount is restricted to Point of Sale only (or Online only) - does that carry over to Shopify?
Not as an enforced restriction - Shopify has no setting that limits a discount to one sales channel. unSquared reads the two boxes under "Apply automatic discount" in Square (Point of Sale and Online), labels the discount " · POS Only" or " · Online Only" in Migration History and the report, and tags every migrated discount in Shopify so you can filter for which ones need a manual restriction.
What happens to a Square discount that staff apply by hand?
unSquared always creates it as a Shopify discount code, even if you chose Automatic. In Square this is a discount where "Apply automatic discount" is turned off - a cashier picks it at the register - and as an automatic Shopify discount it would apply to every cart straight away. The code is the discount's name in capitals with dashes (for example "Staff 10" becomes STAFF-10), and Migration History marks the entry "Manual discount (created as a code discount)".
What happens to a Square discount that only runs on certain days or hours (a happy hour)?
Shopify can't limit a discount to certain days or hours, so the schedule doesn't carry over. To stop it applying around the clock, unSquared always creates it as a discount code (never an automatic discount), so it only applies when the code is used, at any time within its date range. Migration History marks the entry "Time-limited in Square", and the settings page warns you about any scheduled discounts before you migrate.
A discount shows as Failed saying its products or categories weren't found in Shopify - why?
Square limited that discount to specific products or categories, and none of them exist in Shopify yet (for example the products haven't been migrated). Rather than create it as a discount on your whole store, unSquared leaves it uncreated and explains why. Migrate those products (or categories, so their collections exist), then use Create Discounts Now again - discounts already created are recognized and skipped.
Does a Buy X Get Y (BOGO) discount migrate correctly no matter how it's scoped in Square?
Item- and category-scoped BOGO discounts migrate automatically. One with no restriction at all (applies to every item) also migrates - unSquared maintains a dedicated "Square BOGO - All Products" collection behind the scenes, since Shopify's Buy X Get Y discounts have no "all products" option of their own.
Why didn't a Square discount that's already expired show up in Shopify after migrating?
By default, unSquared skips any Square discount whose end date has already passed. Turn on "Include expired discounts as well?" to migrate them anyway, with their original end date carried over as-is.

URL Redirects

Why does the free preview say it can't find a Square Online store?
Redirects are built from your Square Online site, so if your Square account has no published Square Online store there is nothing to redirect, and the preview shows a short message saying so. If unSquared couldn't check your account, or couldn't read the site's page list just now, it asks you to try again instead - that is not the same as having no store. Redirects are created after your products are migrated, because each one points at a new Shopify product page.
What does URL Redirects actually create, and will old Square links keep working?
For every migrated product, it creates a Shopify URL redirect from the old Square Online product path to the new Shopify product URL - so visitors and search engines following an old link land on the right page instead of a 404. Redirects are active immediately, and re-running updates an existing one in place rather than duplicating it.
Why is "Migrate to Shopify" disabled until I download something?
Migrate stays disabled until you've downloaded the Full Preview (a spreadsheet file) - a complete list of every product's match, including anything flagged for review. It's a deliberate checkpoint so you review the full mapping before any redirects go live - once done, it carries over to later visits too, and you'll only need to redo it after Refresh Data or if Square's data changes before you migrate.
What's the "Approve URL redirects and ready to migrate" checkbox for?
It's the second half of the review checkpoint alongside the Full Preview download - confirming you've reviewed the mapping and approve creating these redirects. It saves a timestamp for reference and stays checked on later visits - it's only reset by Refresh Data or by Square's data changing before you migrate.
What does "Needs review" mean in the downloaded preview, and why wasn't that redirect created?
It means no exact match was found, but a similar-looking URL exists on your sitemap, shown with a similarity percentage. These are never created automatically, since a close match could point to the wrong product - set it up manually in Shopify Admin if the suggested match is correct.
What's the "redirects verified working" message after a run, and what should I do if some need attention?
unSquared opens each new redirect on your store to confirm it actually goes to the right Shopify product. Any flagged as needing attention are listed in the downloadable report with the reason - often just a slow or temporarily unreachable connection, so re-checking is usually enough. If Shopify asks unSquared to slow down during the check, it waits and tries again instead of flagging the redirect.
The page says my redirects weren't checked because my online store is password-protected - is something wrong?
No. Every development store, and any store not launched yet, sends every visit to its password page, so unSquared can't open your redirects to check them. Shopify still confirmed each one was created, and none is counted as broken. Once you remove the store password (Online Store → Preferences), old Square links take shoppers to the new product pages.
The progress card reached 100% but still says "Verifying…" - is it stuck?
No. Every redirect is already created; unSquared is opening each new one on your store to confirm it works, with its own count ("Checking redirects: 340 of 1,599"). Pause and Cancel are hidden because there's nothing left to stop. It finishes on its own and stops after 10 minutes at most - any not reached are reported as not checked.
Why were some products skipped, and where do I see the reason?
The progress card lists the reasons once the products are processed: not on your Square Online site (usually in-store only products), only a close URL match ("Needs review"), already had the right redirect, a URL Shopify doesn't allow, or your Square Online site couldn't be found. The report shows each skipped row's own reason.
Why do the counts at the top of the URL Redirects page show different numbers?
"Available on Square" is how many product pages your Square Online sitemap has right now, read directly from Square. "Eligible to Migrate" (Products) is how many migrated products are Active in Shopify and ready for a redirect right now - draft or archived products are left out. "Eligible to Migrate" (Collections) is how many collections unSquared migrated that also have a category page on your Square Online site. The green "Already in Shopify" boxes show how many of those already have the right redirect. It's normal for these to differ before Product Migration has run. The count updates by itself after each Product Migration; if you delete or change products directly in Shopify, click Refresh Data.
I renamed a product or changed its URL in Shopify after migrating - will its redirect still work?
Yes. unSquared still matches the product to its Square Online page by its Square name and Square link, and the redirect points at the product's current Shopify URL, so it lands on the right page.
"Available on Square" shows 0 and says it couldn't find my Square Online store - what's wrong?
This means Square confirmed it has no Square Online storefront domain for your account - unSquared checks Square's website system directly, then falls back to a website URL under Business Information in Square. Publish a Square Online site (or set a website URL on your location), then click Refresh Data.
It says "We couldn't check your Square account for a Square Online store just now" - what does that mean?
unSquared couldn't get a definite answer from Square - either Square didn't respond, or your connection was made before the Square Online Site permission was added. Click Refresh Data. If it persists, disconnect and reconnect Square once (Settings) so Square can grant the new permission, then Refresh Data again.
What happens to my old Square category pages (/shop/...)?
They get a redirect to the Shopify collection unSquared migrated for that category, as long as "Include collection redirects" is on (it's on by default, above Ready to Migrate). A collection you made by hand isn't used - only one unSquared created from a Square category. The switch is turned off, with a note, if no collections have been migrated yet or none has a category page on your Square Online site. The Full Preview (CSV) lists every category page and whether it gets a redirect.
Does the report show the actual Shopify Redirect ID, and can I tell a product redirect apart from a category one?
Yes. Both the on-page report and the downloadable file show the Shopify Redirect ID for every created or updated redirect, plus a Type column: Product for every product row (a product skipped before a Square URL was found shows its name instead of a URL), Custom for a CSV-imported mapping, and Collection for a Square category page redirected to its Shopify collection (only on runs with "Include collection redirects" on).
Why do I have to download and approve the CSV again after Square data changed?
The CSV you approved lists exactly which redirects will be created. If Square changed when you clicked Migrate to Shopify (for example "Product URL redirects available: 100 to 101"), that CSV no longer matches, so only "Refresh and review" is offered. Refreshing re-locks the CSV download and approval checkbox, so you download and approve the updated CSV again before Migrate is available.
The URL Redirects page shows "Couldn't load some details" and the preview or the Migrate button is missing - why?
The URL Redirects page makes two lookups in the background: how many migrated products are ready for redirects, and a sample preview built from your Square Online sitemap. If either one fails you'll see the banner, the numbers keep their loading state, and Migrate stays greyed out. unSquared does not show the "no Square Online domain" or "no products migrated yet" messages in this situation, because they would be false - the lookup just didn't finish. If you had already loaded a preview earlier on the same visit, it stays on screen instead of disappearing, so you don't lose your place. Click "Try again" - it reloads whichever lookup failed. Remember that each visit still requires you to download the full preview and tick the approval box before Migrate becomes clickable.

Re-syncing & Duplicates

What happens if I add a new product, customer, or gift card in Square while a migration is running?
It won't be included in that run. unSquared fetches the full list from Square once, right when a migration starts, and works through that fixed list - it doesn't check back with Square again until the run finishes. Nothing is skipped incorrectly; the new item simply didn't exist yet as far as that run is concerned.
Will running the migration again create duplicates?
No. Every migrated item - Products, Customers, Gift Cards, Collections, and Discounts - is tagged with a reference back to its Square source, so re-running recognizes one already created and skips it (or updates it in place, if "override existing" is on for Products) instead of creating a duplicate. One exception: a collection that uses Shopify's newer collection options (excluding products, sub-collections, or more than one source) is invisible to unSquared, so a re-run creates a second copy of it.
What happens if my SKU (product stock code) or barcode is reused across more than one product in Shopify?
unSquared won't guess. If a SKU or barcode turns up on more than one existing Shopify product, that's treated the same as no match - the item is created as a brand-new product rather than linked at random, with a note on that report row explaining the collision.
Square let me create two products with the same name. What happens when I migrate them?
By default, nothing extra: the second product with that exact name can fail to migrate outright, or - if a matching product already exists in Shopify - both could end up resolving to the same product. Turn on "De-duplicate handles for products with the same title" in Product Settings to fix this: unSquared automatically numbers the Shopify handle for repeats (e.g. my-product-dup2) and tags the extra copies Duplicate-Product-Title, so every product still migrates as its own distinct product. It's off by default - turn it on before migrating if your Square catalog has repeated product names. Not sure? Click "See an example" next to that toggle in Product Settings for a side-by-side of what the handles and tags look like either way. Check the migration report afterward for a "Duplicate Titles Handled" count.
What happens if I remove unSquared's hidden tracking link from a product in Shopify?
That product stops looking "already migrated" to unSquared - Re-sync Products, Inventory Sync, and Product Weight updates all identify existing products by that hidden link. Running Product Migration again falls back to matching by SKU, then barcode, then handle - but if none still match, a duplicate product is created instead.
So how do I make sure everything eventually gets migrated?
For products, use "Re-sync Products". For customers, use "Re-sync Customers" once you've completed a first migration. For gift cards, just run that migration again - it's safe to run as many times as needed, since already-migrated items are left alone.
What does "Re-sync Products" do, and how is it different from running the Product Migration again?
Re-sync refreshes products already migrated with their latest Square data using your current Field Mapping and Taxonomy settings, and optionally creates products added since your last check. It never touches collections or discounts, even if those are turned on in your settings.
What does "Re-sync Customers" do?
It imports only customers created in Square since your last Customers migration or re-sync. Unlike Re-sync Products, it never refreshes info on customers already migrated, and always compares against the last completed run - it's disabled until you've completed a Customers migration at least once.
What's the difference between "Only what changed since last sync" and "My entire catalog"?
"Only what changed" asks Square for just the items it recorded a change to since your last full check - much faster on a large catalog. "My entire catalog" checks every product regardless of when it last changed - slower, but thorough. Your very first re-sync always uses the full catalog.
What's the "Check for changes since" dropdown in the Re-sync modal?
By default, "Only what changed" compares against a single automatically-tracked point that only advances once a run genuinely finishes. This dropdown lets you manually pick any past completed run to check from instead - picking an earlier point only ever re-checks more products, never fewer, with no risk of duplication.

Account & Notifications

Why don't I see my latest Square changes right away? What does "Refresh Data" do?
To keep pages fast, unSquared temporarily saves a copy of things like your Square locations and catalog counts instead of calling Square fresh on every page load - the footer shows "Last synced: ...". Click "Refresh Data" on that page to clear the cache and reload straight from Square. On the Product Catalog page, a short confirmation message then tells you which counts changed, or "No changes found in Square" if nothing did.
What does the message after I click Refresh Data mean?
On the Product Catalog page, once the fresh counts finish loading, a short message appears. "Data refreshed. Updated counts - Discounts: 3 to 5, Active products: 120 to 122" lists each count that changed (old number, then new number) and stays for about 6 seconds. "Data refreshed. No changes found in Square." means nothing had changed and shows for about 3 seconds. The counts compared are Discounts, Active products, Archived products, Deleted products, and Already in Shopify. The Customers, Gift Cards, and URL Redirects pages also reload on Refresh Data, but don't show this message yet.
Why did a 'Square data has changed' window appear when I clicked Migrate?
A migration always reads Square live, but the numbers on the page come from a saved copy. When you click Migrate (Product Catalog, Customers, Gift Cards, or URL Redirects), unSquared first checks Square quickly. If something changed, nothing starts yet and the window lists the changes. "Refresh and review" works like Refresh Data and starts nothing; "Continue with latest data" starts the migration with the latest data from Square, changes included, and is safe in most cases. Only Refresh and review is offered if a new Square location appeared, if Square now has discounts the page hadn't found, or on URL Redirects. If the check can't run, the migration just starts as usual.
What happens if I remove unSquared from my Square account (Square Dashboard > App Integrations)?
Removing unSquared on Square's side ends its access to your Square data, so unSquared disconnects itself automatically. Square notifies unSquared as soon as you remove it, and if that notice doesn't arrive, unSquared picks it up the next time you open the app. Any pending scheduled migrations are cancelled, any migration that was running is stopped and marked failed ("Square access was revoked"), and the app shows the Connect to Square page with a "unSquared was disconnected from Square" banner. Nothing already migrated to Shopify is touched. Click Connect to Square and approve again to keep going - for the same Square account your saved Location Mapping and other settings come back automatically, nothing to redo - then schedule or start those migrations again.
Why does unSquared say "unSquared was disconnected from Square"?
unSquared's access was removed from your Square account - usually because unSquared was disconnected from Square Dashboard > App Integrations. Square no longer lets unSquared read your data, so unSquared ended the connection, cancelled any pending scheduled migrations and stopped any running migration. Click Connect to Square to reconnect - the banner goes away once you're connected again.
Can I connect the same Square account to more than one Shopify store?
Not at the same time. Square keeps only one unSquared connection per Square account - the newest one. When the same Square account is connected to unSquared on another Shopify store, Square ends the connection on the store connected before, and unSquared disconnects that store straight away: its pending scheduled migrations are cancelled, any running migration is stopped, and its Connect to Square page explains what happened. The store you just connected shows a notice saying how many other stores were disconnected. Nothing already migrated to either store is touched. If you have two Shopify stores, migrate one, then connect the other - or use a separate Square account for each.
Why does unSquared say "Your Square account is now connected to another Shopify store"?
The Square account this store used was connected to unSquared on a different Shopify store, and a Square account can only be connected to one store at a time - so the connection here ended, pending scheduled migrations were cancelled and any running migration was stopped. Click Connect to Square at the top right to use unSquared here again. Connecting the same Square account here disconnects it from the other store; a different Square account doesn't affect the other store.
What happens if my Square access token expires?
If it's within 7 days of expiring and Square allows it, your connection renews automatically in the background - including for scheduled migrations. If it has already fully expired, reconnect manually from Settings. Nothing already migrated is affected either way.
What happens to my Shopify data if I disconnect Square?
Disconnecting only removes unSquared's saved connection and cancels any pending scheduled migrations (schedule them again after reconnecting) - it does not touch anything already migrated. The Disconnect window also shows whether a migration is currently running or any schedules are pending before you confirm. You'll need to reconnect before running any new migration or sync - reconnecting the same Square account brings back your Location Mapping, Field Mapping, Taxonomy Mapping, and other saved settings automatically, so there's nothing to redo.
What happens if I connect a different Square account than the one I used before?
Your "What You're Migrating" selection resets - you'll see the getting-started screen again, as if connecting for the first time - along with related settings like taxonomy mapping and re-sync timing, so nothing from the previous account carries over and confuses your new setup. Migration history and dashboard status are scoped to whichever account is currently connected for anything you run from here on. Nothing already migrated to Shopify is ever affected either way - products, customers, gift cards, and everything else created from the previous account stay exactly as they are; only unSquared's own view of what's connected and what's been done updates to match the account you're connected to now.
I've connected more than one Square account over time - how do I tell which items in Shopify came from which one?
Every product, customer, and discount unSquared creates is tagged square_migrated (square-discount-<id> for discounts) as always, and also gets a second tag - square_account-<last 6 characters of that Square account's merchant ID>, lowercase, e.g. square_account-3xyz99. Search or filter by that tag in Shopify Admin (or use it in a collection/segment rule) to isolate everything migrated from one specific Square account. This only applies going forward from when this feature shipped - items migrated before then keep just the plain square_migrated tag, with no account tag added retroactively.
How do I contact unSquared support, and how long will it take to hear back?
Open Settings and click Need Help? (the same button is on the Dashboard, the Knowledge Base and each migration report). Choose what your request is about - a migration issue, a feature request, or something else -then add your name, your email and a message, and send it. unSquared emails you a confirmation straight after, with a copy of what you sent and a reference number (like SR-K4M9T2XP) you can quote if you write to us again. Our support team replies by email, usually within 24 to 48 hours, so please use an address you check. If you don't see our reply, look in your spam or junk folder.
What information does unSquared support receive when I send a support request?
Your request reaches our support team with the name, email, topic and message you entered, plus the Job ID if you gave one. So that you don't have to repeat yourself, we also attach a short summary of your account that only our support team sees: your store name and domain; your plan and when it was paid for; which migrations you have run and how the latest ones went (including the first few error messages, which can mention the record involved) and the job you mentioned; your Square business name, merchant ID and when it was connected; what you chose to migrate; your notification settings and pending scheduled migrations; the delivery status of your recent emails; and your earlier support requests. We never include your Square or Shopify access tokens, the summary is not stored with your request, and the confirmation email you receive does not contain it. An email you write yourself to helpdesk@heliotech.ca does not include the summary, so mention your store domain and any Job ID in it.
Where can I see the support requests I've sent?
In Settings, under Support requests. It lists your most recent requests (up to 20), newest first, each with a reference number (like SR-K4M9T2XP), the date, what it was about, a short preview of your message and any migration Job ID you included. "Sent to support" means your request reached our support team. "Not sent" means it did not, so please send it again. "Resolved" means our team has marked the request as dealt with. The list does not show our replies - those come to your email. Quote the reference number if you contact us about the same request again.
What email notifications can unSquared send me?
Two kinds. Optional emails are part of the One-Time Migration plan (the Notifications section in Settings is switched off until you purchase it), are all off by default, and are configured in Settings: migration started, paused, cancelled, completed, or errored; a re-sync summary; a heads-up email if unSquared can't reach Square; and a reminder before a scheduled migration runs. Turn on the ones you want and save a notification email (it is required once any of them is on) - you don't need to keep the app open to know when something finishes or needs attention. Without the plan no optional email is sent, even for choices you saved earlier - they start again as soon as you purchase. Always-sent emails go to your saved notification email with no setting to turn them off: unSquared installed, unSquared uninstalled, your Square account disconnected, your migration checklist marked complete, your "what to migrate" selection saved, and a notice if we temporarily switch a migration type off. The uninstalled, disconnected and checklist-complete emails also include a short summary of what unSquared migrated for your store.

Uninstall & Reinstall

What happens to a migration that's running if I uninstall unSquared?
It's stopped and marked as failed, with the reason "App uninstalled mid-migration" - nothing keeps running once the app is removed. Anything already written to Shopify stays exactly as it is. If email notifications were set up, the uninstall email lists which migration(s) were interrupted and how far they got.
If I reinstall unSquared, do I need to reconnect Square again?
Yes. Uninstalling always clears the saved Square connection, so reinstalling starts fresh with the "Connect Square" step, even right away - deliberate, since Square access could have been turned off or changed while the app was uninstalled.
If I uninstall unSquared, is my migration history and settings deleted right away?
No - only your Square connection and Shopify session are cleared immediately. Your migration history, reports, and settings are kept for a grace period (currently about 9 days from when Shopify notifies us of the uninstall), so an accidental uninstall isn't costly: reinstall within that window and your migration history, reports and notification settings are still there (you'll need to reconnect Square, choose what to migrate again, and buy the plan again - uninstalling resets your purchase). After that window, your data is permanently deleted, in line with Shopify's data protection requirements for apps. Anything already migrated into Shopify itself is never affected either way, on any timeline.

Billing & Plans

I marked my one-time migration complete by mistake - can I undo it?
Yes, once, and only within 24 hours of marking it complete. After 24 hours your completion is final and cannot be reopened. After you mark your migration complete, the "One-time migration complete" section of your dashboard shows a "Marked complete by mistake?" box that lists the one-time tools you have not used yet, with a "Reopen unused tools" button. Reopening does not start your migration over: it only gives you back those unused tools (Re-sync Products, Inventory Sync, Scheduled Inventory Sync, Re-sync Customers, the scheduled Gift Cards migration and the Product Weight + Online Price update), each one time. Starting a new migration, URL Redirects and changing what you migrate stay closed. When you are finished, mark your migration complete again - that second time is final and cannot be undone. Schedules that were cancelled when you first marked complete are not restored, but you can create them again if you have not used that tool.
Why don't I see the option to reopen my migration?
Reopening is offered only when all of these are true: your migration was marked complete less than 24 hours ago (after that the completion is final; the dashboard then says when the window ended); you have not reopened it before (it can be done once per store); you bought the plan (it is not offered during a Partner-Assisted Migration); and at least one of the six one-time tools is still unused. If every tool has been used there is nothing to give back, so the option is not shown. If you think it should be available, contact support from Settings > Need Help?.
Will I be charged again if I reinstall unSquared?
Yes. Uninstalling unSquared resets your store to a first-time install, so the purchase is no longer on record and reinstalling shows the Plans page with Buy One-Time Migration and Shopify's charge approval screen again. This is how Shopify requires paid apps to work after a reinstall. unSquared offers no refunds, so if you uninstall by mistake and reinstall, you pay again. Nothing already migrated into Shopify is affected. If you only want to pause, contact support before uninstalling.
How am I charged - through Shopify, or separately?
Through Shopify. The plan is billed the same way any Shopify app charges you, so the charge appears on your regular Shopify invoice - unSquared never collects payment details directly.
Can I get a refund?
No. All sales are final. The One-Time Migration plan is a single charge and isn't refundable once purchased, including if you uninstall unSquared. Use the free preview and the Knowledge Base to check it fits before you buy. The free preview shows how your own products, customers, gift cards and redirects would look in Shopify without buying anything.
What is Partner-Assisted Migration?
A temporary access arrangement offered only by Helios Technology Solutions Inc., the developer of unSquared, for migrations it manages or supervises for a client. It is not a public plan and can't be purchased or requested in the app. With a single-use access code from your Helios account manager, entered under Settings, the full unSquared toolset unlocks for 72 hours without the One-Time Migration plan charge. While access is active, the Plans page's Buy Now button is turned off instead of clickable, since the store already has free full access - it works again once the window ends or is deactivated. Access ends early if it is deactivated, the one-time migration is marked complete, or the app is uninstalled. When it ends, plan features lock again unless the plan has been purchased - nothing is charged automatically, and anything already migrated stays in Shopify.