General Settings
Overview
The B2B Sync feature in Shopify Integration enables businesses to manage B2B company structures, customer mapping, and pricing synchronization between Shopify and XoroERP.
This functionality is designed to support:
Company and location hierarchy (Parent–Child structure)
Accurate order mapping based on B2B customers
Flexible pricing rules at the company or location level

B2B Sync works through four core flows:
B2B Company Sync
B2B Customer Sync
Customer & Location Mapping
B2B Pricing Sync
All the above flows are configured from the General Tab under B2B Sync settings.
B2B Sync
Enable B2B Sync
Type: Checkbox
This setting allows your account to operate in B2B (Business-to-Business) mode for Shopify integration.
What happens when this is enabled
When Enable B2B Sync is turned on, all incoming orders are treated as B2B orders, and the system follows a specific method to identify customers and process orders.
Orders are successfully created (dropped) in XoroERP
Customers are matched using the Shopify Customer ID
The system uses a Customer Identifier Code (such as Location ID) from the selected custom field
Important Requirement
The Customer Identifier Code is mandatory
This value must be available in the configured custom field for each customer
If this information is missing, the system will not be able to correctly identify the customer or process the order.
Customer Matching Logic
When this setting is enabled:
Customer matching is done only using the Shopify Customer ID
The system will not use phone number or email for matching

What it does:
Enables syncing of B2B companies and locations
Allows pricing rules to be applied and synced
Activates additional configuration options within the B2B Sync module
Available Options Under B2B Sync
Once Enable B2B Sync is checked, the following options become available:

1. Enable B2B Company Sync
Description:
This setting allows synchronization of Shopify B2B Companies into XoroERP.
What gets synced:
Company details
Associated customers
Company locations
B2B Customer Sync Type
Selecting the above option enables a dropdown:

a. Sync B2B Customer as Customer
Company is created as a Parent Customer
Customers are created as Child Customers
Maintains a hierarchical structure
b. Sync B2B Location as Customer
Each location is treated as an independent customer
No parent-child hierarchy is enforced
Key Behavior
Multiple locations under a company are handled based on the selected sync type
Business Impact
Enables structured B2B customer management
Supports customer/location-level tracking and operations
Ensures correct customer mapping during order creation
2. Sync B2B Prices
Description:
This setting enables synchronization of B2B catalog pricing from XoroERP to Shopify.
When enabled:
Pricing rules configured in XoroERP are applied in Shopify
Pricing is mapped to company or location level
Additional Settings
Enabling this option exposes the following configurations:
B2B Price Sync Type
This setting determines how pricing is synced between XoroERP and Shopify for B2B customers.
In B2B scenarios, pricing is often different for each customer or company location. This setting allows you to control whether pricing should follow a standard mapping or a custom, field-based mapping.

Available Options
Default Price Sync Mapping
When this option is selected, XoroERP uses the default mapping configuration to sync B2B pricing along with customer location data.
To use this option, Enable B2B Company Sync must be turned ON. Once enabled, XoroERP automatically generates and maintains the required location ID mappings in the backend. These mappings are then used during synchronization with Shopify to ensure the correct pricing is applied.
This option does not require any additional setup and is ideal for scenarios where you want the system to manage pricing and location mapping automatically using the default configuration.
Price Sync Customer Field Map
When this option is selected, XoroERP syncs B2B pricing to Shopify using custom field-based mapping instead of the default configuration.
This allows you to control how pricing is applied by linking customers and items to specific company locations and product variants in Shopify.
With this setup:
Xoro price rules are synced to Shopify
Pricing is applied based on the mapped customer location and item variant
Suitable for advanced B2B setups where pricing varies by customer or location
The following options appear when the user selects “Price Sync Custom Field Map” from the dropdown under the B2B Price Sync Type setting
B2B Price Sync Customer Custom Field
This field is used to select a custom field in XoroERP that stores the B2B Location ID for each customer.
What this means
Each customer is linked to a specific company location in Shopify
This location determines which price catalog applies

Select the custom field containing:
Shopify Location ID
How it works
The system reads the Location ID from the selected custom field
It uses this ID to:
Identify the correct company/location in Shopify
Apply the correct pricing for that customer
Why this is important
Without this mapping:
The system cannot determine which pricing to apply
Customers may receive incorrect prices
Purpose:
Maps the customer to the correct catalog location
Ensures correct pricing visibility in Shopify
B2B Price Sync Item Custom Field
This field is used to select a custom field in XoroERP that stores the Shopify Variant ID for items.
What this means
Each item in XoroERP must be linked to its corresponding Shopify product variant
Pricing is applied at the variant level in Shopify

Select the custom field containing:
Shopify Variant ID
How it works
The system reads the Variant ID from the selected custom field
It uses this ID to:
Match the item in Shopify
Apply the correct catalog pricing
Purpose:
Links ERP items to Shopify catalog items
Ensures accurate pricing application
Business Impact
Ensures pricing is correctly reflected in Shopify catalogs
Enables granular pricing control across locations
3. Sync B2B Locations in Catalog
Type: Checkbox
When enabled:
Location-specific pricing is synced to Shopify
Pricing rules are applied at the company location level
Key Behavior
Catalog pricing is mapped based on:
Customer location
Item variant
Important Notes
Company structure must be correctly created in Shopify before syncing
Currency must match between:
Customer
Account
Custom field mapping is critical for pricing sync accuracy
Missing mappings may result in:
Pricing sync failures
Order creation issues
Summary
Enable B2B Sync
Activates all B2B workflows
Enable B2B Company Sync
Syncs company & location structure
B2B Customer Sync Type
Defines customer hierarchy behavior
Sync B2B Prices
Syncs pricing rules to Shopify
Sync B2B Locations in Catalog
Enables location-based pricing
Enable Customer Sync
A new Enable Customer Sync functionality has been introduced in the B2B Sync for Shopify integration in Xoro. This functionality allows customer information to be synced from Xoro to Shopify.
How It Works
B2B Sync for Shopify – Customer Sync and Pricing Settings
1. Enable B2B Customer Sync
A new Enable B2B Customer Sync checkbox has been added under the Enable B2B Sync settings in Xoro. This functionality allows customer information from XoroERP to be synchronized with Shopify, enabling companies maintained in Xoro to be created and managed as B2B companies in Shopify.
When this setting is enabled, Xoro synchronizes company information, associated contacts, addresses, payment terms, supported tax exemptions, and customer metafields to Shopify.
How It Works
When a company is created in Xoro, the system synchronizes the company with Shopify and creates the corresponding company, location, and contact records.
The synchronization follows this workflow:
A company is created in Xoro with the required company and customer details.
Xoro synchronizes the company with Shopify.
Shopify creates the corresponding company record, along with its location and contact records.
The company's first name and last name in Xoro are used to create the associated customer contact in Shopify.
The supported addresses, payment terms, tax exemptions, and customer metafields are synchronized according to the configured settings and supported fields.
Information Synced from Xoro to Shopify
Information
Synchronization Behaviour
Company
The company created in Xoro is synchronized as a B2B company in Shopify.
Customer Type
The synchronized customer type is always Company.
First Name and Last Name
The first name and last name entered for the company in Xoro are used to create the associated customer contact in Shopify.
Billing Address
The billing address in Xoro is synchronized as the corresponding location address in Shopify.
Shipping Address
The shipping address in Xoro is synchronized as the corresponding location address in Shopify.
Payment Terms
Payment terms from Xoro are synchronized to the corresponding customer and location in Shopify, where supported by the integration.
Customer Tax Exemption
The supported tax exemption flag is synchronized to the Shopify location. Currently, Customer BC PST Exempt is the supported tax exemption.
Customer Metafields
Supported customer properties from Xoro can be synchronized to Shopify as customer metafields. For example, a sales representative property can be sent as a metafield.
Important: This functionality synchronizes companies from Xoro to Shopify. The customer type in Shopify is always set to Company. It does not imply that every customer-related field or tax exemption is supported.
Example
Suppose the following company is created in Xoro:
Company Name: ABC Supplies
First Name: John
Last Name: Smith
Billing Address: 100 Market Street
Shipping Address: 25 Warehouse Road
When the company is synchronized, Shopify creates the corresponding B2B company and its associated location and contact records. John Smith is used for the associated customer contact, and the supported billing and shipping address information is synchronized to the relevant location address fields.
2. B2B Customer Sync Settings
The following settings control how customer records are synchronized and identified between Xoro and Shopify.
2.1. Enable B2B Customer Sync
Purpose: Enables the synchronization of company-type customer information from Xoro to Shopify.
How It Works:
When enabled, Xoro can synchronize companies to Shopify as B2B companies.
Shopify creates the corresponding company, location, and contact records.
Supported customer details, such as addresses, payment terms, tax exemptions, and metafields, are synchronized as described above.
The customer type in Shopify remains Company.
When to Use: Enable this setting when companies maintained in Xoro need to be available as B2B customers in Shopify.
2.2. B2B Customer Sync Customer Custom Field
Purpose: Specifies the Xoro customer custom field in which the corresponding Shopify company ID is stored.
How It Works:
A company in Xoro is synchronized with Shopify.
Shopify creates the corresponding company record and assigns it a unique company ID.
Xoro stores the Shopify company ID in the selected customer custom field.
Example:
If the selected custom field is Shopify Company ID, the Shopify company ID generated for ABC Supplies is stored in that field on the corresponding Xoro customer record.
When to Use: Configure this setting when you need to retain the Shopify company ID in Xoro for record identification and integration mapping.
2.3. B2B Customer Sync Type
Purpose: Determines which identifier Xoro uses to identify a customer when a new order is created in Shopify and synchronized to Xoro.
The available options are:
Sync B2B Company as Customer: Uses the Shopify company ID to identify the corresponding customer in Xoro.
Sync B2B Customer as Customer: Uses the Shopify customer ID to identify the corresponding customer in Xoro.
Sync B2B Location as Customer: Uses the Shopify company location ID to identify the corresponding customer in Xoro.
How It Works:
When an order is created in Shopify, the integration uses the selected identification method to determine which Xoro customer record should be associated with the order.
Example:
Suppose ABC Supplies has one company in Shopify with two locations: a Main Office and a Warehouse.
If Sync B2B Company as Customer is selected, the company identifier is used to identify the Xoro customer.
If Sync B2B Customer as Customer is selected, the Shopify customer identifier is used.
If Sync B2B Location as Customer is selected, the location identifier is used to identify the Xoro customer.
When to Use: Select the option that matches your customer structure in Xoro. Use company-level identification when the company represents the customer, or location-level identification when separate locations need to map to different Xoro customer records.
3. Enhancements to Sync B2B Prices
The Sync B2B Prices settings control how Xoro pricing information is sent to Shopify B2B catalogs.
In this integration, Xoro price rules are used to determine the prices synchronized with Shopify catalogs. New checkboxes have been introduced to control the transmission of price adjustments and compare-at prices.
3.1. Do Not Send Price Adjustment
Purpose: Prevents price adjustments from being sent with Shopify B2B catalog price lists.
How It Works:
When enabled, Xoro does not send price adjustments as part of the Shopify B2B catalog price lists.
When disabled, price adjustments can be sent according to the configured pricing rules.
When to Use: Enable this option when you do not want Shopify B2B catalogs to receive price adjustment information from Xoro.
3.2. Do Not Send Compare At Price in Catalog
Purpose: Prevents compare-at prices from being sent with Shopify B2B catalog fixed prices.
How It Works:
When enabled, compare-at prices are excluded from the fixed prices sent to Shopify B2B catalogs.
When disabled, compare-at prices can be sent according to the applicable configuration and pricing logic.
When to Use: Enable this option when Shopify B2B catalogs should receive the applicable selling prices without compare-at prices.
4. Advanced Settings
The Advanced Settings provide additional control over catalog synchronization, calculated price precision, and compare-at pricing.
4.1. Fetch Price Catalog on a Recurring Basis
Purpose: Automatically fetches price catalogs at recurring intervals.
How It Works:
The system periodically fetches the available price catalogs based on the configured time interval. This helps keep the catalog information synchronized without requiring every fetch to be initiated manually.
When to Use: Use this setting when price catalogs need to be refreshed regularly as part of the B2B pricing synchronization process.
4.2. Round Up Calculated Price
Purpose: Rounds the calculated B2B catalog price upward to two decimal places before sending it to Shopify.
How It Works:
When enabled, the calculated price is rounded upward to two decimal places before it is synchronized with Shopify.
Example:
If the calculated price is 125.341, the synchronized price is rounded upward to 125.35.
When to Use: Enable this setting when B2B catalog prices must be rounded upward to two decimal places.
4.3. Send Compare At Price
Purpose: Sends the original Xoro price, before markup or markdown calculations, to Shopify as the compare-at price.
How It Works:
When enabled, the integration sends the original Xoro price as the compare-at price while the calculated price is used as the applicable catalog price, subject to the other pricing settings.
Example:
Suppose the original Xoro price is 100.00 and a markup results in a calculated B2B price of 110.00.
Calculated Catalog Price: 110.00
Compare-at Price: 100.00
When this setting is enabled, the original price of 100.00 is sent to Shopify as the compare-at price.
When to Use: Enable this setting when the original Xoro price must be available in Shopify as the compare-at price for B2B catalog pricing.
5. Summary
The B2B Customer Sync and pricing enhancements provide greater control over how Xoro customer information and B2B prices are synchronized with Shopify.
Enable B2B Customer Sync allows companies in Xoro to be created as B2B companies in Shopify.
B2B Customer Sync Customer Custom Field stores the Shopify company ID in a selected Xoro customer custom field.
B2B Customer Sync Type determines whether incoming Shopify orders identify the Xoro customer using the company, customer, or location identifier.
Sync B2B Prices settings control whether price adjustments and compare-at prices are sent to Shopify.
Advanced Settings control recurring catalog fetching, upward price rounding, and sending the original Xoro price as the compare-at price.
Together, these settings help align customer identification, company and location information, and B2B catalog pricing between XoroERP and Shopify.
How B2B Sync works
Turn on Enable B2B Sync in .
When enabled:
orders are treated as B2B orders
customers are matched by Shopify Customer ID
phone and email are not used for matching
a Customer Identifier Code is required in the mapped custom field
Company and location sync
If you enable Enable B2B Company Sync:
Shopify Company syncs to Xoro as a Parent Customer
Shopify Locations sync as Child Customers if you choose Sync B2B Customer as Customer
or each location can be treated as an independent customer if you choose Sync B2B Location as Customer
Orders are created against the customer/location, not the company itself.
Pricing sync
If you enable Sync B2B Prices:
Xoro can push pricing to Shopify at the company or location level
Default Price Sync Mapping uses automatic location mapping
Price Sync Customer Field Map uses custom fields for:
customer location ID
Shopify variant ID
Customer sync
If you enable Enable Customer Sync:
a Xoro Company syncs to Shopify as a Company customer
the company contact becomes the first synced contact
If you want, I can map this into a simple “what syncs first, what syncs next” flow.
Key Takeaway
B2B Sync works effectively only when:
Company structure is properly defined in Shopify
Customer and location mapping is accurate
Pricing rules are aligned with the selected configuration
Last updated
Was this helpful?