Skip to main content
If you run subshops with different currencies, a voucher worth 20 euros would be worthless in the US shop. That is why a voucher can be assigned a list of currencies, each with its own values. When the customer redeems the voucher, the currency of the subshop determines which value applies. No exchange rate is used; you define the amounts per currency yourself.

How the shop determines the value

The shop compares the currency of the current subshop with the voucher’s currency list and uses the matching entry.
If the subshop’s currency is not in the list, the voucher cannot be redeemed there. The customer then receives the general message “Invalid voucher number” and does not learn that the currency is the cause. Therefore, store every currency in which the voucher should be valid, and expect inquiries in a multi-country campaign if a currency is missing.

What can be stored per currency

Percentages do not need a currency list. Ten percent is ten percent in every currency. For a percentage voucher, only the maximum redemption amount is currency-dependent.

Remaining amounts

A voucher that has not been fully redeemed keeps its remaining amount, and this can also be used in another subshop with a different currency.
The amount already used is tracked separately for each currency. A voucher worth 50 EUR and 60 USD, of which 20 EUR have been redeemed, then still has 30 EUR and still the full 60 USD. Therefore, do not calculate the value of a campaign as the highest individual value, but as the sum of all stored currency values.

Prerequisites

The voucher generator must be activated. If you want to use it, contact your WEBSALE representative.
If the vouchers come from an external system and are therefore not in WEBSALE format, add the entry ExternalVouchers-Allow = yes in the <Voucher-Txt> section of the shop.config.
Voucher entry must be integrated in the shop, namely in every subshop in which the voucher is to be valid. Guide: Provide voucher entry · Reference: Voucher-Txt section

Step 1: Creating the voucher

Create the voucher in the voucher generator in the online service area and select the desired currencies there. For each selected currency, enter the corresponding amounts.

Step 2: Displaying the voucher data in the shop

The data of a voucher can be output on any shop page, for example on a campaign page, so that visitors can see what their code is worth in their currency.
In the example, 123 stands for the voucher number. VOUCHER-LoadData loads the data, and VOUCHER-DataExists only applies if the voucher exists. Without this enclosure, empty lines appear on the page as soon as a number no longer exists.

The output format

These five tags output their data in technical format, not as readable text. In addition, the output is not HTML-escaped.
The currency list has a different format than the four value lists. It contains only <c> entries, without a <g> enclosure and without an amount. If you process both with the same loop, you get no matches for the currency list.
Because the output is not escaped, visitors see nothing with direct output: the browser treats <g> and <c> as unknown HTML elements and hides them along with their content. Therefore, first put the value into a Design Control field and output it from there; it is then escaped and thus visible.

Preparing the data

To prepare the data, split the list using a dynamic loop and extract the currency and amount from each entry.
The order within an entry does not matter. DC-FP1_extractTaggedData searches by the name of the enclosing tag, not by position. You can therefore extract and output the amount and currency in any order.
The field is set again before each extraction because DC-FP1_extractTaggedData replaces the content of the field. Without setting it again, the second call returns nothing.
Three dynamic loops and several Design Control fields are available. If you want to show values and minimum order values side by side in a table, use two different loops, because a loop only holds one list at a time.
Reference: VOUCHER-MultiCurrency_CurrenciesData · VOUCHER-MultiCurrency_MinOrderData · VOUCHER-MultiCurrency_MaxDiscountData · VOUCHER-MultiCurrency_AbsoluteAmountData · VOUCHER-MultiCurrency_AbsoluteAmountUsedData · DC-DynamicLoop1…3 · DC-FPX · DC-FPX_extractTaggedData() · WS-DisableXSSProtectionOnce

Further voucher data

Beyond the values shown here, the VOUCHER- tag family provides access to almost all fields that the voucher generator creates, for example the validity period, batch ID, and restrictions to products or customers. Reference: VOUCHER-
  • Guide: Offering vouchers: Overview
  • Guide: Create or import vouchers
  • Guide: Percentage vouchers