Shipping

Customers are a funny lot. If you sell them something, they seem to expect that they can have their item(s) delivered somewhere. What a bother, eh?

But fear not! Dynamicweb Ecommerce supports integrating with several popular delivery services, such as Post Danmark, GLS or FedEX, by setting up one or more shipping methods.

Setting up shipping in Dynamicweb Ecommerce consists of:

  • Creating a new shipping method
  • Selecting and configuring a shipping provider
  • Configuring the matching delivery service

In this article, you can read about creating and configuring a new shipping method in Dynamicweb on a general level.

Additionally, each shipping provider provided by Dynamicweb comes with a dedicated how-to outlining the setup process for that particular provider.

manual

In this section, you will learn about:

  • Creating a shipping method
  • The Fee Rules shipping provider and how to use it
  • The other shipping providers available to you, e.g. FedEx, GLS and Post Danmark ServicePoint, etc.

To create a new shipping method:

  • Go to Management Center > Ecommerce > Orders > Shipping
  • Click New shipping in the toolbar (Figure 3.1)
Figure 3.1 Creating a shipping method

This opens the shipping method window (Figure 3.2).

Figure 3.2 The shipping method window

From here, you can:

  • Name the shipping method – and optionally provide it with a description and an icon
  • Select one or more countries that the shipping method should be available for
  • Set a default fee if the provider does not return a value, and perhaps an order amount which will result in no shipping fee being charged
  • Finally, select a shipping provider

When selecting a shipping provider, you can choose between selecting the default provider – Fee Rules – which allows you to define shipping fee rules and handle them on the Dynamicweb side of things, or an external shipping provider.

Calculating fees based on the delivery country

To calculate your shipping/payment fees based on the delivery country, and not the billing country, go to Management Center > Ecommerce > Advanced configuration > General and modify the fee calculation settings (Figure 4.1) to suit your purposes.

Figure 4.1 Using the delivery country to calculate fees

Some shipping providers – e.g. FedEx – return a shipping fee based on shipping fee parameters, such as service type, weight and size.

Some, however, don’t.

And for those we have the Fee Rules matrix (Figure 5.1), with which, you can assign shipping fees to orders based on various criteria, e.g. weight, volume, and so forth.

Alternatively, if you prefer to handle shipping on your own – or if you use an external delivery service not supported by Dynamicweb – you can use the Fee Rules matrix on its own with no shipping provider.

Figure 5.1 The Fee Rules Matrix

To configure the fee rules matrix:

  • Activate it by selecting Use custom fee rulesor deactivate it by selecting Use fee rules from provider
  • Set it to use either the lowest or the highest applicable fee
  • Decide if both weight and volume must apply for a rule to trigger, or if either weight or volume is enough
  • Create fee rules appropriate to your scenario

To create a fee rule, click the Click here to add a new row text to open the rule-window (Figure 5.2).

Figure 5.2 Creating a fee rule

From here, you must:

  • Name the rule and activate/deactivate it (as appropriate)
  • Specify a timespan during which the rule is valid (can be triggered)
  • Specify a fee – and a fee type (currency or percentage), as well as any weight and volume limits – e.g. $5 for orders below 10”x10”x10” under 10lb

You can also create rules limited to triggering for:

  • Certain users, user groups or a particular customer number
  • Certain shops, products or product groups
  • Orders above a certain total price, or in a particular order context, country/region, currency or zip code

You need only create only the rules relevant for your shipping setup – so in reality, you won’t need to use all the options in the rules window but only those relevant for your setup.

In addition to the Fee Rules shipping provider, Dynamicweb provides a number of shipping providers integrating with external delivery services, such as GLS and FedEx.

implementing

There is no implementing specific information for this subject.

development

There is no developing specific information for this subject.

database

There is no database specific information for this subject.

integration

There is no integration specific information for this subject.

An error occurred while attaching module (Dynamicweb.Frontend.Content)

System.Data.SqlClient.SqlException (0x80131904): Invalid column name 'Providers_Keywords'.
Invalid column name 'Providers_Keywords'.
   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
   at System.Data.SqlClient.SqlDataReader.get_MetaData()
   at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
   at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
   at Dynamicweb.Data.Database.CreateDataReader(IDbCommand command, CommandBehavior behavior)
   at Dynamicweb.Data.Database.CreateDataReader(CommandBuilder commandBuilder, IDbConnection connection, IDbTransaction transaction, CommandBehavior behavior, Int32 commandTimeout)
   at Dynamicweb.Data.Database.CreateDataReader(CommandBuilder commandBuilder, IDbConnection connection, IDbTransaction transaction, Int32 commandTimeout)
   at Dynamicweb.Content.Items.Queries.Repository.SelectByParentPageIds(IEnumerable`1 parentIds, Query query, Boolean includeParagraphs, Boolean includeChildItems, Boolean checkPermissions, Boolean includeInheritedItems)
   at Dynamicweb.ItemPublisher.Frontend.GetItems()
   at Dynamicweb.ItemPublisher.Frontend.List()
   at Dynamicweb.ItemPublisher.Frontend.GetContent()
   at Dynamicweb.Frontend.Content.GetModuleOutput(Paragraph paragraph, PageView pageview)
ClientConnectionId:2eccec1b-64b8-483e-a723-eb1bc2da43ca
Error Number:207,State:1,Class:16