diff --git a/modules/org.openbravo.service.json/src/org/openbravo/service/json/DataToJsonConverter.java b/modules/org.openbravo.service.json/src/org/openbravo/service/json/DataToJsonConverter.java
--- a/modules/org.openbravo.service.json/src/org/openbravo/service/json/DataToJsonConverter.java
+++ b/modules/org.openbravo.service.json/src/org/openbravo/service/json/DataToJsonConverter.java
@@ -66,8 +66,8 @@
   private final SimpleDateFormat xmlDateFormat = JsonUtils.createDateFormat();
   private final SimpleDateFormat xmlDateTimeFormat = JsonUtils.createDateTimeFormat();
   // private final static SimpleDateFormat xmlTimeFormat = JsonUtils.createTimeFormat();
-  private final static SimpleDateFormat xmlTimeFormatWithoutMTOffset = JsonUtils
-      .createTimeFormatWithoutGMTOffset();
+  // private final static SimpleDateFormat xmlTimeFormatWithoutMTOffset = JsonUtils
+  // .createTimeFormatWithoutGMTOffset();
 
   // additional properties to return as a flat list
   private List<String> additionalProperties = new ArrayList<String>();
@@ -313,7 +313,9 @@
         Timestamp localTime = (Timestamp) value;
         Date UTCTime = convertToUTC(localTime);
 
-        return xmlTimeFormatWithoutMTOffset.format(UTCTime.getTime());
+        // Smartclient expects a datetime because we set this property in the client:
+        // isc.DataSource.serializeTimeAsDatetime = true;
+        return xmlDateTimeFormat.format(UTCTime);
       } else if (property.isDatetime() || Timestamp.class.isAssignableFrom(clz)) {
         final String formattedValue = xmlDateTimeFormat.format(value);
         return JsonUtils.convertToCorrectXSDFormat(formattedValue);
