Shopify¶
Integrations
Shopify integration
Connect supported Shopify customers, orders, products, and inventory to Loupe Factory. Learn what you can pull or push, how Auto works, and what to verify after each sync.
Teams that sell on Shopify and manage day-to-day operations in Loupe Factory.
Less duplicate entry between e-commerce, inventory, fulfillment, and operational follow-up.
Manual Pull and Push actions, optional automatic Shopify-to-Loupe updates, and the Loupe Factory import location.
What the Shopify integration does¶
For Shopify-originated sales, Shopify is where the sale starts. Loupe Factory is where your team can organize the operational work behind that sale.
Two-way sync means you can pull supported Shopify records into Loupe Factory and manually push supported Loupe Factory records to Shopify. It does not mirror every field, continuously keep both systems identical, or automatically merge competing edits.
When Auto is enabled, Loupe Factory imports supported Shopify changes as Loupe Factory receives them. It also performs a nightly check for supported updates that have not already been imported. Auto does not push Loupe Factory changes to Shopify. All Push actions remain manual.
Operational boundary: Shopify remains the storefront and checkout system. Production jobs, shipment records, tracking activity, invoices, and internal fulfillment work are not sent to Shopify by this integration.
This integration is a strong fit for manufacturers, wholesalers, makers, and product businesses that sell through Shopify while managing operations in Loupe Factory.
Know before you connect¶
- Manual Pull and Push actions process every eligible record in the selected category. There is no record picker or preview subset.
- A successful button message means the sync was queued. It does not mean every record has finished processing.
- Auto imports supported changes from Shopify to Loupe Factory. Pushes from Loupe Factory to Shopify remain manual.
- Product and Draft Order pushes send numeric prices without currency conversion. Confirm that Loupe Factory prices use the connected Shopify store's currency before you push.
- If Shopify already contains your catalog, pull Products & Inventory before your first product push so Loupe Factory can establish links to the existing Shopify records.
Requirements and permissions¶
Loupe Factory requirements¶
- Make sure your Loupe Factory account is on the Professional, Business, or Enterprise plan. The Shopify integration is not available on the Starter plan.
- Sign in to Loupe Factory as an admin. The Shopify dashboard, connection, settings, sync actions, Activity Log, and Linked Records are admin-only.
- Know the Shopify store domain you plan to connect, such as
your-store.myshopify.com. - Decide which Loupe Factory location should receive imported Shopify inventory items.
Shopify account and permissions¶
- Use the store owner account, or ask the owner to grant a staff member App development > Develop permission. Collaborator accounts cannot access the Dev Dashboard.
- Make sure the Shopify account used for setup can create and edit products or catalogs. Shopify requires this permission when an app publishes products to a sales channel.
- For the custom app setup described in this guide, syncing customer names, email addresses, phone numbers, and addresses requires the Grow plan or higher. Shopify Basic and Starter stores cannot grant this Level 2 protected customer-data access.
- Confirm that your Shopify account can create, release, and install a custom app for the store you want to connect.
See Shopify's custom app setup guidance, custom app requirements, store permissions, and protected customer data guidance for current Shopify requirements.
Required Shopify app scopes¶
Enable the scopes for every workflow your team plans to use.
| Workflow | Shopify app scopes | Why it matters |
|---|---|---|
| Customers | read_customers, write_customers | Pulls and pushes supported customer details and addresses. |
| Orders | read_orders, read_draft_orders, write_draft_orders | Pulls Shopify orders and lets Loupe Factory create or update eligible Draft Orders. |
| Products | read_products, write_products | Pulls and pushes supported product and variant fields. |
| Inventory and locations | read_inventory, write_inventory, read_locations | Supports inventory pulls, absolute quantity updates, and the Shopify Inventory Location shown on the integration page. |
| Shopify sales-channel availability | read_publications, write_publications | Lists Shopify publications and allows eligible newly pushed products to be published. Product or catalog create-and-edit permission is also required. |
| Historical orders, after approval | read_all_orders | Extends order access beyond Shopify's default 60-day window. Add it alongside read_orders only after Shopify approves access. |
By default, Shopify API access is limited to orders created in the last 60 days. To import older orders, request Shopify approval for read_all_orders. After approval, add it alongside read_orders. See Shopify's access-scope documentation for details.
Create the Loupe Factory app in Shopify¶
This connection uses a custom Shopify app inside the Shopify store you want to connect. Shopify's current setup path is Settings > Apps > Develop apps > Build apps in Dev Dashboard. Create the app once, name it Loupe Factory, then use its credentials to finish the connection in Loupe Factory.
-
Sign in to your Shopify admin.

-
In Shopify admin, go to Settings > Apps.

-
Open App settings if Shopify shows that option, then choose Develop apps.


-
If Shopify shows the app development landing page, select Build apps in Dev Dashboard.

-
Select Create app, enter
Loupe Factoryas the app name, then continue.

-
Add the Admin API scopes from the required scopes table. Add
read_all_ordersonly after Shopify approves access to older orders.

-
Back on the version page, select Release so Shopify can install the app in your store.

-
Open the app overview and select Install app, then approve the install in Shopify.

-
In the Shopify Dev Dashboard, open Settings and copy the app's Client ID and Client secret. Keep them ready for the Loupe Factory connection step.
Protect the Client secret
Treat the Client secret like a password. Enter it only in Loupe Factory's secure connection window. If it is exposed, rotate it in Shopify before reconnecting.
Connect Shopify in Loupe Factory¶
- In Loupe Factory, go to Workflows > Integrations > Shopify.
- Select Connect Shopify.
- Enter your Shopify store domain, such as
your-store.myshopify.com, plus the Client ID and Client secret from the Shopify app you created. - Complete the authorization flow and return to Loupe Factory.
-
Confirm that the connected store details, connection health, and sync controls are now visible.

Location settings¶
- Open Import Location Settings.
- Choose the Loupe Factory location where imported Shopify products and variants should be stored, then select Save Location.
- Use the separate Auto switch to choose Auto or Manual Only.
Loupe Factory and Shopify locations are separate
Import Location Settings controls the Loupe Factory location used for inventory pulled from Shopify. The Shopify Inventory Location shown on the integration page is a separate Shopify location used for pushed quantities. You cannot select a different Shopify location from Loupe Factory.
Manual versus Auto¶
Manual Pull and Push¶
Each manual button processes its entire eligible category:
- Customers processes all eligible customer records.
- Orders processes all eligible orders. Only Loupe Factory Sales orders can be pushed.
- Products & Inventory pulls supported Shopify products and variants. Push includes eligible Finished Inventory, and an unmapped product needs Finished Inventory before Loupe Factory can create it in Shopify.
There is no record picker, sample subset, or preview selection. Push actions always remain manual, even when Auto is enabled.
A successful message means the sync was queued
A successful button message confirms that Loupe Factory queued the sync for processing. It does not confirm that every record finished successfully. Use Last Synced, Activity Log, Linked Records, and the affected records to verify the result.
Auto¶
When Auto is enabled, Loupe Factory imports supported Shopify changes after it receives them. A nightly check helps pick up supported customer, order, product, and inventory updates that have not already been imported. Auto never pushes Loupe Factory changes to Shopify.
Keep Manual Only enabled for the first sync. Enable Auto only after you have reviewed the initial results.
First-sync checklist¶
Manual actions process the entire selected category. Use this order for the first rollout:
- Keep the integration set to Manual Only.
- Confirm the Loupe Factory import location, the displayed Shopify Inventory Location, and the connected Shopify store currency.
- Select Pull Customers so customer links exist before orders are pushed.
- Select Pull Orders.
- Select Pull Products & Inventory before pushing products, especially when Shopify already contains your catalog.
- Allow each queued sync to finish, then complete the verification steps.
- Enable Auto only after the imported records and links are correct.
Pull an existing Shopify catalog before you push
A push of an unmapped Loupe Factory product can create a new Shopify product even when Shopify already has a product with the same title. Pull Products & Inventory first to establish links to existing Shopify records.
Review linked product fields before the first push
A later product push can replace the linked Shopify product title, description, variant SKU, price, weight, and available quantity. Confirm these fields and the displayed Shopify Inventory Location before pushing.
Prices are not converted between currencies
Loupe Factory sends numeric prices without currency conversion when pushing products or Draft Orders. Confirm that Loupe Factory prices match the connected Shopify store currency.
Verify a sync¶
After starting a sync:
- Review Last Synced to confirm that processing has run. This timestamp does not guarantee that every eligible record succeeded.
- Review Activity Log for connection activity and reported errors. It is not a record-by-record result.
- Open Linked Records to confirm that the correct Loupe Factory and Shopify records are connected.
- Spot-check the affected customers, orders, products, and stock before enabling Auto or starting a related Push.
Linked Records, Unlink, and deletions¶
Linked Records shows the relationships Loupe Factory uses when updating existing Shopify records.
Unlink removes the relationship, not either record
Unlink keeps both records and removes only their relationship. A later Push may create a new Shopify record because Loupe Factory no longer has the previous link.
Deletion handling is non-destructive across the connection:
- Deleting a record in either Shopify or Loupe Factory does not automatically delete its linked record in the other system.
- When a product push consolidates duplicate Shopify variants, the extra variants remain in Shopify with zero stock instead of being deleted.
What pulls and pushes¶
| Area | Pull into Loupe Factory | Push from Loupe Factory |
|---|---|---|
| Customers | Customer profiles, company details, email, phone, and addresses | Customer profile and address updates |
| Orders | Shopify orders with customer, payment and fulfillment status, notes, and line items | Eligible Loupe Factory Sales orders as Shopify Draft Orders when the customer is already linked |
| Products and inventory | Product names, SKUs as Product labels, prices, weights, quantities, colors, and the first product image, all as Finished lots | Product name and Storefront description, Finished lots grouped by Product label into Shopify variants, prices, weights, quantities, and extra lot fields. New products are submitted for publishing. |
The integration does not mirror every catalog field. Vendors, tags, barcodes, and compare-at prices never move in either direction, images only travel inward, and Color is the one variant option that pulls in. See What does not sync for the full list.
Order push behavior¶
Loupe Factory pushes eligible Sales orders as Shopify Draft Orders.
- Push or link the customer first. An order without a connected Shopify customer is skipped.
- Draft Order lines are custom items that use the Loupe Factory line title, quantity, and unit price. They are not linked to Shopify product variants.
- After Shopify converts the draft into an order, the next Shopify order pull records that change. Loupe Factory then stops updating the record as a Draft Order.
Product publication¶
Loupe Factory attempts to publish newly created Shopify products. The app needs read_publications and write_publications, and the Shopify account needs product or catalog create-and-edit permission. After the first product push, verify the product's status and sales-channel availability in Shopify.
Storefront descriptions¶
A Storefront description is the shopper-facing copy your team writes on an inventory item. It is the one piece of catalog copy that moves between the systems, and it moves in one direction only.
Push to Shopify. When a Finished lot on the Product has a Storefront description, a push sends that copy as the Shopify product description. Shopify holds one description per product, so when a Product has several Finished lots, the newest lot that has copy wins.
Pull into Loupe Factory. Nothing comes back. A description rewritten in the Shopify admin stays in Shopify and never reaches the inventory item.
A push overwrites a Shopify description edited by hand
The next Products & Inventory push replaces the Shopify product description with the copy from Loupe Factory. Make the edit in Loupe Factory when you want it to survive the next push.
Clearing the description in Loupe Factory does not clear it in Shopify
An empty description is skipped rather than sent, so the last copy Loupe Factory pushed stays on the Shopify product until you delete it in Shopify. That is also why a description written only in Shopify is left alone.
Mapping and inventory grouping reference¶
Customers¶
| Shopify | Loupe Factory |
|---|---|
| Customer name | Customer name |
| Company | Company name |
| Phone | Phone number |
| First available address | Address details |
| Country and ZIP or postal code | Country and ZIP or postal code |
Orders¶
| Shopify | Loupe Factory | Important behavior |
|---|---|---|
| Order | Sales order | A linked Shopify order updates its existing Loupe Factory record. |
| Customer | Linked customer | The order stays connected to the matching customer. |
| Payment and fulfillment statuses | Closest supported Loupe Factory payment and fulfillment statuses | Loupe Factory uses the closest available statuses rather than copying unsupported Shopify values. |
| Currency | Currency | Currency is recorded, but pushed prices are not converted. |
| Order note | Notes and sync history | On the first import, the Shopify note initializes Loupe Factory Notes. Later nonempty Shopify note changes are recorded in the sync history instead of replacing existing Notes. |
| Line items, quantities, and product details | Order line items | Pulled Shopify lines become Loupe Factory order lines. |
Products and inventory¶
Shopify sells variants. Loupe Factory tracks lots. A push can combine several lots into one Shopify variant, and a Tag ID is not a Shopify SKU.
Here is what maps to what.
| In Shopify | In Loupe Factory | Think of it as |
|---|---|---|
| Product | Product | The catalog style or name. What you sell. |
| Variant | One Finished lot, or several lots that share the same Product and Product label | The storefront SKU. |
| SKU | Product label | The customer-facing SKU. Shared across lots on purpose. |
| No Shopify equivalent | Tag ID | The warehouse lot. Unique to that physical stock, and never sent as the Shopify SKU unless the Product label is blank. |
Field by field, here is what each direction does to your records.
| Shopify | Loupe Factory | When you pull | When you push |
|---|---|---|---|
| Product | Product | Keeps an existing link. On a first pull, reuses a Product with exactly the same name, or creates one. | Creates the Shopify product when there is no link yet. |
| Product title | Product name | Updates the name on a linked Product. | Replaces the Shopify title with your Product name. |
| Product description | Storefront description | Nothing. Your copy is left as it is. | Replaces the Shopify description with the copy from the newest Finished lot that has one. |
| Variant | Finished lot | Creates a Finished lot, or reuses an unlinked lot that already carries that Product label. See When you pull for all three matches. | Sends one variant per Product label. Lots that share a label are combined into that one variant. |
| Variant SKU | Product label | Becomes the Product label, the SKU your team shares. When the variant has no SKU, uses the variant title, then the product title. | Replaces the Shopify SKU and variant title with the Product label. |
| No Shopify equivalent | Tag ID | Your Tag ID stays in Loupe Factory. A pull never overwrites it with the Shopify SKU. | Not sent, unless the Product label is blank. |
| Quantity | Quantity | Imports the Shopify quantity onto the lot. | Sets Shopify quantity to the total of those lots, at the Shopify Inventory Location shown on the integration page. |
| Price | Sell price | Imports it as a per-piece Sell price. | Sets the Shopify price from the newest lot that has a Sell price. Shopify stores one price per item, so Loupe Factory converts per-weight and per-lot prices to a per-piece price first. |
| Currency | Currency | Records the Shopify currency on the lot. | Prices go over as plain numbers. Nothing is converted, so yours must already be in the store's currency. |
| Weight | Weight and unit | Imports the weight and its unit. | Sets a per-item Shopify weight by dividing the lot weight by its quantity. Units Shopify does not sell in, such as carats, go over as grams. Your lot is unchanged. |
| Color option | Color | Imports it into the item's Color. | Nothing. Color is never sent back. |
| First product image | Item photo | Downloads it, but only when the item has no photo yet. | Nothing. Images are never sent. |
| Variant custom fields | Item attributes | Nothing. Shopify custom fields are never imported. | Publishes the extra spec fields that hold a value, such as metal purity or certificate number. See Item attributes and Shopify metafields. |
What a push overwrites in Shopify
On the linked Shopify product, a push always replaces the title, the variant SKU, price, weight, and available quantity. It replaces the description only when a Finished lot has copy, so a description written only in Shopify survives.
These values are replaced, not merged. Make the edit in Loupe Factory when you want it to survive the next push.
Before you push products
Run these five checks first:
- If Shopify already holds your catalog, run Pull Products & Inventory first, so Loupe Factory links to the products that exist instead of creating duplicates.
- Confirm that your Loupe Factory prices use the connected Shopify store's currency. Nothing is converted.
- Confirm the Shopify Inventory Location shown on the integration page. That is the only location a push writes to.
- Confirm the Product label on each lot. It decides which lots merge into one Shopify variant and what the SKU becomes.
- Spot-check the prices on your newest lots. The newest lot with a Sell price sets the Shopify price for the whole variant.
When you pull products and inventory¶
Pull Products & Inventory reads the Shopify catalog and writes it into the Loupe Factory location you saved under Import Location Settings.
Every incoming variant becomes Finished inventory. Materials and supplies never arrive from Shopify.
On a first pull, Loupe Factory reuses what you already have rather than duplicating it. It can match a Product with the same name, a lot that is not yet linked but already carries that Product label, or an older lot whose Tag ID is still the same text as the Shopify SKU.
Shopify descriptions, vendors, tags, barcodes, custom fields, and variant options other than Color are not imported.
A pull can move a lot back to the import location
A later pull can set the import location on a lot that is already linked, not only on new ones. If someone moved that lot to another Loupe Factory location, the next pull can put it back.
When you push products and inventory¶
Push Products & Inventory sends Finished inventory only. Materials and supplies stay out of it, so a Product with no Finished lots is never created in Shopify. A Product that is already linked can still update its Shopify title even when it currently has no lots.
Rejected and scrap lots still count
They are Finished inventory, so a rejected or scrap lot that carries a Product and a Product label joins the variant total like any other lot. If your Shopify quantity looks too high, check the grouped lots before you check the sync.
Loupe Factory groups lots first by Product, then by Product label. If the Product is already linked and Shopify already has a variant whose SKU is that Product label, Loupe Factory updates that variant instead of creating a second one.
One Product, two lots, one Shopify variant
You have a Product called Gold Hoop Earrings. Two Finished lots both use the Product label HOOP-GOLD: an older lot of 3 pieces at $120, and a newer lot of 2 pieces at $130.
A push creates one Shopify product titled Gold Hoop Earrings, with a single variant, SKU HOOP-GOLD. Shopify quantity becomes 5. Shopify price becomes $130, from the newest lot that has a Sell price. Each lot keeps its own Tag ID in Loupe Factory.
When the Product label is blank
Loupe Factory sends each lot as its own Shopify variant and uses that lot's Tag ID as the Shopify SKU. This fallback does not change the local Tag ID or its role as Loupe Factory's unique lot identifier.
Your lots keep their own counts after a push
Grouping happens on the way out only. In the example above, the two lots stay at 3 pieces and 2 pieces in Loupe Factory, each with its own Sell price and weight. A later pull does not write the combined Shopify quantity, price, or weight back into a single lot.
Loupe Factory submits only a brand-new Shopify product to the Online Store. A later push does not publish it again or add other sales channels, so manage channel availability in Shopify. See Product publication for the permissions this needs.
Everything else your team keeps in Shopify is left alone. See What does not sync for the full list.
A push replaces quantity rather than adding to it
The pushed total becomes the available quantity at the Shopify Inventory Location shown on the integration page, so counts entered directly in Shopify are overwritten. Every other Shopify location is left untouched.
Older one-variant-per-lot pushes leave zero-stock variants behind
If an earlier push gave each lot its own Shopify variant, a grouped push consolidates them into one. The leftover Shopify variants are set to zero stock rather than deleted, so your catalog team should tidy them up in Shopify.
Unlink a product, push again, and Shopify gets a second product
Unlink keeps both records and removes only their relationship. Loupe Factory then no longer knows which Shopify product to update, so the next push creates a new one. Run Pull Products & Inventory to re-establish the link before pushing.
Item attributes and Shopify metafields¶
The extra spec fields on a lot, such as metal purity or certificate number, reach Shopify as variant custom fields, which Shopify calls metafields. They do not become Shopify taxonomy attributes, because Shopify accepts only its own controlled vocabulary there.
An item attribute named No of Stones arrives as a Shopify custom field named loupe_factory.no_of_stones holding a single line of text. Every field Loupe Factory adds carries that same loupe_factory prefix, so they group together in your Shopify admin, and their values show on the variant page.
- Loupe Factory sends only the attributes that hold a value. Blank ones are skipped, including the industry default fields that sit on a new item before anyone fills them in.
- The newest lot that holds a value wins, one field at a time, so two lots grouped into the same variant can each supply a different one.
- Clearing an attribute in Loupe Factory does not clear it in Shopify. Delete the value in Shopify.
A custom-field problem does not stop the rest of the push
If Shopify rejects the custom fields, the variant still syncs with its title, SKU, price, weight, and quantity. The next push tries them again.
What does not sync¶
Plenty of catalog detail stays exactly where you put it. Use this list to see which fields you can keep maintaining in Shopify, and which never leave Loupe Factory.
| What you are looking for | What happens |
|---|---|
| Vendor, tags, barcode, and compare-at price | Do not sync in either direction. Edit them in Shopify. A push never touches them. |
| Product type, category, collections, URL handle, and cost per item | Do not sync in either direction. Set them up in Shopify, where they stay. |
| Size and every variant option except Color | Only Color is pulled in, into the item's Color field. Size and the rest stay in Shopify, and Color is never pushed back. |
| Product images | A pull takes the first Shopify image, and only when the item has no photo yet. Loupe Factory never pushes images to Shopify. |
| Materials and supplies | Not part of a Products & Inventory sync. Only Finished inventory moves, and rejected and scrap lots count as Finished. |
| Shape, size, quality, rack, and internal notes | Stay in Loupe Factory. |
| A description edited in Shopify | Never read back into Loupe Factory, and the next push replaces it. Edit the Storefront description in Loupe Factory instead. |
| A blank or cleared field | An empty Storefront description or item attribute is skipped rather than sent, so clearing one in Loupe Factory never wipes the Shopify value. Delete it in Shopify. |
Troubleshooting and FAQ¶
Troubleshooting¶
| Problem | What to check |
|---|---|
| A sync was queued, but records have not appeared | A successful message confirms only that the sync was queued. Review Last Synced and Activity Log, then allow time for the current sync to finish. |
| A sync is already in progress | Wait for the current sync to finish before starting another action for the same category. Use Last Synced and Activity Log to review recent activity. |
| Customer or order permissions are missing | Confirm the customer and order scopes, the Shopify store plan, and protected customer-data access. Reauthorize the connection after changing app scopes. |
| Orders older than 60 days are missing | Request Shopify approval for read_all_orders. After approval, add it alongside read_orders and reauthorize the connection. |
| A Sales order was skipped | Only Loupe Factory Sales orders are eligible, and the customer must already be linked to Shopify. Push or link the customer first. |
| A product was skipped or no variants were updated | A new, unmapped product needs eligible Finished Inventory before Loupe Factory can create it in Shopify. A linked product with no eligible Finished Inventory has no variants to update. |
| A pushed product exists in Shopify but is not visible online | Confirm read_publications and write_publications, product or catalog create-and-edit permission, the product status, and its sales-channel availability. |
| Shopify quantity changed unexpectedly after a push | A Products & Inventory push sets the exact grouped quantity at the Shopify Inventory Location shown on the integration page. It does not add to the existing value. |
| A product was duplicated after a push | The Loupe Factory product was not linked to the existing Shopify product. Pull Products & Inventory before pushing an existing catalog. |
| An imported customer without an email shows a placeholder | Loupe Factory creates a placeholder email so the customer can be stored. The placeholder stays in Loupe Factory and is not pushed to Shopify. |
| A lot moved back to the import location | A pull can set the saved import location on a lot that is already linked. Change the location after the pull, or switch the integration to Manual Only so pulls run when you expect them. |
| An item attribute is missing from the Shopify variant | Blank attributes are skipped, so confirm the value is filled on the newest lot in that variant. If it is, push again. A metafield Shopify rejects is retried on the next push, and the variant itself still syncs meanwhile. |
| A cleared Storefront description or item attribute still appears in Shopify | Blank values are skipped rather than pushed, so clearing one in Loupe Factory leaves the last pushed value on the Shopify product. Delete it in Shopify. |
| A description edited in Shopify did not reach Loupe Factory | Descriptions travel one way. Shopify edits are never pulled back, and the next push replaces them. Edit the Storefront description in Loupe Factory instead. |
| Materials and supplies did not appear in Shopify | A Products & Inventory push sends Finished inventory only. Materials and supplies are the inventory type it leaves behind. |
| A pushed weight does not match the lot | Shopify stores one weight per item, so a push divides the lot weight by its quantity. A unit Shopify does not sell in, such as carats, is converted to grams for Shopify only. The lot in Loupe Factory is unchanged. |
| The connection needs reauthorization | Review the app's current scopes and permissions, then reconnect Shopify from Loupe Factory. |
Frequently asked questions¶
Does Auto sync changes in both directions?
No. Auto imports supported Shopify changes into Loupe Factory and performs a nightly check. Pushes from Loupe Factory to Shopify remain manual.
Does a manual sync process every record?
It processes every eligible record in the selected category. There is no record picker or preview subset.
How do I know a sync finished?
Follow Verify a sync. The successful queued message does not confirm that every record finished successfully.
Which Shopify location receives inventory?
The Shopify Inventory Location shown on the integration page. A Products & Inventory push sets its available quantity to the exact grouped Loupe Factory total.
Why was my Sales order skipped?
Only Loupe Factory Sales orders are eligible, and the customer must already be linked to Shopify. Push or link the customer before pushing the order.
Why did my Sales order become a Draft Order?
Loupe Factory intentionally creates or updates Shopify Draft Orders instead of completed Shopify orders. After Shopify converts the draft and Loupe Factory detects that change on a later pull, it stops updating the record as a draft.
Why did a product push create a duplicate?
Unmapped products are not matched by title during Push. Pull the existing Shopify catalog first so Loupe Factory can establish record links.
Will a pushed product immediately appear online?
Loupe Factory attempts to publish newly created products, but Shopify still requires publication scopes, the correct account permissions, an eligible product status, and sales-channel availability. Verify the product in Shopify after the first push.
Does my Storefront description reach Shopify?
Yes, on a Products & Inventory push. Loupe Factory sends the copy from the newest Finished lot that has one as the Shopify product description. Nothing comes back the other way, and clearing the description in Loupe Factory does not clear it in Shopify.
Can I sync materials and supplies to Shopify?
No. Products & Inventory covers Finished inventory only, so a Product with no Finished lots is never created in Shopify. Rejected and scrap lots are still Finished inventory and do reach Shopify.
Why are older orders missing?
Shopify API access is limited to orders created in the last 60 days by default. Older orders require Shopify approval for read_all_orders.
What happens if I unlink or delete a record?
Unlink removes only the relationship and can cause a later Push to create a new Shopify record. Deletions are not mirrored automatically between the systems, and consolidated duplicate variants are kept at zero stock.
Next steps¶
- Review Order Management to see how synced order data is used inside Loupe Factory.
- Review Inventory Management if your team will sync products and stock.
- Return to Integrations if you also plan to connect accounting or bank statement workflows.