This blog post is part of a series designed to demystify the process of understanding and writing your own business rules.
If you’re a ChannelAdvisor user looking to expand into additional marketplaces, the GETCURRENCYEXCHANGE and TRANSLIT business rule functions will assist in making the leap toward expansion considerably easier with regard to currency transformation and content adjustments, respectively.
GETCURRENCYEXCHANGE allows users to utilize existing pricing data — in the currency in which it has been originally established — and dynamically convert price values outbound to the new international marketplace currency with a simple business rule.
Prior to execution of GETCURRENCYEXCHANGE, it should be understood that ChannelAdvisor maintains an ongoing currency exchange rate table that is updated with regularity for this function to reference.
In the following basic example, the existing pricing data is already stored in the $itembinprice (Buy It Now Price) field in ChannelAdvisor in USD (US Dollars). The user is looking to have those $itembinprice values converted dynamically from existing USD (US Dollars) to new marketplace NZD (New Zealand Dollars) for listing to the TradeMe marketplace:
- Rule: $itembinprice * GETCURRENCYEXCHANGE(“USD”,”NZD”)
- Result: 4.00 * 1.37 = 5.463732
Because the exchange rate will not always convert to a 2 digit decimal value, it might be helpful to utilize a FORMATNUMBER function to format the resulting value to two decimals:
- FORMATNUMBER($itembinprice * GETCURRENCYEXCHANGE(“USD”,”NZD”), “F2”)
- Result: 4.00 * 1.37 = 5.463732, but formatted to = 5.46
There are other dynamic ways to mathematically adjust the rule above for an additionally refined result, but we offer the GETCURRENCYEXCHANGE function to make the translation of currency values from one currency to another convenient and relative to the exchange markets.
Additionally, users should be aware that rules only send updated values when a change is made to the SKU product details or the outbound template, so the converted currency value won’t be updating the exchange rate value every time an adjustment to the rate reference table is made.
In the effort to expand into new marketplaces, users may encounter marketplace-specific errors related to diacritics (linguistic markings associated with special characters) within their listing content.
ChannelAdvisor’s business rules engine can help clean these issues up with the TRANSLIT function per the following basic rule construct.
For illustrative purposes, assume the following values are populated in a field defined as $itemcontent among various SKUs in the data:
- SKU 123abc $itemcontent value = “Home décor”
- SKU 456def $itemcontent value = “soupçon”
- SKU 789ghi $itemcontent value = “das Mädchen”
Rule: TRANSLIT($itemcontent) – to remove the accent aigu
- Ex 1 : SKU 123abc $itemcontent value = “Home décor”
- Result: “Home decor”
Rule: TRANSLIT($itemcontent) – to remove the soupçon
- Ex 2: SKU 456def $itemcontent value = “soupçon”
- Result: “soupcon”
Rule: TRANSLIT($itemcontent) – to remove the umlauts
- Ex 3: SKU 789ghi $itemcontent value = “das Mädchen”
- Result: “das Madchen”
Taking advantage of these two fundamental transformational functions can facilitate a faster marketplace expansion strategy and assist in reducing the overall effort to launch to new marketplaces.
Try them out! If you want to learn more and can’t wait two weeks for our next blog post, feel free to explore more about business rules on our SSC or check out the other posts in this series. If you’re struggling with a rule, you can always open a case with support to assist you.