diff --git a/product/ERP5/ERP5Site.py b/product/ERP5/ERP5Site.py
index ccd93beb525ba003708c4696e7c72299b1de944f..e49f92c207e21dec83f92f323e7d81c257e10272 100644
--- a/product/ERP5/ERP5Site.py
+++ b/product/ERP5/ERP5Site.py
@@ -889,6 +889,30 @@ class ERP5Site(FolderMixIn, CMFSite):
     return self._getPortalGroupedTypeList('service') or \
            self._getPortalConfiguration('portal_service_type_list')
 
+  security.declareProtected(Permissions.AccessContentsInformation,
+                            'getPortalSaleTypeList')
+  def getPortalSaleTypeList(self):
+    """
+    Return sale types.
+    """
+    return self._getPortalGroupedTypeList('sale')
+
+  security.declareProtected(Permissions.AccessContentsInformation,
+                            'getPortalPurchaseTypeList')
+  def getPortalPurchaseTypeList(self):
+    """
+    Return purchase types.
+    """
+    return self._getPortalGroupedTypeList('purchase')
+
+  security.declareProtected(Permissions.AccessContentsInformation,
+                            'getPortalInternalTypeList')
+  def getPortalInternalTypeList(self):
+    """
+    Return internal types.
+    """
+    return self._getPortalGroupedTypeList('internal')
+
   security.declareProtected(Permissions.AccessContentsInformation,
                             'getPortalAlarmTypeList')
   def getPortalAlarmTypeList(self):