Configure Your Shopify Sales Channel
Tailor your experience with your new sales channel.
At this point in time, if your host name and credentials are valid, you should be able to conduct a small communication test:
- Choose the looking glass within Business Central to find CSM Sales Channels
- Open the sales channel record for which you want to test
- From the API ribbon, choose the Test Channel Communication
CSM will notify you if the test communication was successful or failed. Assuming test was successful you can continue your sales channel configuration. If it failed, please search the knowledgebase for help or contact support.
The General FastTab
Field | Description | Example Value |
Code |
This is unique code that identifies the Sales Channel. It can be any value you wish, but we recommend naming it something meaningful that describes the Sales Channel. |
SHOPIFYB2C |
Description | This is a text description of the Sales Channel. | Shopify Retail Consumer site |
Type | This will be Generic for Shopify | Generic |
Enable B2B Feature | Not currently available for Shopify |
Order Management FastTab
Inventory Location | The Business Central inventory location that supplies this store. Business Central Sales Orders Created for this Sales Channel will specify this inventory location. Listing Management will also use this value in its inventory availability calculation. | MAIN |
SO No. Series | The No. Series that should be used for Sales Order Number when build Business Central Sales Orders for this Sales Channel. | CSM-ORD-SHP |
Channel Dimension | If populated, this Business Central Financial Dimension will be set on all Business Central Sales Orders created from this Sales Channel. Primary Dimension 1. | SALES |
Channel Dimension 2 |
If populated, this Business Central Financial Dimension will be set on all Business Central Sales Orders created from this Sales Channel. Primary Dimension 2. |
|
SO build Codeunit | The Object number of the Codeunit that should create Business Central Sales Orders. By default, this should be 70338209 which is the supplied CSM functionality to build Sales Orders. You can however customize the functionality by creating a new Codeunit and specifying its number here. It is recommended that you keep the default value. | 70338209 |
External Document No. Format |
Enter the syntax you wish to use for assigning external document numbers to orders (such as sales and sales return orders) that are generated from this channel’s CSM orders. You can assign one or more fields from the CSM Order Header table as the source value(s) for external document numbers. Note that while fields such as text and code type fields will be acceptable, others such as options/enumerations, dates, and Booleans, will not. Each field must be entered according to its field (not caption) name and enclosed in < > brackets. For example, if you wanted to use the value from the CSM order’s Order ID field as the external document number on related sales orders, you would enter <Order ID> in this field. Any characters you enter in this field that are not enclosed in < > brackets will be treated as static values. This can be useful if you want to use multiple fields as the basis of an external document number, as you can include something like a hyphen as a delimiter. For example, an entry of <Sales Channel Code>-<Order ID> would indicate that the external document number will be comprised of a CSM order’s sales channel code and order ID, separated by a hyphen. In a scenario where the values that comprise an external document number exceed the character limitations of the field on the sales document, CSM will truncate the value based on the field’s maximum character length. If you leave this field blank, CSM will not assign any external document numbers to orders created for the channel. Note: you may need to choose the Show More action on the Order Management FastTab in order to see this field. |
<Sales Channel Code>- <Order ID> |
Retrieve Order Risk |
Enable this field to instruct CSM to retrieve risk information for Shopify orders. When an order is placed in Shopify, a fraud analysis is performed and a risk level is assigned. You can use an order’s retrieved risk information in conjunction with CSM’s sales operation rules to automatically prevent the creation or processing of sales orders that exceed a particular risk level. Note: when retrieving order risk information from Shopify, CSM must make a separate API call for each other. Depending on order volume, this can result in a significant number of API calls. If you are not interested in retrieving order risk information, it is recommended that you leave this setting disabled. |
|
Start Processing Date |
It is possible to configure the channel order retrieval automation routine to automatically create an associated Business Central sales order as part of the retrieval activity. If you want to set a cut-off date and time as to when this sales order creation is performed against channel orders, you may do so in this field. Retrieved channel orders that fall before this date will be assigned a status of complete and become ineligible for further activity. Channel orders that fall on or after the channel’s start processing date and time will remain open and corresponding Business Central sales orders will be automatically created as part of the order retrieval process. Leaving this field blank will instruct CSM to create sales orders for all retrieved channel orders. |
|
Payment Behavior | Indicates how this sales channel processes payments. Note: Shopify only supports Channel at this time | Channel |
Payment Method Code |
The Code of the Business Central Payment Method which should be used. If Payment Behavior = Payments, this will be the default value. Payment Behavior = Channel, this will be the Payment method used on all orders. This can be blank for CSM for Shopify. If this is a Shopify POS Sales Channel the Payment method must have ‘Bal.Account No’ = blank. |
|
Payment Reference Number | This field can be used to specify the metadata key that identifies an order’s external payment number in an API message’s response. This can be used in scenarios where an eCommerce order’s payment information is retrieved via an integration other than CSM and there is a need to associate the CSM order to the proper payment record in Business Central. If you are not using an integration tool such as Channel Payments Manager to retrieve payment platform information into Business Central, this field can be ignored. | |
Send Shipment Information |
Indicates whether CSM should send shipment information to the Channel. For POS channel, must be set up as ‘FALSE’ |
True
|
Send Shipment When |
If CSM is sending Shipment information, this field tells CSM when to send it. Immediate: When the Shipment is posted Scheduled: Shipment information will be queued and sent by the CSM automation if setup Manual: Shipment information is sent by a user who presses the Send Shipment Information action button on the Channel Order card. |
Immediate |
Exclude G/L Account Line on Shipment |
Enable this field to instruct CSM to exclude any sales lines for G/L accounts when sending an order’s shipment information from Business Central to Shopify. This results in CSM sending less data to Shopify, which can improve performance. If you are working with CSM listings, this field will also serve as a default setting to indicate whether any channel listings for G/L accounts are set to be skipped when sending shipments. |
True |
Exclude Resource Line on Shipment |
Enable this field to instruct CSM to exclude any sales lines for resources when sending an order’s shipment information from Business Central to Shopify. This results in CSM sending less data to Shopify, which can improve performance. If you are working with CSM listings, this field will also serve as a default setting to indicate whether any channel listings for resources are set to be skipped when sending shipments. |
True |
Send Invoice Information |
Indicates whether CSM should send invoice information to the Channel. For POS channel, must be set up as ‘FALSE’ |
Yes |
Send Invoice When |
If CSM is sending Invoice information, this field tells CSM when to send it. Immediate: When the invoice is posted Scheduled: Invoice information will be queued and sent by the CSM automation if setup Manual: Invoice information is sent by a user who presses the Send Invoice Information action button on the Channel Order card. |
Immediate |
Send Invoice Capture |
If CSM is sending Invoice information, this field tells CSM whether a capture transaction should be sent immediately following the Invoice. For Shopify, this is dependent by payment method. If your payment method Behavior is set to payments (recommended), CSM uses the Send Invoice Capture value set for each Payment Method. For POS channel, must be set up as ‘FALSE’ |
True |
Send Return Order Information |
Not Currently supported by Shopify |
|
Send Return Order When |
Not Currently supported by Shopify |
|
Send Return Rcpt Information |
Not Currently supported by Shopify |
|
Send Return Rcpt Information When |
Not Currently supported by Shopify |
|
Send Refund Cr. Memo |
Enable this field to indicate that you want to send refund credit memo information from Business Central to Shopify. |
Yes |
Send Refund Cr. Memo When |
If you have enabled the functionality to send credit memo information to Shopify, select the method by which it will be sent: Immediate: will send automatically when the return order/credit memo is posted. Scheduled: will be sent when the SENDCREDITMEMO automation runs. Manual: will be sent when the user checks the External Requires Update field on the CSM order document line and uses the Send to Channel action on the CSM Order page. |
|
Deny Unbalanced Auto Release |
It is possible to configure the channel order retrieval automation routine to automatically create and release an associated Business Central sales order as part of the retrieval activity. If this option is enabled, it will override the automation routine’s setup if the channel order and sales order have different order total values. CSM will still generate the sales order, but it will not be released. Note: This field has been superseded by CSM’s sales operation rules feature and will be removed as part of a later release. If you want to enforce this process, it is recommended you use the sales operation rules feature, instead. |
|
Deny Unbalance Auto Release |
It is possible to configure the channel order retrieval automation routine to automatically create and post an associated Business Central sales order as part of the retrieval activity. If this option is enabled, it will override the automation routine’s setup if the channel order and sales order have different order total values. CSM will still generate the sales order, but it will not be posted. Note: This field has been superseded by CSM’s sales operation rules feature and will be removed as part of a later release. If you want to enforce this process, it is recommended you use the sales operation rules feature, instead. |
|
Currency Behavior |
Select the method by which you want CSM to assign currencies to sales orders. Customer: CSM will assign the currency that has been assigned to the related Business Central customer record to sales orders created for that customer.Order: CSM will assign the currency from the retrieved channel order to the Business Central sales order. In addition to enabling this setting, you must also map your Shopify and Business Central currencies to one another. |
|
Address 2 Behavior |
Select the method by which address 2 values on Business Central sales orders and customers that are created by CSM are populated. By default, Business Central allows for the definition of address and address 2 values for sales orders and customers. However, the CSM orders from which these records are created can retrieve address, address 2, and address 3 values. Due to this discrepancy, it is necessary to indicate how CSM should populate Business Central address 2 fields with retrieved channel data. Combine CSM Address 2 and 3: CSM will combine a CSM order’s address 2 and address 3 values, then assign this combined value as the address 2 for Business Central sales orders and customers.Use CSM Order Address 2: CSM will assign a CSM order’s address 2 value as the address 2 for Business Central sales orders and customers. Use CSM Order Address 3: CSM will assign a CSM order’s address 3 value as the address 2 for Business Central sales orders and customers. |
|
Order Total Discount Allocation |
Select the method by which order discount amounts will be allocated to channel orders. By default, Shopify will provide discount information at the line level, meaning that a separate discount amount is calculated for each item included in an order. Using the order total discount allocation functionality, it is possible to instruct CSM as to how these retrieved discounts should be allocated to channel orders, which will in turn affect the way in which discounts are applied to Business Central sales orders that are created from channel orders. Not Applicable: channel discount information will be ignored by CSMOrder Level: channel discount information will be applied at the order level. Retrieved line discount amounts will be rolled up into a single document level invoice Line Level: channel discount information will be applied at the order line level. Retrieved line discount amounts will be assigned to the corresponding channel order lines. |
|
Archive After Days |
Enter the number of days to retain completed and cancelled CSM Channel Orders before they are moved to the archive. (Example: 2D would keep CSM Channel Orders in the current list for 2 days after being closed or cancelled.) |
|
Auto Channel Order Archive |
Use this field to enable and disable automatic archiving for Channel Orders for this Channel. |
|
Gift Wrap Behavior |
This setting tells CSM how it should handle Gift Wrap Charges on orders received from the Channel. If you select None, Gift Wrap Charges will be ignored, use this setting if your Shopify implementation does not include Gift wrap services. If you select Line, then when CSM creates the Business Central Sales Order for a Shopify Order, a Sales Order Line will be added to account for Gift Wrap charge. |
None |
Gift Wrap Line Type |
If you choose Line as the Gift Wrap Behavior from above, this field specifies the Sales Order Line Type which should be used for the Gift Wrap Charge (Revenue from the Customer). The values can be G/L Account, Item, Resource, or Charge (Item). |
|
Gift Wrap Order Line No. |
If you choose Line as the Gift Wrap Behavior, this field specifies the Sales Order Line No. to be used (a value based on the Gift Wrap Line Type chosen). |
|
Other Charges Behavior |
This setting tells CSM how it should handle Other Charges on orders received from the Channel. If you select None, Other Charges will be ignored. If you select Line, a Sales Order Line will be added to account for Other Charges. |
Line |
Other Charges Line Type |
If you choose Line as the Other Charges Behavior, this field specifies the Sales Order Line Type which should be used for the Other Charges (Revenue from the Customer). The values can be G/L Account, Item, Resource, or Charge (Item). |
G/L Account |
Other Charges Order Line No. |
If you choose Line as the Other Charges Behavior, this field specifies the Sales Order Line No. to be used (a value based on the Other Charges Line Type chosen). |
45120 |
Sales Tax Behavior |
Select the manner in which sales tax will be entered on Business Central sales orders that are created from retrieved Shopify orders. Options are: None: CSM will build sales orders according to Business Central’s standard sales tax behavior. The Tax Liable field on sales lines will be set to True, and tax will be calculated on those lines based on Business Central setup. Any sales tax information retrieved from Shopify will be ignored as part of this process. Line: CSM will enter a separate line on sales orders for each item’s sales tax that was collected and retrieved from Shopify. With this configuration, the Tax Liable field on sales lines will be set to False so that Business Central does not attempt to calculate tax values. In addition to entering separate lines for each item’s retrieved sales tax amount, CSM will also add a separate line for any tax that was collected on order-level charges such as shipping or gift wrap. Consolidated: CSM will enter a single line on sales orders for the total tax amount that was collected and retrieved from Shopify. With this configuration, the Tax Liable field on sales lines will be set to False so that Business Central does not attempt to calculate tax values. The consolidated sales tax line includes both the tax for each item as well as any tax that was collected on order-level charges such as shipping or gift wrap. |
Line |
Sales Tax Line Type |
If you selected either the Line or Consolidated option in the Sales Tax Behavior field, choose the type of sales line you want to enter on sales orders for retrieved sales tax amounts. Standard Business Central sales line options are available: G/L accounts, items, resources, fixed assets, item charges, or allocation accounts. |
G/L Account |
Sales Tax Order Line No. |
Assign the Business Central record that will be added to sales lines for retrieved sales tax. The record you can assign is dependent on the selected sales tax line type. For example, if the sale channel’s sales tax line type was G/L account, you would assign a G/L account in this field. |
|
Use Item Sales UOM |
When selected and Item record is used to create a Sales Line, the Items Sales Unit of Measure will be utilized instead of the Base Unit of Measure. (This does not apply when Listings, Cross-References or Item Identifiers are utilized to create the Sales Line.) |
|
Enable Refund Processing |
If turned on, additional setup options become available |
True |
Start Processing Date Time |
Only return document created after this date and time will be converted into sales credit memo. |
|
Cr. Memo build Codeunit |
(APPLICABLE TO POS SALES CHANNEL) The Codeunit ID to use when building a Sales Cr. Memo for a CSM Order from this channel. |
70338215 |
Credit Memo No. Series |
(APPLICABLE TO POS SALES CHANNEL) The number series to use when creating new Business Central Sales Cr. Memo from this Sales Channels Channel Orders. |
CSM-CR |
Refund Discrepancy Behavior |
Indicate how you want the sales channel to address scenarios where a retrieved refund amount differs the amount that is entered on the credit memo that is created in Business Central. None: any refund discrepancies will be ignored byLine: an additional line in the amount of the discrepancy will be added to the sales credit memo. |
Line |
Refund Discrepancy Line Type |
If you line for refund discrepancies on sales credit memos, choose the type of account to which these discrepancies will be recorded. You can indicate that refund discrepancies should be posted to a G/L account, item, resource, fixed asset, or item charge. |
G/L Account |
Refund Discrepancy Line No. |
Assign the account to which refund discrepancies will be recorded. The record type is dependent on the selection in the Refund Discrepancy Line Type field. |
|
Return Location |
Assign the Business Central location to which you want to receive items that are being returned by customers that you want to re-stock. This location is assigned to credit memos that are created by CSM when refunds that are initiated through Shopify are retrieved into Business Central. |
MAIN |
Returnless Location |
Assign the Business Central location to which you want to receive items that are being returned by customers that you want to credit but do not want to re-stock (typically this is a virtual location). This location is assigned to credit memos that are created by CSM when refunds that are initiated through Shopify are retrieved into Business Central. |
RETURNLESS |
Gift Card FastTab
Field | Description | Example Value |
Default Gift Card Account | Select the default general ledger account to which newly- issued gift card amounts will be posted. When a new gift card is being issued from within Business Central, the application will suggest this account by default, although it can be manually changed, if necessary. | Cash Account |
Default Gift Card Balancing Account | Select the default general ledger account to which the balancing entry for newly issued gift card amounts will be posted. When a new gift card is being issued from within Business Central, the application will suggest this balancing account by default, although it can be manually changed, if necessary. | Liability Account |
Customers FastTab
Field | Description | Example Value |
Customer Template | When Creating customers, CSM will use this customer as a template for the customer’s creation. When Sales Channel is chosen as a behavior or New Customers or Guest Customers, CSM will create the Sales Order with this customer and adjust the ship to address to the actual customers information. | CSMTEMPLATE |
New Customer Behavior |
Indicates how CSM will treat customers for what CSM determines is a new customer. A new customer from Shopify could be any customer creating a new account when checking out, or an existing customer that has not previously been mapped to a Business Central Customer. Auto Create: CSM will automatically create a new Business Central customer and associated CSM Channel Customer based on the Customer Template defined above, this will occur when CSM builds the Business Central Sales Order from the Channel Order. Sales Channel: CSM will not create a new customer, but will build the sales order to the Customer Template customer defined above and change the billing and ship-to addresses directly on the Sales Order appropriately. Manual: CSM will not automatically create a customer, and the Sales Order build process will fail unless a Channel Customer is manually setup and linked to a valid Business Central customer. |
Auto Create |
Guest Customer Behavior |
Indicates how CSM will treat customers for what CSM determines is a guest customer. For Shopify if the customer checks out as a guest CSM considers them a guest customer. Auto Create: CSM will automatically create a new Business Central customer and associated CSM Channel Customer based on the Customer Template defined above, this will occur when CSM builds the Business Central Sales Order from the Channel Order. Even though they checked out as a guest, CSM can still identify the customer if they use the same email address for future orders the customer may place. Sales Channel: CSM will not create a new customer but will build the sales order to the Customer Template customer defined above and change the billing and ship-to addresses directly on the Sales Order appropriately. Manual: CSM will not automatically create a customer, and the Sales Order build process will fail unless a Channel Customer is manually setup and linked to a valid Business Central customer. |
Auto Create |
Auto Create Contact | Indicates whether CSM will also automatically create a Business Central contact for any new customers CSM creates. | Yes |
Default Customer Group ID. | Not currently supported for Shopify | |
New Customer No. Series | Indicates which No. Series should be used when CSM automatically creates a new Business Central customer. | CSM-CUST |
Listing Management FastTab
Only used if you are subscribed to the Listing Management module. Please refer to Listing Management Setup.
API Data FastTab
API Logging Level | Fence used to determine what should be logged | |
Import Object Name |
Fence used to determine what should be logged | |
POS |
Enable POS functionality |
|
POS Location ID |
The POS Location ID of the Shopify Sales Channel. |
|
Shop Name | The shop name that correlates with this sales channel. | myShopifystore |
CSM API Set Code |
Identifies the API Set code that should be used for API communication with Shopify. This should be the value that you used to setup the Shopify API Set in the CSM API Sets section earlier in this document. | SHOPIFY |
API User ID |
This is the API Key from the private app setup on Shopify that authorizes CSM access to the API’s. |
|
API User Password | For API calls where the URL is store specific, this is the User ID portion of the credentials for the API Call. |