diff -r 6ae2f4589a7c src/org/openbravo/retail/posterminal/OrderLoader.java
--- a/src/org/openbravo/retail/posterminal/OrderLoader.java	Thu Jun 18 13:22:45 2015 +0000
+++ b/src/org/openbravo/retail/posterminal/OrderLoader.java	Wed Jul 08 09:19:16 2015 +0200
@@ -60,6 +60,7 @@
 import org.openbravo.mobile.core.utils.OBMOBCUtils;
 import org.openbravo.model.ad.access.InvoiceLineTax;
 import org.openbravo.model.ad.access.OrderLineTax;
+import org.openbravo.model.ad.access.User;
 import org.openbravo.model.common.businesspartner.BusinessPartner;
 import org.openbravo.model.common.businesspartner.Location;
 import org.openbravo.model.common.enterprise.DocumentType;
@@ -1120,7 +1121,18 @@
     order.setObposSendemail((jsonorder.has("sendEmail") && jsonorder.getBoolean("sendEmail")));
 
     if (!bp.getADUserList().isEmpty()) {
-      order.setUserContact(bp.getADUserList().get(0));
+      String userHqlWhereClause = " usr where usr.businessPartner = :bp and usr.organization.id in (:orgs) order by username";
+      OBQuery<User> queryUser = OBDal.getInstance().createQuery(User.class, userHqlWhereClause);
+      queryUser.setNamedParameter("bp", order.getBusinessPartner());
+      queryUser.setNamedParameter("orgs", OBContext.getOBContext()
+          .getOrganizationStructureProvider().getNaturalTree(order.getOrganization().getId()));
+      // already filtered
+      queryUser.setFilterOnReadableOrganization(false);
+      queryUser.setMaxResult(1);
+      List<User> lstResultUsers = queryUser.list();
+      if (lstResultUsers != null && lstResultUsers.size() > 0) {
+        order.setUserContact(lstResultUsers.get(0));
+      }
     }
 
     JSONObject taxes = jsonorder.getJSONObject("taxes");
