Configuring Shopify B2B
If you are using Shopify B2B functionality, this document will help you to configure you Shopify sales channel.
Overview
The Shopify B2B Management module enables comprehensive Business-to-Business functionality for Channel Sales Manager for Shopify. This module allows you to synchronize companies, contacts, contact roles, and locations between Shopify B2B and Business Central, providing a seamless B2B e-commerce experience.
What's Included
- Company Management: Synchronize Shopify B2B companies with Business Central
- Contact Management: Manage company contacts and their relationships
- Contact Roles: Assign and manage contact roles by company and location
- Main Contact Assignment: Designate and sync main contacts for companies
- Location-Based Roles: Manage contact permissions at specific company locations
Prerequisites
Before setting up the Shopify B2B module, ensure you have:
1. Active Subscriptions:
- CSM Core (Required)
- CSM for Shopify Order Management (Required)
- CSM for Shopify B2B Management (New)
2. Shopify Requirements:
- Shopify Plus account (B2B features require Shopify Plus)
- B2B functionality enabled in your Shopify store
- Valid Shopify API credentials with B2B permissions
3. Business Central Setup:
- CSM for Shopify version 4.12 or later
- Business Central version 24.0 or later
- At least one Shopify sales channel configured
Enable the Shopify B2B Subscription
1. Open CSM Setup in Business Central
2. Locate Suite Engine Subscriptions
3. Look for the B2B Management subscription status
4. If you don't have an active subscription, click Shopify Free Trial
- This will create trial subscriptions for all CSM for Shopify modules
- The trial includes Order Management, Listing Management, and B2B Management
Managing Your Subscription
- Good Standing: If your B2B Management subscription shows a green status, you're ready to proceed
- Bad Standing: If shown in red, click the Shopify B2B Mgmt button to renew or update your subscription
- Check Status: View your subscription details from the Manage Subscriptions action in CSM Setup
Note: The B2B Management module is optional. Order Management and Listing Management will continue to work without it. Only enable B2B if you need to manage business customers through Shopify.
Enable API Engine Application Operations
The Shopify B2B module requires the Suite Engine API Engine for API communications. You must enable this during setup.
Option A: During Initial Setup (Recommended)
If you're setting up CSM for Shopify for the first time:
1. Run the Shopify Quick Setup Wizard from CSM Setup
2. On the first wizard page, locate Load API Application Operations
3. Check the box to enable this option
4. Complete the wizard as normal
- Important: You MUST enable "Load API Application Operations" to use B2B functionality. This loads the API Engine configuration required for B2B operations.
Option B: For Existing Sales Channels
If you already have a Shopify sales channel configured:
1. Open the Shopify Quick Setup Wizard again
2. Enable Load API Application Operations
3. Provide your existing sales channel code when prompted
4. The wizard will update your sales channel with API Engine configuration
5. Complete the wizard
- Enabling API Application Operations:
- Generates default API Engine setup for CSM and Shopify
- Creates execution modules for Shopify operations
- Configures automation data for B2B API calls
- Enables GraphQL API support for B2B operations
Configure Your Sales Channel for B2B
Update API Engine Settings
1. Open CSM Sales Channels and select your Shopify channel
2. Navigate to the API Data FastTab
3. Locate the API App. Execution Module field
4. This field should be automatically populated if you enabled API Application Operations
5. Verify the module code is set (typically "SHOPIFY" or similar)
Note: The API App. Execution Module determines which API functions are used for core operations on this sales channel. This is required for B2B functionality.
Optional: Configure Amount Source
The B2B module supports multiple currency scenarios:
1. On your Sales Channel card, expand Order Management section
2. Locate the Additional Settings group
3. Find the Amount Source field
4. Choose between:
- Shop: Use the shop's base currency for calculations (default)
- Presentment: Use the presentment currency for multi-currency scenarios
Tip: The Amount Source setting is intended as a temporary solution until the API mapping feature becomes available. Most customers should leave this set to "Shop" unless working with multiple currencies.
Retrieve B2B Companies from Shopify
Once your sales channel is configured for B2B, you can begin retrieving company data.
Initial Company Retrieval
1. Navigate to CSM Company List
2. Use the Retrieve from Channel action to pull companies from Shopify
3. CSM will retrieve all B2B companies from your Shopify store
4. Each company will include:
- Company name and details
- External ID (Shopify company ID)
- Status information
- Related contacts
Understanding Company Data
Companies retrieved from Shopify include:
- CSM Company ID: Unique identifier in Business Central (GUID)
- External ID: The Shopify company ID for synchronization
- Name: Company name from Shopify
- Sales Channel Code: Links the company to your Shopify channel
- Main Contact Code: The primary contact for the company
Manage Company Contacts
Retrieving Contact Roles
For each company, you can retrieve contact role information:
1. Open a CSM Company Card for a Shopify B2B company
2. Click the Retrieve Company Contact Roles action
3. CSM will pull all contact role assignments from Shopify for this company
4. Contact roles include location-based permissions
Understanding Contact Roles for Shopify
Shopify B2B contact roles are company-specific, not site-wide:
- Each contact role belongs to a specific CSM Company
- The CSM Company ID field identifies which company the role belongs to
- The CSM Company Name field displays the company name
- Roles can be assigned to specific locations within a company
Viewing Contact Roles
1. Navigate to CSM Contact Roles
2. Filter by your Shopify sales channel to see all roles
3. Notice the additional fields for Shopify:
- CSM Company ID: The company this role belongs to
- CSM Company Name: Name of the company (read-only)
Note: In Shopify, contact roles are assigned per company and per location, not globally. This differs from some other platforms where roles apply across the entire site.
Assign Main Contacts
Shopify B2B requires each company to have a designated main contact. CSM can synchronize this assignment.
Setting a Main Contact in Business Central
1. Open the CSM Company Card for a company
2. Expand the Company Contacts section
3. Select the contact you want to designate as the main contact
4. Click Send Main Contact to Channel action
5. CSM will update Shopify with this main contact assignment
Main Contact Requirements
- The company must have an External ID (must be retrieved from Shopify first)
- The company must have a Main Contact Code assigned
- The contact must exist in the CSM Company Contact table
What Happens
When you send the main contact assignment:
1. CSM validates the company has an External ID
2. CSM verifies a main contact is assigned
3. CSM creates an API message to update Shopify
4. The API call assigns the contact as the main contact in Shopify
5. Shopify updates the company's primary contact information
Understanding Company Contacts
Company Contacts vs. Regular Contacts
Shopify B2B distinguishes between:
- Business Central Contacts: Standard CRM contacts
- CSM Company Contacts: Contacts associated with specific companies on a sales channel
Company Contact Fields
When viewing CSM Company Contacts, you'll see:
- Sales Channel Code: Which channel this contact belongs to
- CSM Company ID: Which company they're associated with
- Contact Code: Links to Business Central contact
- Is Main Contact: Indicates if this is the primary contact (internal use)
- The Is Main Contact field is populated when contacts are retrieved from Shopify and is used to update the CSM Company record.
Role Assignments by Location
Unlike global contact roles, Shopify B2B allows:
- Different roles at different company locations
- Location-specific permissions and access
- Fine-grained control over what contacts can do at each location
Working with B2B Orders
Order Processing
Once B2B is configured, orders from Shopify B2B customers flow through CSM like regular orders:
1. Orders are retrieved using the standard Get Orders automation
2. B2B customer information is associated with the order
3. Company relationships are maintained
4. Orders can be processed normally in Business Central
B2B-Specific Order Data
B2B orders may include:
- Company reference information
- Contact role data
- Location-specific details
- Company payment terms
- Custom pricing based on company relationships