Shopify is a leading eCommerce platform that allows businesses to create and manage online stores with ease. When integrated as a source in Flxpoint, Shopify enables seamless synchronization of product data, inventory levels, and order processing between your Shopify store and other sales channels or suppliers. This integration helps ensure that your Shopify store's information is always up-to-date, reducing the risk of overselling and improving order fulfillment efficiency.
How to connect

Product Operations
The primary operation handles the bulk of your inventory management needs, while the secondary operation allows for more detailed control, such as focusing on specific products or updates
Get Inventory and Pricing & Quantity
- Fetch product lists, inventory levels, pricing, and quantity data from Shopify for a specified location.
- Sync inventory quantities and pricing details with Flxpoint’s Global Inventory Pool (GIP) for centralized management.
- Support multi-location inventory by associating data with the correct Shopify Location ID.
- 1 Connecting to Shopify: Establish a connection using OAuth2 authentication to access your Shopify store.
-
2 Fetching Product List: A GET call to
/admin/api/{version}/products.json
retrieves the product list for all locations. -
3 Extracting Inventory Item IDs: Creates a list of
inventory_item_id
values from the fetched products. -
4 Retrieving Inventory Levels: A GET call to
/admin/api/{version}/inventory_levels.json?location_ids=xxxxxx
fetches inventory levels for the specified location using the list ofinventory_item_id
. - 5 Fetching Variant Details: Extracts pricing and quantity data (e.g., cost, price, quantity) from Shopify variants.
- 6 Mapping Data: Maps Shopify product and variant data to Flxpoint inventory fields using a mapping template.
- 7 Saving Data: Updates inventory quantities, pricing, and product details in Flxpoint’s Global Inventory Pool (GIP).
- 8 Execution: Run manually with Run Sync or schedule (e.g., daily).
- Connection: Select your Shopify OAuth connection (e.g., “Shopify Connection API - Shopify App (OAuth2)”).
- Location ID: Specify the Shopify inventory location ID to retrieve inventory levels (required).
- Mapping Template: Define how Shopify product and variant fields map to Flxpoint inventory fields (see Mapping Template Details).
- Sync Frequency: Run manually or schedule syncs (e.g., daily at 6 AM UTC).
- 1 Add the Integration: Go to Channels > Shopify > Integrations, select “Get Inventory and Pricing & Quantity.”
- 2 Connect to Shopify: Select an existing Shopify OAuth connection or set up a new one.
-
3 Configure Settings:
- Specify the Location ID for inventory retrieval.
- Configure sync frequency (e.g., daily at 6 AM UTC).
- 4 Create Mapping Template: Configure field mappings for products and variants (see Mapping Template Details).
- 5 Run the Integration: Start with Run Sync or schedule automatic syncs.
- Screen labeled “Get Inventory and Pricing & Quantity” at the top; name your template (e.g., “Shopify Inventory Sync 1”).
- Buttons: Delete, Duplicate, Save Mapping.
- Sections: Inventory Parent Fields (e.g., Title, Description), Inventory Variant Fields (e.g., SKU, Quantity, Price).
- Columns: Shopify fields (left, e.g., Shopify Product Title), Flxpoint fields (right, e.g., Title).
- Don't Map: Ignore the field; no data is imported to Flxpoint.
- Set To Empty: Clear the field in Flxpoint.
- Direct Copy: Copy the field as-is (e.g., for All Images, All Custom Fields).
- Field: Map a Shopify field to a Flxpoint field (e.g., Shopify Product Title to Flxpoint Title).
- Value: Set a static value (e.g., Weight Unit to “lb”).
- Mapping Set: Apply a predefined mapping set for complex mappings.
- Rules: Apply conditional logic (e.g., map Category 1 only if Product Type matches a specific value).
- Required Field: SKU uniquely identifies inventory variants.
-
Error Scenario: Unmapped SKU may cause inventory sync failures:
Invalid request: Missing required field 'SKU' for inventory sync
- Fix: Go to Channels > Shopify > Templates > Get Inventory and Pricing & Quantity > Field Mapping, map Shopify Variant SKU to Flxpoint SKU, save, and re-run sync.
Shopify Field | Maps To | Data Type | Example | Purpose | Status |
---|---|---|---|---|---|
Shopify Product - Title | Flxpoint Title | Text | Blue T-Shirt | Sets product title | Supported |
Shopify Product - Body HTML | Flxpoint Description | Text | Comfortable cotton t-shirt | Sets product description | Supported |
Shopify Product - Category | Flxpoint Category 1 | Text | gid://shopify/ProductTaxonomyNode/123 | Sets primary category | Supported |
Shopify Product - Custom Collection 1 - Title | Flxpoint Category 1 | Text | gid://shopify/ProductTaxonomyNode/123 | Sets primary category | Supported |
Shopify Product - Custom Collection 2 - Title | Flxpoint Category 2 | Text | gid://shopify/ProductTaxonomyNode/456 | Sets secondary category | Supported |
Shopify Product - Custom Collection 3 - Title | Flxpoint Category 3 | Text | gid://shopify/ProductTaxonomyNode/789 | Sets tertiary category | Supported |
Shopify Product - Smart Collection 1 - Title | Flxpoint Category 1 | Text | gid://shopify/ProductTaxonomyNode/123 | Sets primary category | Supported |
Shopify Product - Smart Collection 2 - Title | Flxpoint Category 2 | Text | gid://shopify/ProductTaxonomyNode/456 | Sets secondary category | Supported |
Shopify Product - Smart Collection 3 - Title | Flxpoint Category 3 | Text | gid://shopify/ProductTaxonomyNode/789 | Sets tertiary category | Supported |
Shopify Product - Vendor | Flxpoint Brand | Text | BrandX | Sets product brand | Supported |
Shopify Product - Tags | Flxpoint All Attributes | Text | summer, cotton | Sets product attributes | Direct Copy Supported |
Shopify Product - Images | Flxpoint All Images | Text | image_url.jpg | Sets product images | Direct Copy Supported |
Shopify Product - Handle | Flxpoint Parent SKU | Text | blue-t-shirt | Sets parent SKU identifier | Supported |
Shopify Product - ID | Flxpoint Reference Identifier | Text | 123456789 | Sets reference identifier | Supported |
Shopify Product - SEO Description | Flxpoint Custom Field | Text | SEO optimized description | Sets SEO description as custom field | Supported |
Shopify Product - SEO Title | Flxpoint Custom Field | Text | SEO optimized title | Sets SEO title as custom field | Supported |
Shopify Product - Product Type | Flxpoint Custom Field | Text | Shirt | Sets product type as custom field | Supported |
Shopify Product - Template Suffix | Flxpoint Custom Field | Text | default-product | Sets template suffix as custom field | Supported |
Shopify Product - Alternate Image Text | Flxpoint Custom Field | Text | Blue T-Shirt Image | Sets alternate image text as custom field | Supported |
Shopify Field | Maps To | Data Type | Example | Purpose | Status |
---|---|---|---|---|---|
Shopify Variant - SKU | Flxpoint SKU | Text | variant-sku-001 | Identifies the variant | Required |
Shopify Variant - Title | Flxpoint Title | Text | Blue T-Shirt - Medium | Sets variant title | Supported |
Shopify Variant - Quantity | Flxpoint Quantity | Number | 50 | Sets inventory quantity | Supported |
Shopify Variant - Barcode | Flxpoint UPC | Text | 012345678905 | Sets universal product code | Supported |
Shopify Variant - Barcode | Flxpoint GTIN | Text | 012345678905 | Sets global trade item number | Supported |
Shopify Variant - Price | Flxpoint Source List Price | Number | $30 | Sets selling price | Supported |
Shopify Variant - Compare At Price | Flxpoint MSRP | Number | $50 | Sets manufacturer’s suggested retail price | Supported |
Shopify Variant - Compare At Price | Flxpoint MAP | Number | $45 | Sets minimum advertised price | Supported |
Shopify Variant - Cost | Flxpoint Cost | Number | $20 | Sets product cost | Supported |
Shopify Variant - Weight | Flxpoint Weight | Number | 0.5 | Sets variant weight | Supported |
Shopify Variant - Weight Unit | Flxpoint Weight Unit (Abbreviated) | Key/Value | lb | Sets unit of weight | Supported |
Shopify Variant - Grams | Flxpoint Weight | Number | 500 | Sets weight in grams (converts to Flxpoint units) | Supported |
Shopify Variant - Options | Flxpoint All Options | Text | Medium, Blue | Sets variant options | Supported |
Shopify Variant - SKU | Flxpoint Master SKU | Text | variant-sku-001 | Sets master SKU identifier | Supported |
Shopify Variant - ID | Flxpoint Reference Identifier | Text | 987654321 | Sets reference identifier | Supported |
Shopify Variant - Tax Code | Flxpoint Custom Field | Text | P000000 | Sets tax code as custom field | Supported |
Shopify Variant - Alternate Image Text | Flxpoint Custom Field | Text | Blue T-Shirt Medium Image | Sets alternate image text as custom field | Supported |
Shopify Variant - Inventory Item ID | Flxpoint Bin Location | Number | 456789123 | Sets bin location identifier | Supported |
Shopify Variant - Position | Flxpoint Custom Field | Number | 1 | Sets variant position as custom field | Supported |
Shopify Field | Maps To | Data Type | Example | Purpose | Status |
---|---|---|---|---|---|
Shopify Variant - Barcode | Flxpoint ASIN | Text | B01N5IB20Q | Sets ASIN identifier | Direct Copy Supported |
Shopify Variant - Custom Fields | Flxpoint All Custom Fields | Text | color: blue | Sets custom fields | Direct Copy Supported (Up to 100) |
Shopify Variant - Custom Aggregate Fields | Flxpoint Custom Aggregate Fields | Key/Value | size: medium | Sets aggregate custom fields | Supported (Up to 10) |
Shopify Product - Status | Flxpoint Archived | Key/Value | Active | Sets archived status | Supported |
Shopify Variant - Inventory Policy | Flxpoint Allow Backorders | Key/Value | Continue | Sets backorder policy | Supported |
Shopify Variant - Weight Unit | Flxpoint Dimension Unit | Key/Value | in | Sets dimension unit | Supported (in/cm) |
Shopify Variant - Weight | Flxpoint Height | Number | 10 | Sets height (if applicable) | Supported |
Shopify Variant - Weight | Flxpoint Length | Number | 20 | Sets length (if applicable) | Supported |
Shopify Variant - Weight | Flxpoint Width | Number | 15 | Sets width (if applicable) | Supported |
Shopify Variant - Cost | Flxpoint Dropship Fee | Number | $5 | Sets dropship fee | Supported |
Shopify Variant - Price | Flxpoint Shipping Cost | Number | $10 | Sets shipping cost | Supported |
Shopify Variant - Barcode | Flxpoint MPN | Text | MPN123 | Sets manufacturer part number | Supported |
GraphQL Integration Notice
Since 2025, our Shopify integration uses ShopifyGraphQL to enhance data processing. This change means the Category field must now use a valid global ID drawn from
Shopify's Taxonomy.
Note: Replace any plain text category values (for example, if you previously used "Consumer Electronics") with the correct global ID to prevent errors such as:
- Location ID Requirement: Specify a Location ID in Flxpoint to fetch inventory levels for that location. Refer to Shopify’s guide on managing locations.
- Single Location Sync: The integration syncs inventory levels for one location per job, using the specified Location ID in the API call.
- Single Location Per Sync: Inventory levels are fetched for one location per sync job; multiple jobs are needed for multiple locations.
- SKU Requirement: Variants without SKUs may not sync properly and could result in incomplete inventory data.
- API Rate Limits: Shopify API rate limits may affect large inventory syncs; monitor usage to avoid interruptions.
- Inventory Not Syncing: Verify the Location ID is correct and matches a valid Shopify location.
- Missing Quantities or Pricing: Ensure the Shopify Variant Quantity and Price fields are mapped to Flxpoint Quantity and Source List Price in the mapping template.
- API Errors: Check for Shopify API rate limit issues; reduce sync frequency if needed.
-
Incomplete Data: If variants are missing, ensure Shopify Variant SKU is populated and mapped:
Warning: Variant skipped due to missing SKU
- Date: As of 09:43 PM -04, May 29, 2025, this integration is operational.
- Required Fields: SKU and Quantity must be mapped.
- API Limits: Monitor Shopify API rate limits to avoid sync interruptions.
Order Operations
It submits orders to vendors for fulfillment and subsequently imports the shipment details, ensuring a seamless integration between order processing and shipment tracking.
Send Orders
- Send order fulfillment requests from Flxpoint to Shopify for processing.
- Create Fulfillment Orders in Shopify with accurate SKU and quantity details.
- Support multi-location inventory by specifying the Shopify location for fulfillment.
- 1 Connecting to Shopify: Establish a connection using OAuth2 authentication to access your Shopify store.
-
2 Fetching Order Data: A GET call to
/admin/api/{version}/orders.json
retrieves order details for fulfillment. - 3 Mapping Data: Maps Flxpoint order fields (e.g., SKU, Quantity) to Shopify Fulfillment Order fields using a mapping template.
-
4 Creating Fulfillment Orders: A POST call to
/admin/api/{version}/fulfillment_orders.json
creates Fulfillment Orders in Shopify for the specified location. - 5 Execution: Run manually with Run Sync or schedule (e.g., daily).
- Connection: Select your Shopify OAuth connection (e.g., “Shopify Connection API - Shopify App (OAuth2)”).
- Location ID: Specify the Shopify inventory location ID to send fulfillment requests (required).
- Mapping Template: Define how Flxpoint order fields map to Shopify Fulfillment Order fields (see Mapping Template Details).
- Sync Frequency: Run manually or schedule syncs (e.g., daily at 6 AM UTC).
- 1 Add the Integration: Go to Channels > Shopify > Integrations, select “Send Orders.”
- 2 Connect to Shopify: Select an existing Shopify OAuth connection or set up a new one.
-
3 Configure Settings:
- Specify the Location ID for fulfillment requests.
- Configure sync frequency (e.g., daily at 6 AM UTC).
- 4 Create Mapping Template: Configure field mappings for orders (see Mapping Template Details).
- 5 Run the Integration: Start with Run Sync or schedule automatic syncs.
- Screen labeled “Send Orders” at the top; name your template (e.g., “Shopify Send Orders 1”).
- Buttons: Delete, Duplicate, Save Mapping.
- Sections: Order Fields (e.g., Order ID), Line Item Fields (e.g., SKU, Quantity).
- Columns: Flxpoint fields (left, e.g., Flxpoint Order ID), Shopify fields (right, e.g., Shopify Order ID).
- Don't Map: Ignore the field; no data is sent to Shopify.
- Set To Empty: Clear the field in Shopify.
- Field: Map a Flxpoint field to a Shopify field (e.g., Flxpoint Order ID to Shopify Order ID).
- Value: Set a static value (e.g., Location ID to a specific value).
- Mapping Set: Apply a predefined mapping set for complex mappings.
- Rules: Apply conditional logic (e.g., map Quantity only if greater than 0).
- Required Fields: Order ID and SKU uniquely identify the order and its items.
-
Error Scenario: Unmapped Order ID or SKU may cause fulfillment request failures:
Invalid request: Missing required field 'Order ID' or 'SKU' for fulfillment request
- Fix: Go to Channels > Shopify > Templates > Send Orders > Field Mapping, map Flxpoint Order ID to Shopify Order ID and Flxpoint SKU to Shopify SKU, save, and re-run sync.
Flxpoint Field | Maps To | Data Type | Example | Purpose | Status |
---|---|---|---|---|---|
Flxpoint Order ID | Shopify Order ID | Number | 123456789 | Identifies the order | Required |
Flxpoint Location ID | Shopify Location ID | Number | 987654321 | Sets the fulfillment location | Supported |
Flxpoint Field | Maps To | Data Type | Example | Purpose | Status |
---|---|---|---|---|---|
Flxpoint SKU | Shopify SKU | Text | item-sku-001 | Identifies the product | Required |
Flxpoint Quantity | Shopify Quantity | Number | 2 | Sets the quantity to fulfill | Supported |
Flxpoint Field | Maps To | Data Type | Example | Purpose | Status |
---|---|---|---|---|---|
Flxpoint Billing Address - Address 1 | Shopify Billing Address - Address 1 | Text | 123 Main St | Sets billing address | Supported |
Flxpoint Shipping Address - Address 1 | Shopify Shipping Address - Address 1 | Text | 456 Oak St | Sets shipping address | Supported |
- Location ID Requirement: Specify a Location ID in Flxpoint to send fulfillment requests for that location. Refer to Shopify’s guide on managing locations.
- Single Location Sync: The integration sends fulfillment requests for one location per job, using the specified Location ID in the API call.
- Single Location Per Sync: Fulfillment requests are sent for one location per sync job; multiple jobs are needed for multiple locations.
- Required Fields: Order ID and SKU must be mapped to create Fulfillment Orders.
- API Rate Limits: Shopify API rate limits may affect large sync jobs; monitor usage to avoid interruptions.
- Fulfillment Requests Not Sending: Verify the Location ID is correct and matches a valid Shopify location.
- Missing Data: Ensure the Order ID and SKU fields are mapped in the mapping template.
- API Errors: Check for Shopify API rate limit issues; reduce sync frequency if needed.
-
Incomplete Fulfillment: If orders fail to fulfill, ensure all required fields are populated and mapped:
Warning: Fulfillment request failed due to missing SKU
- Date: As of 09:46 PM -04, May 29, 2025, this integration is operational.
- Required Fields: Order ID and SKU must be mapped.
- API Limits: Monitor Shopify API rate limits to avoid sync interruptions.
Get Shipments
- Retrieve shipment data from Shopify to update Flxpoint with fulfilled order details.
- Sync tracking information, including carrier, tracking number, and shipped date.
- Support multi-location inventory by associating shipments with the correct Shopify Location ID.
- 1 Connecting to Shopify: Establish a connection using OAuth2 authentication to access your Shopify store.
-
2 Fetching Shipment Data: A GET call to
/admin/api/{version}/fulfillments.json
retrieves shipment details for fulfilled orders. - 3 Extracting Shipment Details: Extracts tracking information (e.g., Tracking Number, Carrier) from the API response.
- 4 Mapping Data: Maps Shopify shipment fields to Flxpoint fields using a mapping template.
- 5 Syncing Data: Imports the mapped shipment data into Flxpoint, updating order records.
- 6 Execution: Run manually with Run Sync or schedule (e.g., daily).
- Connection: Select your Shopify OAuth connection (e.g., “Shopify Connection API - Shopify App (OAuth2)”).
- Location ID: Specify the Shopify inventory location ID to retrieve shipment data (required).
- Mapping Template: Define how Shopify shipment fields map to Flxpoint fields (see Mapping Template Details).
- Sync Frequency: Run manually or schedule syncs (e.g., daily at 6 AM UTC).
- 1 Add the Integration: Go to Channels > Shopify > Integrations, select “Get Shipments.”
- 2 Connect to Shopify: Select an existing Shopify OAuth connection or set up a new one.
-
3 Configure Settings:
- Specify the Location ID for shipment retrieval.
- Configure sync frequency (e.g., daily at 6 AM UTC).
- 4 Create Mapping Template: Configure field mappings for shipments (see Mapping Template Details).
- 5 Run the Integration: Start with Run Sync or schedule automatic syncs.
- Screen labeled “Get Shipments” at the top; name your template (e.g., “Shopify Get Shipments 1”).
- Buttons: Delete, Duplicate, Save Mapping.
- Columns: Shopify fields (left, e.g., Shopify Tracking Number), Flxpoint fields (right, e.g., Tracking Number).
- Enable: Import the field (e.g., Tracking Number).
- Disable: Ignore the field (e.g., Custom Attributes).
- Required Fields: Tracking Number and Shipped At are required for proper shipment import.
- Required Fields: Tracking Number and Shipped At identify the shipment and its status.
-
Error Scenario: Missing Tracking Number or Shipped At may cause:
Invalid request: Missing required field 'Tracking Number' or 'Shipped At' for shipment import
- Fix: Go to Channels > Shopify > Templates > Get Shipments > Field Mapping, enable Tracking Number and Shipped At, save, and re-run sync.
Shopify Field | Maps To | Data Type | Example | Purpose | Status |
---|---|---|---|---|---|
Shopify Fulfillment - Tracking Number | Flxpoint Tracking Number | Text | 1Z9999W999999999 | Sets the tracking number | Required |
Shopify Fulfillment - Tracking Company | Flxpoint Carrier | Text | UPS | Sets the carrier | Supported |
Shopify Fulfillment - Created At | Flxpoint Shipped At | Text | 2025-05-29T09:00:00Z | Sets the shipment date | Required |
- Location ID Requirement: Specify a Location ID in Flxpoint to fetch shipment data for that location. Refer to Shopify’s guide on managing locations.
- Single Location Sync: The integration retrieves shipment data for one location per job, using the specified Location ID in the API call.
- Single Location Per Sync: Shipment data is fetched for one location per sync job; multiple jobs are needed for multiple locations.
- Required Fields: Tracking Number and Shipped At must be mapped to import shipments.
- API Rate Limits: Shopify API rate limits may affect large sync jobs; monitor usage to avoid interruptions.
- Shipments Not Importing: Verify the Location ID is correct and matches a valid Shopify location.
- Missing Data: Ensure the Tracking Number and Shipped At fields are mapped in the mapping template.
- API Errors: Check for Shopify API rate limit issues; reduce sync frequency if needed.
-
Incomplete Data: If shipment details are missing, ensure all required fields are populated and mapped:
Warning: Shipment import failed due to missing Tracking Number
- Date: As of 09:46 PM -04, May 29, 2025, this integration is operational.
- Required Fields: Tracking Number and Shipped At must be mapped.
- API Limits: Monitor Shopify API rate limits to avoid sync interruptions.