This section describes in detail how to set up PaperCut NG/MF for the most common uses for multiple personal accountsA personal account is the individual user's account that is charged by default. Each user has their own personal account.:
Example 1: Separate cash/quota accounts
In environments where users have both freely allocated quotas and the option for users to pay for printing it's useful to separate quotas from cash. For a description of this scenario see Separating Quota and Cash.
To configure multiple accounts for this situation:
Select Options > Advanced.
The Advanced page is displayed.
- In the Multiple Personal Accounts area, click the Go to multiple personal account setup link.
Enable the Enable multiple personal accounts option.
The "Default" (built-in) account is used for quotas. Rename it to something appropriates (e.g. "Quotas").
Click Add Account to add a new account. This account are used for user payments. Name it appropriately, and set the priority to a value higher than the default/built-in account.
It is important that the accounts are given this priority order. This way any freely allocated quotas are used before using the cash payments. This allows a user to add credit to their account and know that it will be used only when they run out of allocated quota.
Click Set Up Accounts to start applying the change.
When the account setup is complete, select the Cash account as the account for user payments. To do this, select this account under the User payment accounts option.
At this point the system is ready to use. Any cash payments from TopUp/Pre-Paid Cards or Payment Gateways are added to the selected cash account. The quotas are added to the default/built-in account. (Note: Sites running a Payment Gateway module released prior to version 10.5 might need to upgrade the gateway to leverage this setting.)
Example 2: Department/faculty quotas (advanced)
A much more advanced configuration is required when different departments/faculties/areas want to each have their own quotas that are only available for use by their users on their printers. Department quotas are also often combined with user cash payments, which can be used anywhere on site. For a description of this scenario see Independently Managed Work Areas.
One prominent PaperCut customer, Cambridge University in the UK uses this configuration. At Cambridge, each of the independent schools/colleges want to allocate quotas to their students at enrollment. Students can use these quotas only on the printers owned by the school. Cambridge also offers user-paid printing, where students can use the cash on any printer across the campus. The multiple personal account feature in PaperCut is designed to meet the demanding requirements at The University of Cambridge and other leading colleges.
This configuration requires the use of many advanced PaperCut features. This section gives a brief outline of how this is configured.
Enable multiple personal accounts and create the accounts for each of the work-areas or departments required. If users can also pay for printing, also create a cash account. The priority/order of the quota accounts is not important, as long as the "Cash" account is displayed last. The screenshot below shows a possible configuration.
Click Set Up Accounts to apply the change.
When the account setup is complete, select the "Cash" account as the account for user payments. To do this select this account under the User payment accounts option; then click Apply.
At this point all the accounts are enabled and can be used on any printers. The Advanced Printer Scripting feature is used to restrict the accounts that can be used on different printers. For more information, see Advanced scripting (print scripting). The advanced scripting provides a method (actions.job.changePersonalAccountChargePriority) that allows for changing both the accounts available and their order/priority. The method is documented in detail in Script Actions.
For example, the following script snippet, shows how to limit the available accounts to only "Science Quotas" and "Cash" (in that order).
actions.job.changePersonalAccountChargePriority(["Science Quotas", "Cash"]);
Departments can allocate initial quotas at enrollment or periodically throughout the year using the web-service APIs or server-command to adjust user balances. All the balances affecting APIs/commands have a parameter to specify which of the accounts to adjust/set. For example, to use server-command to set the balance of the "Science Quotas" account to $10.00 for all members of the "Science Students" group:
server-command set-user-account-balance-by-group "Science Students" 10.0 \ "Enrollment quota" "Science Quotas"
You can integrate this technique with existing student management systems to automate the allocation of free print quota at the time of enrollment.
You can achieve a lot with the power of Advanced Print Scripting and Multiple Personal Accounts. Large universities and colleges needing this level of flexibility also tend to have very competent IT staff. Take some time to bounce around some ideas. Here are a few:
Use advanced print scripting to tune on/off access to accounts based on conditions such as group membership, time of day, device, etc.
Automate account management tasks such as free quota assignment on course enrollment using scripts.
Clearly explain to users any complex rules on which accounts are used and under which conditions. Take some time to document this and communicate policy with staff/students/members.