Skip to main content
The shop configuration shop.config holds a shop’s commercial specifications and all texts that appear in the shop. Each subshop has its own shop.config, and this is exactly what allows subshops to be tailored to specific target groups and countries. The German shop offers cash on delivery and DHL, the English one neither, but UPS instead. The file is edited in the online service area. This page covers the technical foundation: what the shop knows about itself, which domain it runs under, which templates it uses, how content is embedded and how it behaves towards search engines.
For subshops with language- or target-group-dependent configurations, the text maintenance platform is available in the online service area. It lets you carry out translations and text changes in one place and apply them automatically to the individual configurations.
The remaining sections of the shop.config are on these pages:

Basic

The Basic section holds the shop’s overarching basic settings. It is the only section without which a shop does not run, because the main domain is defined here. The order of the parameters in the configuration does not matter. The following sections arrange them by topic rather than alphabetically.

Switching the shop on and off, test operation

The last four parameters are not in the previous documentation, but the shop system reads them. They belong to closed test shops and are usually set up together with WEBSALE.
Guide: Activating/deactivating the shop, Switching the shop’s test modes on/off

Language, character set and date

An unrecognized value for DateFormat does not lead to an error message but silently to LittleEndian. A typo therefore only becomes noticeable in the date output.
If you use DKIM, set ConvertMailsToUTF8 to yes. Only then is the DKIM signature calculation error-free even with special characters. With test, you first check the change in the general test mode.
Guide: Specifying language, character set and date format, Sending emails in UTF-8
The main domain must match the stored SSL certificate. If the two differ, the shop system sends a critical error message to WEBSALE. Therefore always discuss a change to the main domain with your WEBSALE contact in advance.
If Domain-! is missing, the shop system reports a configuration error. Also note that ihrshop.de and www.ihrshop.de are two different domains. If both are to work, add the second spelling in the AddDomains section.
Guide: Configuring domains for accessing the shop, SEO optimization with TopRank, Automatic generation of the hreflang attribute

Start page, categories and product display

HideForRating-Allow and HideForAgeRestricted-Allow are not in the previous documentation, but are evaluated by the shop system.

Session, cookies and order completion

Only set KeepSessionAfterOrder-Allow to yes if the shop has a clearly visible logout function. By default, the session is closed after every order for security reasons. The exception is typically B2B shops with regular customers who order several times a day.
Without SavedBasket-SkipProdValidityCheck, the shop system automatically deletes a product that no longer exists from the saved basket when loading it. With yes, the item remains, and the buyer sees a product they cannot order.
Guide: Logout, Staying logged in after an order, Online prices, Order history, Saveable basket, Prime shopping

Quick order

Guide: Quick order

Tracking interface

A general notice about cookies or tracking is not legally sufficient. The visitor must actively confirm that they agree to the use, and preset consents are not permitted. Functions that require consent therefore always need an opt-in. Clarify the details with your data protection officer.
AdvStatisticsID is not in the previous documentation, but is evaluated by the shop system.
Guide: Enabling the tracking interface, Tracking interface with PageSpeed tool. Reference: WS-ExternalStatistics

Recommendation, glossary and ratings

GlossarySupportHTMLEncoding-Allow and AddPIASubShopList are not in the previous documentation, but are evaluated by the shop system.
Guide: Integrating the “Recommend product” function, Embedding the glossary, Using ratings across subshops

External systems and payment service providers

Available language codes for CtopLanguageCode: al Albanian, at Austrian, cz or cs Czech, de German, dk Danish, en English, es Spanish, fi Finnish, fr French, gr Greek, hu Hungarian, it Italian, jp Japanese, nl Dutch, no Norwegian, pl Polish, pt Portuguese, ro Romanian, ru Russian, se Swedish, sk Slovak, sl Slovenian, tr Turkish, zh Simplified Chinese.
SecureBasicDataPW, UseSecureBasicDataWithoutNumber-Allow, TeleCashButtonName and OgoneLanguageCode are not in the previous documentation, but are evaluated by the shop system.
Guide: Using external includes, “Credit card” payment method

Deprecated parameters

Remove deprecated parameters the next time you go through the configuration. They do not interfere with operation, but when reading they give the impression that something is set there.
Reference: DC-FPX_encrypt, DC-SPX_encrypt

AddDomains

Defines additional domains under which the shop can be reached, and whether they are redirected to the main domain.
With Domain-! = www.ihrshop.de in the Basic section and the configuration above, a request via www.ihrshop.de is accepted unchanged. The three listed domains are redirected there. Any other domain is rejected.
Since all shops were switched to SSL-only, this section is no longer needed. WEBSALE system administration stores additional domains directly on the server. Contact your WEBSALE contact for further domains.
A host name is observed strictly. ihrshop.de and www.ihrshop.de are two different entries. If both spellings are to work, you need two lines.
Guide: Configuring domains for accessing the shop

Templates

Assigns each shop state its template file. All templates are located below benutzer/templates. The name after the equals sign is the file name and can be chosen freely; the order of the lines does not matter.

The path through the shop

Login and customer account

Additional functions

Technical templates

If SpecialHandlingNoRedirectInfoFound is missing or the file does not exist, the shop system redirects to the start page in these cases. This is not an error, but the visitor then lands on the start page without explanation instead of on a page that tells them what happened to the product.
For FastIncludes_<ID>, 15 entries is the hard limit. Further lines are silently skipped, and an ID that has already been assigned is also skipped rather than overwritten. So the first entry wins, not the last.
The shop system evaluates the following parameters, but they are missing from the previous documentation: Wishlist, WishlistAdmin, AutoOrderManage, TFAVerify, TFAManage, PasskeyVerify, PasskeyManage, PaymentPending, PayPalCheckoutPending, PaymetricHosted, PPCVaultManage, RPDE_LabelprintNew, EBook, UploadStart, UserSearch, ExternalDownload and ChangeExternalProduct.
Guide: Reuse: includes

DesignControl

Stores the IDs and secrets with which the DesignControl tags sign and encrypt data. For security reasons, passwords do not belong in the template but here. Only the ID is specified in the template. The idea behind this is simple: data sent to a third-party system over an unsecured route should not be modifiable along the way. The sender hashes it with a shared secret, the recipient checks the hash.
An +Encrypt entry without PW is skipped, whereas a +Hash entry without Secret is created. An entry without ID is skipped in both cases, in all cases without an error message. Therefore, after setting it up, check in the template whether the tag actually returns a value.
The number of entries is limited. Once the limit is reached, the shop system logs an error and does not read in any further entries.
Reference: DC-FPX_hash(), DC-SPX_hash(), DC-FPX_encrypt(), DC-SPX_encrypt()

ContentControlLoadTemplates

Lists the templates for which the HTTP status code and the delivered content can be influenced via ContentControl.
Guide: Redirect concept for content from third-party systems Replaces the button icons generated by the shop system with your own graphics. All files are located in benutzer/navigation/grafiken.
Guide: Changing predefined graphics

PDFGenerator

Defines the file names under which the generated PDF files reach the buyer.
The PDF generator cannot process CMYK files. This mainly affects purchase vouchers, where print templates are used.
The two local tags ProductNumber and OrderNumber only apply within these parameters and have nothing to do with the shop’s template tags.
Guide: PDF display of the product detail view, PDF display of the basket, PDF display of the confirmation page, Printable purchase vouchers

ShopTimeouts

Fills the selection list through which the buyer determines the timeout of their session themselves. System-wide, the timeout is two hours by default.
To the left of the equals sign is the value, to the right the label in the selection list. The unit m stands for minutes, h for hours. Guide: Setting the timeout for automatic logout

CSRF-Protection

Controls how the shop reacts to a missing or differing antiforge token. The token prevents a third-party page from submitting forms on behalf of the logged-in buyer.
CheckForValidReferer checks as a second stage whether the transmitted referer and the shop address differ, and only then detects an error. Decline-NoFallback dispenses with this second check, so the error is established immediately. 403-Forbidden sends the corresponding HTTP status. DiscardAllInput does not send its own status, but ignores all inputs of the request and saves none of them.
The function can be switched off for a shop by WEBSALE technical staff. Contact your WEBSALE contact for this.

TopRank

Holds the settings for the TopRank HTML pages, the XML sitemaps, the SEO URLs and the output of WS-RobotCanonical.

SEO URLs and directories

Search engines only accept links in a sitemap that point to the same or a lower-level directory. If the sitemap is too deep, the links in it are ignored. Therefore only set SiteMapDir if the root of the domain does not coincide with the directory in which the shop directory is located.

Canonical tag

SuppressCatIndexInRobotCanonical also affects the sitemaps. With yes, only the canonical product URLs are included, which corresponds to Google’s recommendation. With no, a separate URL is written for each category in which a product appears.
You only need AddShopAndSubshopIDInRobotCanonical if several subshops share a domain. Set it in the subshops that are not the main subshop of this domain. As a rule, each subshop gets its own domain, in which case the parameter remains no.

Redirect and delivery

ActivatePermanentDirectJSCSSTest = yes bypasses grouping and therefore caching. This is helpful when building a shop, but costs loading time in live operation. Remove the parameter again before go-live.

Subsection LinkOptimization

Removes superfluous parameters from the generated URLs. The subsection belongs to TopRank and does not stand on its own.
Allow is only relevant for switching from conventional URLs to SEO URLs. As soon as SEO URLs are active, the shop system sets the parameter to yes internally, because the function is strictly required there.

Deprecated parameter

Guide: SEO optimization with TopRank, Generating a canonical tag in the HTML head, SEO URLs, URL and link optimization, CSS, JavaScript and jQuery

SEOProductFields

Enables the SEO fields for products and determines whether the SEO product name is used in links and in the canonical tag.
LegacyLink-Allow only takes effect as long as Link-Allow = yes is set. If Link-Allow is no, LegacyLink-Allow has no effect, even if the default value yes suggests otherwise.
Guide: SEO content for products

SEOProductFields-Text

Holds the error messages that appear when maintaining the SEO fields. Each message is output by its own tag.
ErrorNameAlreadyExists and ErrorNameTooLong are both output via E-PSEO_Error_Name. Therefore word the two texts so that the editor can tell from the message itself which of the two cases applies.
Guide: SEO content for products

LinkNameEncoding

Determines how the readable part of a URL is encoded. By default, German umlauts are converted into readable replacement characters and not into UTF-8 replacement characters. This means there are no special requirements for merchandise management systems and payment service providers. The default rules are already stored, so you only edit the section if further shop languages or requirements of external systems are added. Guide: Encoding the readable part of the URL

RefererDerivation

Derives a WEBSALE referer and optionally a subreferer from the HTTP referer or from the path of the requested URL. This lets you group incoming visits by origin without every link having to carry its own parameter. The structure has two levels: a +RefererRule determines the referer and optionally refers via an ID to a +SubRefererRuleSet, which determines the subreferer.
Each subsection may occur any number of times.

Subsection +RefererRule

Subsection +SubRefererRuleSet

Subsection +SubRefererRule

Guide: Rules for the automatic derivation of referers

MediaDataBase

Configures the availability display for products from the media database, that is, for books, CDs and videos ordered via Koch, Neff und Volckmar GmbH. For a product, the shop system first looks for the +InventoryCode subsection with a matching code and matching source. If it does not find one because no delivery status code is stored for the product, the first +InventoryDefault subsection with a matching source applies.
The examples in the previous documentation show the status green for codes 07 and 11, that is, green for “out of print” and green for “new edition”. On this page, the examples have been changed to red and yellow, because otherwise status and text give contradictory signals.