diff --git a/product/ERP5Wizard/Tool/WizardTool.py b/product/ERP5Wizard/Tool/WizardTool.py
index cb7328035294d3304e888f215d5a472f855535e9..e69fded298e37fe6e359f9f6175614ec39e97989 100644
--- a/product/ERP5Wizard/Tool/WizardTool.py
+++ b/product/ERP5Wizard/Tool/WizardTool.py
@@ -424,7 +424,11 @@ class WizardTool(BaseTool):
     ## add local ERP5 instance url
     parameter_dict['erp5_url'] = self.getPortalObject().absolute_url()
     # add user preffered language
-    parameter_dict['user_preferred_language'] = getattr(self, 'user_preferred_language', 'en')
+    REQUEST = getattr(self, 'REQUEST', None)
+    if REQUEST is None:
+      parameter_dict['user_preferred_language'] = 'en'
+    else:
+      parameter_dict['user_preferred_language'] = REQUEST.cookies.get('configurator_user_preferred_language', 'en')
     
   def _updateParameterDictWithFileUpload(self, parameter_dict):
     """Updates parameter_dict to replace file upload with their file content,
@@ -577,7 +581,9 @@ class WizardTool(BaseTool):
       # set user preferred configuration language
       user_preferred_language = REQUEST.get('field_my_user_preferred_language', None)
       if user_preferred_language:
-        self.user_preferred_language = user_preferred_language
+        REQUEST.RESPONSE.setCookie('configurator_user_preferred_language',
+                                   user_preferred_language,
+                                   expires=(DateTime()+30).rfc822())
       # set encoded __ac_express cookie at client's browser
       __ac_express = quote(encodestring(password))
       expires = (DateTime() + 1).toZone('GMT').rfc822()