BlogShopify13 min read

Moving a furniture store from a legacy POS to Shopify

Move the active commitments, not just the customer list. Build a cutover around open special orders, deposits, vendor POs, and the people who will finish them.

The OrderPilot team·

Chip moves a bundle of blank folders into an archive box beside a full-size planning table.

The hardest record to move isn't the customer list. It's the open special order that is half-paid, partly built, and due after the new register goes live. In a sample store with forty-two such orders, each customer remembers their deposit more clearly than the software project plan.

Move those commitments deliberately. A furniture-store cutover needs a complete list of customer balances, vendor purchases, outstanding goods, and signed agreements. Shopify setup and catalog imports are part of the work; the open-order handover is what keeps the next delivery conversation accurate.

Separate setup, data migration, and live-order handover

Shopify's retail migration guide covers the store's setup tasks, including POS, payments, hardware, staff, and inventory. Use it as a foundation, then add the furniture commitments your team must carry forward.

A successful customer import doesn't establish that the customer's deposit or vendor PO moved. A product import doesn't establish that a saved sofa configuration has been reproduced. Treat each class of information as its own workstream.

Shopify's documented desktop POS migration scope illustrates the distinction: some customer, location, product, and vendor information can move through that route, while order history, invoices, deposit-bearing sales orders, and several other records don't. The exact scope belongs to that connector, not every legacy system.

Build your own inventory of what the chosen migration method transfers, what requires manual work, and what remains in an archive. The team should know which category an open sofa order belongs to before the old register is switched off.

Make the open-order schedule your main control document

List every customer order still requiring delivery, payment, purchasing, service, or another action. Include the original reference, customer identity, exact specification, total, money received, remaining balance, vendor commitments, and expected timing.

Add the awkward cases instead of leaving them for later: a disputed charge, a changed fabric, a partly delivered set, a vendor deposit, or a damaged item awaiting replacement. Those are the records most likely to need attention after the cutoff.

Use a working table like this for a sample order:

FieldSample entryEvidence to retain
Original reference1042Legacy order and invoice
FurnitureMadison sofa, oatmeal linen, walnut legsSigned specification
Sale total before tax$4,000Agreed quote
Customer paid$2,000Payment receipt and transaction reference
Customer balance$2,000Reconciled payment history
Vendor commitmentPO 2210, $2,200Sent PO and vendor acceptance
Vendor paid$1,100Vendor-payment evidence
Outstanding goodsOne sofaLatest vendor confirmation
Next actionConfirm expected arrivalAssigned staff owner

The amounts are illustrative. In the actual schedule, include taxes, fees, refunds, and adjustments so the total agrees with the books. The purpose is to show what remains owed in both directions.

Map customers without creating another set of duplicates

Use Shopify customer records as the customer foundation. Decide how the old identifiers, contact details, and useful notes map before importing.

An email address can help identify a customer, but don't merge records solely because a name looks familiar. A design firm, its individual designers, and their end clients can represent different relationships.

OrderPilot customer fields can hold useful structured information such as a trade tier or preferences. Resale certificates can be stored by state with their files and expiry information. Preserve the supporting evidence as well as any current tax treatment.

Review a small sample after import: a household customer, a repeat customer with several projects, and a trade account. Confirm that the team can identify the right person and find the information needed for the next sale.

Don't turn a migration into an attempt to clean every historical note by hand. Prioritize identity and the records needed for active work, then schedule the remaining cleanup separately.

Divide stocked products from made-to-order templates

Stocked furniture belongs in a product structure that preserves product identity, variants, quantities, and locations. Made-to-order furniture also needs the options and rules staff use to configure it.

OrderPilot's product-template CSV workflow imports templates and option data, with validation before applying the changes. That is the bulk import available in OrderPilot; it doesn't import open quotes or orders. Map vendor identifiers, option names, prices, costs, and lead times carefully. A fabric code that loses its leading character can become a different specification even if the displayed label still looks plausible.

Use the vendor price-book import guide to prepare the catalog. Test the imported template by building a quote, not merely by confirming that the import completed.

The associate should be able to select the same piece the vendor will recognize. That is the catalog's practical acceptance test.

Set locations, brands, vendors, and roles before live entry

Locations need to reflect where the store sells, receives, and hands over goods. Group them under the intended brands so customer documents use the correct identity and local details.

Vendors need reliable names, contacts, ordering information, and any minimums used in purchasing. Preserve the original references that help the team connect old commitments to new records.

Staff roles should reflect the work people do. Decide who can change prices, see costs, manage purchasing, handle payments, and work across locations. Set those boundaries before the training run. A rehearsal performed only as the owner can miss the fact that an associate cannot open the required record or a receiving employee cannot finish the assigned task.

Keep location and role names plain. The purpose is to help the team choose correctly during a busy sale, not to preserve every abbreviation from the old system.

Recreate active OrderPilot orders one at a time

Open quotes and orders can't be bulk-imported into OrderPilot. Recreate the active records individually, using the reconciled schedule and original documents as the source.

Begin with the imported or maintained product template, then reproduce the customer's saved configuration and commercial arrangement. An old quote may have a price different from the current catalog, so review the agreed price rather than automatically charging today's amount.

Keep the original reference visible. OrderPilot supports custom numbering and project references, but agree the numbering scheme and avoid collisions with records already created. Where exact preservation isn't suitable, retain the old number as a clear reference and maintain the mapping.

For the detailed procedure, use moving open special orders into OrderPilot. The migration entry should explain the original agreement and the work still outstanding.

Have a second person compare the recreated record with the source. This isn't a test of typing speed. A missing left-hand return on a sectional remains missing even when every customer address imported perfectly.

Carry existing deposits without collecting them again

A customer deposit already received is an existing payment, not a new request for money. Preserve the payment date, amount, method, transaction reference, and connection to the original sale.

Choose the supported payment-recording method before recreating the order's final state. Manual partial payment on a placed OrderPilot order requires Shopify Plus. On a non-Plus store, the deposit-order route belongs to an Admin quote or draft before placement and creates a separate Shopify order.

That difference matters for migration. A separate deposit order is a financial record with tax and reporting consequences, even when marked paid for money already received. It isn't a neutral historical-import button.

Use a reviewed migration method that makes the customer balance and accounting records agree. Don't charge the customer again, create a fictional discount to hide the deposit, or mark the whole sale paid when a balance remains. If the store's plan and chosen method can't represent the historical payment correctly, keep that active order in the legacy workflow until an explicit supported treatment is established.

Reconcile one half-paid sofa from start to finish

Take the sample $4,000 sofa with $2,000 already paid. The new working record must show the same configuration, the same total, and a $2,000 customer balance before tax in this simplified example.

Compare the recreated order to the signed source. Then compare the recorded payment to the receipt and accounting evidence. The migration hasn't succeeded if the order looks right but the books show the deposit twice.

Next, follow the $2,200 vendor commitment and its $1,100 prepayment. Those amounts belong to purchasing and vendor-payment records. They aren't another customer payment and shouldn't be folded into the customer's balance.

Complete the review by opening the latest vendor confirmation. If the sofa is already in production, the new order should preserve that fact without issuing another purchase instruction.

Give the reconciled order an owner for the next action. The customer shouldn't become responsible for explaining the migration when they call about delivery.

Record POs the vendor already has as existing commitments

A PO already placed in the old system must not be sent again as though it were a new purchase. Recreate the relevant purchasing record and use Confirm PO sent outside OrderPilot where appropriate. Attach or retain the sent PO and the vendor's acknowledgment. If the maker accepted a revised fabric or date, keep that confirmation with the record too.

For a partly received PO, reconcile the original quantity, accepted units, rejected units, and outstanding requirement. Avoid receiving the entire original quantity again in the new system. That would distort stock while making the migration appear complete.

The buyer and receiving team should agree the cutoff treatment together. A PO can be open in the old software while only a small remainder needs to continue in the new workflow.

Preserve signed evidence without changing its meaning

A scanned paper signature can be recorded and attached through the paper-signature workflow. Keep the signed pages legible and connected to the correct customer order. A historical paper agreement should remain identifiable as that agreement. Don't represent the scan as a new electronic signature or imply that the customer approved details added during migration.

If the furniture or terms need to change after the move, follow the normal revised-agreement process. OrderPilot preserves the earlier signed record and requires a new signature for customer-visible changes.

Keep the old archive accessible even when a scan has been attached to the active order. Supporting correspondence, delivery evidence, or payment documents may still be needed later. The live order and archive serve related purposes.

Decide which system owns each live order

A parallel run should help the team verify the new workflow, not create two competing versions of every sale. Give each active order one authoritative system for new actions.

During preparation, staff can rehearse sample orders in the new setup while live sales remain in the old process. At the cutoff, new sales begin in the new system. Older orders either move after reconciliation or stay assigned to the legacy workflow until finished.

Once an order moves, stop making independent live changes to its old copy. Keep the legacy record available for reference, with a clear note about where continuing work happens.

There is no universal number of weeks for running both systems. Use completion criteria: every active order has an owner and destination, balances reconcile, vendor commitments are accounted for, and staff can perform the work. Time is a planning tool; reconciliation is the gate.

Pick a quiet cutoff with a clear transaction boundary

Choose a period when the store can support the team and resolve exceptions. Avoid the busiest promotion weekend if another date is practical. A month-end boundary can make reconciliation easier for some stores, but a quieter operational day can matter more.

Write down the exact cutoff for new orders, payments, receipts, and inventory movements. A delivery received during the transition must have a clear destination for entry.

Take the relevant exports and reconciliations at that boundary. Preserve them as the record of what the store handed over, rather than repeatedly overwriting the original files.

For the first working period after cutover, reconcile deposits and balances daily as a suggested control. Short, frequent reviews make an unexplained difference easier to investigate while the people involved remember the transaction.

Set up payments before relying on the hardware

Choose the payment provider, methods, and deposit workflow before treating the register as ready. Then confirm the devices and peripherals support the intended setup.

Select POS Pro by the work each location needs, separately from the Shopify store plan. Test with the right location active and the staff role that will use it.

Check device compatibility when buying or reusing iPads, stands, readers, scanners, and printers. Don't base the purchase on an old device list. Run a sample transaction and verify the receipt and resulting record.

The hardware rehearsal should include practical conditions: the associate moves away from the counter, the customer signs, a printer is used, and the order is reopened at the desk. A card reader that powers on has passed only the first part of that test.

Train one complete furniture task at a time

Start with the work an employee already understands. A salesperson knows how to agree a fabric and prepare a quote. A buyer knows how to confirm a vendor order. Use that knowledge as the route into the new screens.

Teach the record lists and Mine or All behavior, then one complete workflow. Let the associate save a quote, reopen it, explain its next action, and hand it to the desk.

The Next status control shows available moves and what they wait for. Use it alongside the store's process, so staff learn the meaning of a transition rather than memorizing a button sequence.

Searchable settings, setup guidance, and the Academy provide a place to find help after the training session. The staff-training guide explains how to pace that learning.

Use history to investigate early mistakes

Activity history and earlier versions help the team understand what changed. They are useful when a configuration, note, or setting differs from what someone expected.

Review the change before deciding whether to restore an earlier version. Restoring a record isn't a universal undo for a payment already taken or a PO already sent to a vendor. External consequences still need their own resolution.

Give staff a clear escalation route. The person reporting an error should identify the record, what happened, and the customer or vendor action already taken. That gives the manager enough information to choose the right correction.

The goal is a team that reports mistakes promptly and learns the working process. Hiding an unfamiliar result because the screen is new only makes the later investigation harder.

Use a staged plan with readiness gates

The following 90-day plan is a starting point. Adjust its pace to the open-order count, catalog complexity, and available staff.

Preparation periodVerification periodCutover and cleanup period
Map data and define the live-order scheduleRecreate sample orders and reconcile paymentsStart new sales at the agreed cutoff
Prepare products, templates, vendors, locations, and rolesTest sent external POs and partial receiptsMove reconciled active orders or finish them in legacy
Choose payment and device setupRehearse with actual staff roles and hardwareReconcile daily during the initial working period
Preserve source exports and documentsTrain one complete task at a timeKeep old history accessible and resolve remaining exceptions

Proceed when the work in a stage is demonstrably ready. If deposits don't reconcile, another successful product import doesn't offset that gap.

Before closing the migration project, select a customer order at random and trace its agreement, payment, vendor commitment, and next action. Repeat that review across the different kinds of active work.

The guide to making a software switch stick helps turn the cutover into a routine the team can keep using. Then follow the complete made-to-order sale to make sure the new process stays connected beyond the first week.

Sources

  1. Migrate your retail store — Shopify Help Center.
  2. Desktop POS data migration considerations — Shopify Help Center; connector-specific migration scope.

Give your team the tools they deserve

See what changes when every custom order lives in one place, from the showroom floor to your customer’s front door.