diff --git a/userpoints.module b/userpoints.module
index be5d325..f58055f 100644
--- a/userpoints.module
+++ b/userpoints.module
@@ -6,6 +6,7 @@ define('USERPOINTS_PERM_VIEW',           'view userpoints');
 //The permission(PERM_USE) was removed from use as per #158490 it'll remain 
 //out until code exists to use the permission (jredding 12/26/2007)
 define('USERPOINTS_PERM_USE',            'use userpoints');
+define('USERPOINTS_PERM_VIEW_TRANS',     'view all userpoints transactions');
 define('USERPOINTS_PERM_ADMIN',          'admin userpoints');
 
 define('USERPOINTS_TRANS_UCPOINTS',      'userpoints_trans_ucpoints');
@@ -169,14 +170,14 @@ function userpoints_menu() {
  */
 function userpoints_access_my_points() {
   global $user;
-  return (user_access(USERPOINTS_PERM_VIEW) && user_is_logged_in());
+  return ((user_access(USERPOINTS_PERM_VIEW) || user_access(USERPOINTS_PERM_VIEW_TRANS)) && user_is_logged_in());
 }
 
 /**
  * Implementation of hook_perm().
  */
 function userpoints_perm() {
-  return array(USERPOINTS_PERM_VIEW, USERPOINTS_PERM_ADMIN);
+  return array(USERPOINTS_PERM_VIEW, USERPOINTS_PERM_VIEW_TRANS, USERPOINTS_PERM_ADMIN);
 }
 
 /**
