# Reporting user permissions A brief explanation of SP main app user roles, and some examples of checking in the code. See detailed permissions explanation on [Team member roles and access levels](https://support.simplepractice.com/hc/en-us/articles/360052700171-Team-member-roles-and-access-levels). ### Account Owners An acount owner is a customer who owns the practice. Every account owner is a clinician with administrator access, but not all clinicians with administrator access is an account owner. ##### Checking in the code: ```ruby= user.is_owner? ``` > When it comes to reporting, if you are already allowing clinician_admin access, you don't need to allow owners too, once every owner is a clinician_admin. ### Clinicians with administrator access A clinician with administrator access is self explanatory, he is a clinician but he can also have access to admin features. ##### Checking in the code: ```ruby= user.clinician_admin? ``` ### Clinicians with full client list access A clinician with full client list access, has permission to see other clinician's data besides his ones. ##### Checking in the code: ```ruby= user.clinician_full? ``` ### Schedulers A scheduler has permission to manage appointments. ##### Checking in the code: ```ruby= user.scheduler? ``` ### Billers A biller has permission to manage client billings. ##### Checking in the code: ```ruby= user.biller? ``` ### Practice managers A practice manager can access all practice settings, except for the Subscription Information and Data Export settings that are reserved for the Account Owner ##### Checking in the code: ```ruby= user.practice_manager? ``` ### Clinicians with basic access A clinician with basic access can add documentation and schedule appointments for their own clients. ##### Checking in the code: ```ruby= user.clinician? ``` ### Clinicians with basic access + billing A clinician with basic access + billing can add documentation, manage billing, and schedule appointments for their own clients. ##### Checking in the code: ```ruby= user.clinician_self? ``` ### Supervisor This role is intended exclusively for those who are supervising pre-licensed clinicians. ##### Checking in the code: ```ruby= user.supervisor? ```