Compatibility

The extension is compatible with Shopware version above 6.5.x.x


Installing the Shopware extension


You can install the extension in 2 ways

  1. through Shopware official store and 

  2. via zip file for the extension.

Follow the steps below for the preferred installation. 

  1. Extensions --> Store --> search for the extension in the Shopware 6 store via search bar --> Add extension --> My extensions --> Install app --> Activate the extension --> Configure the extension. 

  2. Extensions --> My extensions --> Upload extension via a zip file from your computer --> Install app --> Activate the extension --> Configure the extension.  

3.Uninstall - The extension can be uninstalled via Extensions --> My extensions --> Ecomwise Customer Portal --> ... --> Uninstall


Configuration Shopware

  1. Publish web services - The integration is using the default REST API's of Microsoft 365 Business Central (API (v2.0) for Dynamics 365 Business Central - Business Central ) and Odata webservices which need to be published in Business Central. Below is the list of webservices with the service names that need to be set. 

  2. Before making API and webservice calls 2 configurations need to be made on Dynamics 365 Business Central

    1. Register an Azure AD application for authentification to Business Central

    2. Set up the Azure AD application in Business Central
      More information on this and the exact steps to follow can be found on the Microsoft learning center https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/administration/automation-apis-using-s2s-authentication.

      The configuration of the Shopware extension can be found on the following location: Settings --> Extensions --> BC Integration --> 

      Sales Channel  - to be selected for the sales channel for which this configuration will be enabled/applied. 

      Object type
      Object ID
      Object name
      Service name
      All tenantsPublished
      Page31Items
      items
      01
      Page30Item Card
      Articles
      01
      Page42Sales Order
      Sales_Order
      01
      Page
      313General Product Posting Groups
      MC_GeneralProductPostingGroups
      01
      Page300Customer Shipping Adress
      MC_CustomerShippingAdress
      01
      Page21Customer Card
      MC_CustomerCard
      01
      Page
      7005Price List Lines
      MC_PriceListLines
      01
      Page7015Sales Price Lists
      MC_SalesPriceLists
      01
      Page5050Contact Card
      MC_ContactCard
      01
      Page27Vendors
      VendorList
      01  
      Page
      130Posted Sales Shipment
      Salesshipments
      01
      Page143Posted Sales Invoices
      PostedSalesInvoices
      01

General settings - activate or disable the extension

 

API settings

For the connection the below API details need to be added.

  1. API URL : API URL from Business Central is to be entered here (ex. https://api.businesscentral.dynamics.com/v2.0/{{tenant_id}}/{{env_name}}/api/v2.0/)

  2. Token URL:URL for the Oauth 2 token of Business Central (ex. https://login.microsoftonline.com/{{tenant_id}}/oauth2/v2.0/token?)

  3. Client ID - Client ID for the authentication.This is obtained from the setup of the Azure AD application.

  4. Client secret - Client secret for the authentication. This is obtained from the setup of the Azure AD application.

  5. Company ID - identification for the Business Central company is to be entered here. 

  6. Company name - name of the company under which Business Central is created is to be entered here
    Last in the API settings box is the "Test" button via which the validity of the entered credentials can be tested.

If the credentials are correct it will be green-lighted, if the credentials are wrong then you will have a warning message. 


Payment mapping

Payment mapping can be configured in the following area, available settings as follows: 

  • Payment condition

  • Invoice

  • Paid in advance

  • Cash on delivery

The available payment methods settings can be mapped with one of the payment statuses. 

Mappings can be downloaded via button "Get payment data". 

The configuration can be saved via button “Save Payment Mapping”. 

Shipment mapping

Shipment mapping can be configured in the following area, available settings as follows: 

  • Standard 

  • Express 

The available shipment methods settings can be mapped with on of the shipment statuses. The configuration can be saved via button “Save Shipment Mapping”. Mappings can be downloaded via button“Get Shipment Data” .  

Product import settings

Product import settings can be configured in the following area. Several settings are available such as:

Type of update:

  • All products - all products available will be imported via activating this setting.

  • Selection of products - SKUs can be entered in the input field “SKU of selected products (comma separated) “, for the entered SKUs imported will be executed.

  • Only changed products - imported will be all the products that have been modified since last import has been run. 

All of the imported products can be imported in one of the existing tax classes via drop-down options in “Default tax class for new products” . 


  Inventory import settings

Inventory import can be configured via a toggle button. If active than full inventory import will be performed. 



Order export settings

Order export settings can be configured in the following area. The following input fields need to be fill in:

  • BC customer ID for guest customers: dedicated ID for a guest customer

  • Export Shopware orders starting from order number: to be added the number of the order for starting the export

  • G/L Account number: order line 

  • Export Shopware orders with status - you can select multiple statuses from the offered list (Open, In progress etc.) 

  • Resync failed orders toggle yes/no for this setting: if field is enabled than failed sync orders will be re-sync 

  • Export customer before order export toggle yes/no for this setting: if field is enabled first customers will be exported than orders will follow with export

  • Export order currency toggle yes/no for this setting: if field is enabled order currency is being sent in BC



Customer export settings

Customer export settings can be configured in the following area. 

Type of update:

  • New and changed customers: with activating this setting customers that are newly created or/and modified will be exported to Business Central

  • Selection of customers - IDs can be entered in the input field “ID`s of selected customers (comma separated)“, selected SKUs will be exported. 

  • Only new customers: with activating this setting customers that are newly created will be exported to Business Central 

All of the exported customers can be exported with one of the existing payment terms code via drop-down options in “Payment terms code” .  Payment term codes can be downloaded via button "Get payment term codes"

Customer import settings

Customer import settings can be configured in the following area. Several settings are available such as:

Type of update:

  • All customers: with activating this setting customers that are newly created will be imported 

  • Selection of customers - with activating this setting only selected customers via entering their ID's in the field will be imported

  • Only changed customers -IDs can be entered in the input field “ID`s of selected customers (comma separated)“  and those will be imported

Customer will be imported in one of the available customer groups:

  • Standard customer group

  • Other if available

Customer can have the following salutations available for import:

  • Mr.

  • Mrs.

  • Not specified


Order status settings

Order status settings can be configured in the following area. Several settings are available such as:

  • Send invoice email - toggle option enabled/disabled

  • Invoice mail template - can be chosen from the options available

  • Send delivery note email - toggle option enabled/disabled

  • Delivery note mail template - can be chosen from the options available


Product import scheduler

Product import scheduler can be configured in the following area. Several settings are available such as:

Type of update:

  • Manual - the action of product import is triggered manually via “New import products action” button when ever is needed to be triggered

  • Time of day - the action is triggered according to the time schedule entered in the “Time(s) of action” field, the entered time slots in this field can be multiple and they need to be comma separated

  • Interval - the action will be triggered every X minutes. The minutes for triggering  the action are entered in the “Every X minutes” field as a number



Inventory import scheduler

Inventory import scheduler can be configured in the following area. Several settings are available such as:

Type of update:

  • Manual - the action of inventory import is triggered manually via “New import inventory action” button when ever is needed to be triggered

  • Time of day - the action is triggered according to the time schedule entered in the “Time(s) of action” field, the entered time slots in this field can be multiple and they need to be comma separated

  • Interval - the action will be triggered every X minutes. The minutes for triggering  the action are entered in the “Every X minutes” field as a number



Order export scheduler

Order export scheduler can be configured in the following area. Several settings are available such as:

Type of update:

  • Manual - the action of order export is triggered manually via “New export order action” button when ever is needed to be triggered

  • Time of day - the action is triggered according to the time schedule entered in the “Time(s) of action” field, the entered time slots in this field can be multiple and they need to be comma separated

  • Interval - the action will be triggered every X minutes. The minutes for triggering  the action are entered in the “Every X minutes” field as a number



Order status scheduler

Order export scheduler can be configured in the following area. Several settings are available such as:

Type of update:

  • Manual - the action of order status is triggered manually via “New order status action” button when ever is needed to be triggered

  • Time of day - the action is triggered according to the time schedule entered in the “Time(s) of action” field, the entered time slots in this field can be multiple and they need to be comma separated

  • Interval - the action will be triggered every X minutes. The minutes for triggering  the action are entered in the “Every X minutes” field as a number



Customer import scheduler

Customer import scheduler can be configured in the following area. Several settings are available such as:

Type of update:

  • Manual - the action of customer import is triggered manually via “New customer import action” button when ever is needed to be triggered

  • Time of day - the action is triggered according to the time schedule entered in the “Time(s) of action” field, the entered time slots in this field can be multiple and they need to be comma separated

  • Interval - the action will be triggered every X minutes. The minutes for triggering  the action are entered in the “Every X minutes” field as a number



Customer export scheduler

Customer export scheduler can be configured in the following area. Several settings are available such as:

Type of update:

  • Manual - the action of customer export is triggered manually via “New customer export action” button when ever is needed to be triggered

  • Time of day - the action is triggered according to the time schedule entered in the “Time(s) of action” field, the entered time slots in this field can be multiple and they need to be comma separated

  • Interval - the action will be triggered every X minutes. The minutes for triggering  the action are entered in the “Every X minutes” field as a number



Sales Prices import scheduler

Sales prices import scheduler can be configured in the following area. Several settings are available such as:

Type of update:

  • Manual - the action of customer export is triggered manually via “New sales prices import action” button when ever is needed to be triggered

  • Time of day - the action is triggered according to the time schedule entered in the “Time(s) of action” field, the entered time slots in this field can be multiple and they need to be comma separated

  • Interval - the action will be triggered every X minutes. The minutes for triggering  the action are entered in the “Every X minutes” field as a number



Email Alerts

Email with alerts can be send for multiple import and export actions. Actions can be enabled/disabled via toggle button. Email will be sent if some of the processes weren’t finished. 

  • Send Email Alert on Product Import

  • Send Email Alert on Inventory Import

  • Send Email Alert on Order Export

  • Send Email Alert on Customer Export

  • Send Email Alert on Customer Import

  • Send Email Alert on Sales Prices Import

  • Send Email Alert on Order Status Sync 

Input field “Send Email Alerts” where email address can be added of the person who needs to receive the email alerts for the processes. 


Environment variables

PHP executable - which php - will locate the php executable (this should be the default php used by you)

Maintenance

Clean logs : enter period for which the logs should be cleaned. 

 

Additional configuration for Custom fields

The following section explains the configuration for the Custom fields

Administration path to configuration of Custom fields Settings -->  System --> Custom fields --> Add new set

We have present 4 sets of Custom fields:

  1. BC Integration Order - 3 additional fields are present on the order level
    a.Business Central NAV Message
    b.Send to BC
    c.Business Central ID





2.BC integration Category - 1 additional filed is present on the category level 

a.Category Code - this needs to be configured if via import of product also the category is needed to be assigned.  

BC Integration Customer - 2 additional fields are present on the customer level

a.BC internal ID

b.BC NO


BC Integration Address - 1 additional field is present on the address level

a.Ship to code