Shopify Set-Up Guide
Purpose
This guide provides step-by-step instructions for connecting your Shopify store to EFS through our Shopify app, configuring settings, and ensuring orders flow correctly between your store and our fulfillment system.
Table of Contents
1. Before You Begin
2. Installing the EFS Shopify App
3. Configuring Integration Settings
4. Moving Products to the App Location
5. Configure Shopify’s Fulfillment Settings
6. Adjust Shipping Profiles (Remove Old Location)
7. Setting Up Ship Method Mappings
8. Confirming the Connection
9. Enabling Order and Inventory Sync
10. Understanding Order Statuses
11. Special Considerations
12. Troubleshooting Common Issues
13. Best Practices
14. Support and Resources
1. Before You Begin
Requirements Checklist
☐ EFS Account Setup
- Active FCP account with login credentials
- SKUs entered in FCP matching your Shopify product SKUs
- Inventory received and in stock at EFS
☐ Integration Portal Access
- IS2 login credentials (request from Client Care if needed)
- URL: https://integration.efulfillmentservice.com
☐ Shopify Store Access
- Admin access to your Shopify store
- Products listed with SKUs assigned
- Test products in stock for order testing
Important: If you don’t have Integration Portal credentials, contact your Client Care Account Specialist before proceeding.
2. Installing the EFS Shopify App
Step 1: Find the App
- Log into your Shopify admin dashboard
- Click the Search bar at the top
- Type “eFulfillment Service”
- Click “Search eFulfillment Service in Shopify App Store”
- Click on the eFulfillment Service app in the results
Alternative: Search the Shopify App Store directly at apps.shopify.com
Step 2: Install the App
- Click the “Install” button on the app listing page
- Shopify will ask you to share permissions with the app
- Review the permissions (read orders, update inventory, etc.)
- Click “Install” to confirm
You’ll be redirected to the Integration Portal login page.
Step 3: Connect to Integration Portal
- Enter your Integration Portal username and password
- Click “Sign In”
- You’ll see the integration settings page
Don’t have IS2 credentials? Contact your Client Care Account Specialist.
3. Configuring Integration Settings
On the integration settings page, fill out the following fields:
Integration Name
- Enter a one-word name (letters and numbers only, no spaces)
- Example: “MyShopifyStore” or “MainStore”
- This helps you identify the integration if you have multiple stores
WMS Target
- Should auto-populate with “FcpLive”
- If you have multiple warehouses, select the appropriate one
- Most clients will only have one option
Order/Inventory Sync Schedule
- Order Sync: How often we check for new orders (recommended: Every 30 minutes)
- Inventory Sync: How often we update your store’s inventory (recommended: Hourly)
- Select from dropdown menus
Shipment Email
- Yes: Shopify sends shipment notification emails to customers
- No: Shopify does not send emails (you handle notifications)
- Recommended: Yes
Ignored Ship Methods
- Optional: List ship methods (separated by commas) that should be replaced with Domestic or International Default
- Example: “Local Pickup, Store Pickup”
- Leave blank if not needed
Product Published Status
- Published: Only sync published products
- Draft: Only sync draft products
- Both: Sync all products regardless of status
- Recommended: Published
Automatic Fulfillment Settings
These settings control how Shopify requests fulfillment:
Automatic Fulfillment Requests:
- Yes: We automatically request fulfillment for orders meeting criteria
- No: You must manually request fulfillment in Shopify
- Recommended: No (use Shopify’s automatic fulfillment setting instead)
Order Age:
- How many days old an order can be before we request fulfillment
- Only applies if Automatic Fulfillment = Yes
- Default: 3 days
Risk Qualifier:
- Risk level required before requesting fulfillment (Low, Medium, High)
- Only applies if Automatic Fulfillment = Yes
- Helps prevent fraudulent orders from being fulfilled
Important: Most clients should set Automatic Fulfillment Requests to No and use Shopify’s native automatic fulfillment setting (see Section 5).
Save Your Settings
Click the blue “Save Integration” button at the bottom of the page.
You’ll be returned to the Integrations page where your new Shopify integration will be visible.
4. Moving Products to the App Location
For the integration to work, products must be stocked at the EFS app location in Shopify.
Step 1: View Your Locations
- In Shopify admin, go to Settings → Locations
- You should see a location called “Efulfillment service” or similar
- Note: You cannot edit or remove this location—it’s created by the app
Step 2: Use Bulk Editor to Move Inventory
- Go to Products → Inventory in your Shopify admin
- Click the checkboxes to select all products that EFS will fulfill
- Click “Bulk Edit” at the bottom of the page
Step 3: Add the App Location Column
- In the Bulk Editor, click the “Columns” button (top right)
- Scroll down to “Quantities by location”
- Check the box for “Efulfillment service” (the app location)
- Click outside the menu to close it
Step 4: Stock Products at App Location
- You’ll now see columns for both your location and the EFS app location
- Select all cells in the Efulfillment service column
- Click on any selected cell
- A popup will ask: “Stock at this location?”
- Check the box and confirm
Your inventory will now be stocked at both locations.
Step 5: Remove Inventory from Your Location (Optional)
Only do this if you will NOT sell inventory from your own location.
- In Bulk Editor, select all cells in your store location column
- Click on any selected cell
- Uncheck “Stock at this location”
- Confirm
Important: You cannot move inventory from a location if orders are attached to that inventory. Resolve all pending orders first.
Step 6: Save Changes
Click “Save” in the top right of the Bulk Editor.
Note: This process must be completed before orders will flow correctly to EFS.
5. Configure Shopify’s Fulfillment Settings
To ensure orders are sent to EFS automatically, adjust Shopify’s fulfillment settings:
Step 1: Access Order Processing Settings
- In Shopify admin, go to Settings → Checkout
- Scroll down to “Order processing” section
- Find the setting: “After an order has been paid”
Step 2: Enable Automatic Fulfillment
Select: “Automatically fulfill the order’s line items”
This tells Shopify to request fulfillment from EFS as soon as payment is successful.
Important: This applies to ALL locations. If you have other fulfillment locations that cannot support automatic fulfillment, you must manually fulfill orders for all locations, including EFS.
Step 3: Save Settings
Click “Save” in the top right corner.
6. Adjust Shipping Profiles (Remove Old Location)
To prevent Shopify from fulfilling products at the wrong location, remove your store location from shipping profiles.
Step 1: Access Shipping Profiles
- Go to Settings → Shipping and delivery
- You’ll see your shipping profiles at the top
- Click “Manage” on your general shipping profile
Step 2: Remove Store Location
- Click “Show details” next to your shipping zones
- You’ll see locations connected to the profile
- Click the pencil icon next to your store location
- Click “Remove rates for [Store location]”
- Click “Done”
Step 3: Verify App Location is Connected
- Ensure the Efulfillment service location remains in the shipping profile
- This location should be the only one listed (unless you have other fulfillment centers)
Step 4: Save Changes
Click “Save” in the top right corner.
Why this matters: Even with inventory at the app location, Shopify may fulfill at your store location if it’s attached to the shipping profile. This step prevents that error.
7. Setting Up Ship Method Mappings
Ship method mappings tell EFS which shipping service to use based on the method selected in your Shopify store.
Step 1: Identify Your Shipping Methods
- In Shopify admin, go to Settings → Shipping and delivery
- Review your shipping profiles
- Note the exact names of your shipping methods (case-sensitive)
- Common examples:
- “Standard”
- “Express”
- “Free Shipping”
- “Priority Mail”
- “International Shipping”
Step 2: Access Ship Maps in IS2
- Log into the Integration Portal
- Go to your Shopify integration
- Click “Ship Maps” in the integration navigation
Step 3: Create Ship Mappings
- Click “+ New Ship Map”
- Fill out the form:
Cart Method:
- Enter the shipping method name from Shopify exactly as it appears
- Case-sensitive and must match perfectly
- Example: “Standard Shipping”
WMS Shipping Code:
- Select the EFS shipping code from the dropdown
- Common options:
- GROUND – Standard ground shipping
- PRIORITY – USPS Priority Mail
- 2DAY – 2-day express
- OVERNIGHT – Next day delivery
- INTERNATIONAL_DEFAULT – International orders
- Best Rate Economy Lightweight Post – Rate shopping (recommended for domestic)
Signature Required (Optional):
- Check if this ship method requires signature confirmation
Hold Orders (Optional):
- Select if orders with this method should be held for fraud screening
- Choose hold duration from dropdown
- Click “Save” at the bottom
Step 4: Repeat for All Shipping Methods
Create a ship mapping for each shipping method you offer in your Shopify store.
Example setup:
- “Standard Shipping” → GROUND
- “Free Shipping” → GROUND
- “Express Shipping” → 2DAY
- “Overnight Shipping” → OVERNIGHT
- “International” → INTERNATIONAL_DEFAULT
Tip: Use our rate shopping codes like “Best Rate Economy Lightweight Post” to automatically select the cheapest carrier for domestic orders.
8. Confirming the Connection
Before turning on order syncing, verify everything is connected properly.
Step 1: Check Cart Items
- In the Integration Portal, go to your Shopify integration
- Click “Cart Items”
- Click “Refresh Cart Items”
Success: Your products from Shopify should appear in the list
Failure: If no products appear or you see an error:
- Verify products are at the app location (Section 4)
- Check that products have SKUs assigned in Shopify
- Ensure Product Published Status setting matches your products (Section 3)
- Contact support if issue persists
Step 2: Create a Test Order
- In your Shopify store, place a test order
- Use a real address (your own)
- Select one of your shipping methods
- Complete payment (you’ll be charged)
Important: Make sure the test product is in stock at EFS.
Step 3: Check Received Orders
- In Integration Portal, go to your Shopify integration
- Click “Received Orders”
- Look for your test order
Success: Order appears with status “NEW” or “ACCEPTED”
Failure: If order doesn’t appear:
- Check that Shopify’s automatic fulfillment is enabled (Section 5)
- Verify product is at app location (Section 4)
- Wait 30 minutes for next sync cycle
- Check for errors in Received Orders log
Step 4: Verify Order in FCP
- Log into your Fulfillment Control Panel
- Go to Orders → Search/Edit Orders
- Search for your test order by name or date
Success: Order appears as “Pending” (yellow box)
Failure: If order is in IS2 but not FCP:
- Check for “IMPORT ERROR” status in IS2
- Verify SKUs in Shopify match SKUs in FCP exactly
- Contact support with error details
9. Enabling Order and Inventory Sync
Once testing is successful, enable automatic syncing.
Step 1: Turn On Syncing
- In Integration Portal, go to your Shopify integration main page
- Find the toggle switches for:
- Order Sync
- Inventory Sync
- Turn both toggles to ON (blue)
Step 2: Monitor Initial Orders
For the first 24-48 hours:
- Check Received Orders log daily
- Verify orders are flowing to FCP
- Watch for any error messages
- Test that tracking updates return to Shopify
Step 3: Verify Inventory Sync
- Wait for first inventory sync cycle (based on your schedule)
- In Shopify admin, go to Products → Inventory
- Verify quantities match your FCP inventory
- Make a test inventory adjustment in FCP
- Confirm it updates in Shopify on next sync
10. Understanding Order Statuses
As orders flow through the system, they’ll show different statuses:
In Integration Portal (IS2)
| Status | Meaning |
| NEW | Order received from Shopify, awaiting FCP transfer |
| ACCEPTED | Order successfully transferred to FCP |
| IMPORT ERROR | Problem transferring to FCP (check error message) |
| COMPLETED | Order shipped and tracking sent back to Shopify |
In Fulfillment Control Panel (FCP)
| Status | Meaning |
| Pending (Yellow) | Order in system, not yet processed |
| Processing (Green) | Order is being picked/packed |
| Completed (Brown) | Order shipped |
| Backorder (Red) | Waiting for inventory |
11. Special Considerations
Multiple Shopify Stores
If you have multiple Shopify stores:
- Create a separate integration for each store in IS2
- Use different Integration Names to distinguish them
- Each integration needs its own ship method mappings
- Inventory syncs to all stores from the same FCP inventory
Products with Variants
- Each variant must have its own SKU in Shopify
- Variant SKUs must match FCP SKUs exactly
- If variants share a SKU, create SKU mappings in IS2
Bundles and Kits
If you sell bundles (1 Shopify product = multiple FCP SKUs):
- Go to Cart Items in your integration
- Find the bundle product
- Click “+ Add SKU Map”
- Add each FCP SKU and quantity that makes up the bundle
International Orders
- Create ship mapping for international shipping method
- Map to INTERNATIONAL_DEFAULT or specific service
- EFS automatically routes to appropriate carrier
- Ensure customs information is in FCP SKUs (HS codes, country of origin)
Order Editing After Fulfillment Requested
Important limitations:
- Once fulfillment is requested, editing in Shopify creates a NEW order in FCP
- Original order is NOT updated
- To avoid double fulfillment: Contact EFS support to cancel original order
- To avoid extra charges: Edit orders BEFORE fulfillment is requested
Canceling Orders
Before order is in FCP (still in IS2):
- Cancel directly in Shopify
- Click “Cancel fulfillment requests”
- Order will not transfer to FCP
After order is in FCP:
- Create support ticket immediately with EFS order number
- We’ll attempt to cancel if not yet processed
- May incur fees if already picked/packed
12. Troubleshooting Common Issues
Issue: Orders Not Pulling Into IS2
Possible causes:
- Products not at app location
- Automatic fulfillment not enabled
- Order older than configured history setting
- Product has draft status but integration set to published only
Solutions:
- Verify products at app location (Section 4)
- Check Shopify automatic fulfillment setting (Section 5)
- Manually request fulfillment in Shopify for older orders
- Adjust Product Published Status setting in IS2
Issue: Orders in IS2 But Not FCP
Possible causes:
- SKU mismatch (Shopify SKU doesn’t match FCP SKU)
- Ship method not mapped
- Order has errors preventing import
Solutions:
- Check Received Orders log in IS2 for error messages
- Verify SKUs match exactly (case-sensitive)
- Check that ship method has mapping created
- Contact support with specific error message
Issue: Tracking Not Updating in Shopify
Possible causes:
- Tracking updates occur 4 hours after shipment
- Connection issue between IS2 and Shopify
- Fulfillment already manually marked complete
Solutions:
- Wait 4-6 hours after shipment
- Check that order shows COMPLETED in IS2
- Verify you haven’t manually marked fulfilled in Shopify
- Contact support if tracking missing after 24 hours
Issue: Inventory Not Syncing
Possible causes:
- Inventory sync disabled
- Products not activated for syncing in Cart Items
- Shopify inventory not tracked at app location
Solutions:
- Verify inventory sync toggle is ON
- In IS2 Cart Items, activate products for syncing
- Check that products track inventory at app location in Shopify
- Review sync schedule—may only update hourly/daily
13. Best Practices
SKU Management:
- ✓ Use consistent SKU naming across all platforms
- ✓ Keep SKUs simple (avoid special characters)
- ✓ Double-check SKU accuracy before adding products
- ✓ Never change SKUs after products are live
Order Flow:
- ✓ Test integration thoroughly before going live
- ✓ Monitor Received Orders log daily for first week
- ✓ Set up email notifications in FCP for order issues
- ✓ Keep inventory levels updated to prevent backorders
Inventory Sync:
- ✓ Only activate products you want synced
- ✓ Use inventory sync to prevent overselling
- ✓ Adjust sync frequency based on order volume
- ✓ Monitor for sync errors in IS2
Ship Methods:
- ✓ Create mappings for all shipping options offered
- ✓ Test each shipping method with sample order
- ✓ Use rate shopping codes when possible to save costs
- ✓ Review mappings when adding new shipping options
14. Support and Resources
Integration Issues:
- Submit support ticket: Client Info → Support in FCP
- Email: [email protected]
- Phone: 1-866-922-6783 (Press 2 for Customer Service)
Client Care Account Specialist:
- For complex integration questions
- Assistance with IS2 setup
- Policy questions
Related Guides:
- Sync Fix Guide (troubleshooting sync problems)
- Bulk Upload CSV Guide (backup order submission method)
- FCP Quick Reference Guide (manual order entry)
