14. PaperCut Integration
Table of Contents
PaperCut is a popular print and copy management software product developed by PaperCut Software based in Melbourne, Australia.
Some functions that are not present in PaperCut can be implemented with SavaPage as pre-processor and integrator.
Note
See PaperCut Integration on how to set the PaperCut Connectivity options.
14.1. Delegated Print to PaperCut
Delegated Print is integrated with PaperCut when the following conditions are met:
PaperCut Integration is enabled: see PaperCut Integration.
Delegated Print and Delegated Print integration with PaperCut are enabled. See:
The Proxy Printer must meet the following requirements:
The Proxy Printer is managed by PaperCut.
The Proxy Printer is configured as non-secure. See Proxy Print. If secure printing is required it must be configured in PaperCut and not in SavaPage.
Warning
A Delegated Print job is denied when the delegate or any of the delegators does not exist in PaperCut. This limitation can easily be solved when both systems synchronize from the same user source. See User Source.
Tips for further reading:
14.1.1. PaperCut Configuration
14.1.1.2. Step 2 - Enable Multiple Personal Accounts
Enable the PaperCut “Multiple Personal Accounts” option and add the
personal account SavaPage. This account must be present for it is used by
SavaPage to charge printing costs to individual persons.
Important
The PaperCut personal account name is known by the SavaPage configuration key:
proxy-print.delegate.papercut.account.personal
The value defaults to SavaPage.
The account type for this account as determined by PaperCut in
its own configuration key multi-personal-accounts.definitions
(with values like USER-001, USER-002) can be set with this
key: proxy-print.delegate.papercut.account.personal-type
When a value is specified it is used to filter personal account transactions in JDBC queries (CSV downloads) for the Delegated Print context.
See Config Editor on how to change these values.
14.1.1.3. Step 3 - Configure Printers
Take a moment to consider how you want the PaperCut printers that are used for SavaPage Delegated Print to act. A likely scenario is that you want these printers to be virtual hold/release queues so users can enjoy follow-me printing, and release print jobs at a series of physical printers. Or, may be you want these jobs to be released by administrators only. Consult the PaperCut User Manual on how implement the desired scenario.
There is one crucial printer configuration property though that must be
addressed. Make sure that Override user-level settings
is set, and activate Do not show account popups and allocate jobs to:
a single shared account.
Use the Shared Account SavaPage (as created in Step 1) and
select the Charge shared account option.
Now, when a Delegated Print job is successfully printed by PaperCut,
the cost will be automatically charged to the shared SavaPage account.
14.1.2. PaperCut Delegated Print Processing
SavaPage monitors the print job status in PaperCut and, when printing is successful, charges the costs, as reported by PaperCut, to the proper PaperCut accounts, as explained in the section below.
Important
In addition to PaperCut Account processing, account transactions are still added to SavaPage as explained in Delegated Print Edit. However, the printing costs reported by PaperCut overrule any costs defined in SavaPage for regular printing. For Job Tickets, SavaPage cost is leading.
14.1.3. PaperCut Delegated Print Accounting
SavaPage uses the PaperCut cost total of the Delegated Print job
to add extra PaperCut account transactions. The comment of each
account transaction holds a combination of pipe-separated (|) job
parameter fields, with the following meaning:
delegate : the user (delegate) who printed the job on behalf of the target users (delegators).
class : the “class” a target user belongs to. A value of “
-” (minus) means the user does not belong to a class. A class can be of type:shared : a SavaPage Shared Account.
group : a SavaPage Group Account.
copies : the number of document copies printed (a negative number for a Refund).
pages : number of pages within the document.
size : the page size of the document (A4, A3).
duplex : D for duplex, S for simplex.
color : C for color, G for grayscale.
id : CUPS job ID, optionally preceded by Job Ticket Number or Tag.
document : the document name.
comment : any comment entered by the delegate (CR+LF, CR, LF and TAB are replaced by one space).
As a rule SavaPage charges target users individually for print copies.
As an extra, solely for reporting purposes, dedicated PaperCut
shared accounts are used to accumulate cost and job information globally
(the SavaPage\Jobs account) and per User Class.
Important
No transaction appears in any PaperCut account when the cost of a print job is zero. For transactions to appear you need to specify page cost at the PaperCut printer configuration.
14.1.3.1. PaperCut User Accounting
SavaPage proportionally splits the cost total of the printed
Delegated Print job over individual users (delegators), directly or
indirectly by group membership. Costs are charged to their personal
user account named SavaPage. The comment format of the transaction is:
group | delegate | copies | pages | size | duplex | color | id | document | comment
Copies for users not belonging to a group have dummy group “-”
(minus).
14.1.3.2. PaperCut User Class Accounting
SavaPage proportionally splits the cost total of the printed
Delegated Print job over “classes”. Class cost is proportional to the sum
of the print copies for users belonging to the class. This cost is
charged to a shared child account of the SavaPage parent account, with
format:
savapage.[class].[name]
The [class] placeholder stands for the class type and can have
value group or shared. The [name] is placeholder for the
class name. The name of a shared child account is prefixed with
the name of its parent, separated by a dot character (as parent.child).
PaperCut shared child accounts are ad-hoc created by SavaPage on first use.
The comment format of the transaction is:
delegate | copies | pages | size | duplex | color | id | document | comment
14.1.3.3. PaperCut Job Accounting
As an extra, for each Delegated Print job, SavaPage adds a
transaction to the shared child account Jobs of the SavaPage
parent account. The comment format of the transaction is:
delegate | copies | pages | size | duplex | color | id | delegate@class-1 | copies-1 | ... | delegate@class-n | copies-n | document | comment
The delegate@class | copies field group shows the printed copies per
class and is repeated for each class that was printed for. Copies for
users not belonging to a class are accumulated in dummy class -
(minus).
Note
The PaperCut shared child account name is known by the SavaPage configuration key:
proxy-print.delegate.papercut.account.shared.child.jobs
The value defaults to Jobs. See Config Editor on how to
change this value.
14.1.4. PaperCut Queries and Reports
Use the on-line queries and run the reports in the PaperCut Admin Web App to answer questions about Delegated Print jobs and transactions from the following perspectives.
14.1.4.1. User Prints
SavaPage documents printed for a user.
“Users > User List > User Details > Transactions” gives a quick on-line view of personal account transactions. Sort and filter to find the SavaPage transactions.
Use “Reports > Transaction Reports > Transaction logs” to generate a SavaPage transaction report for a user or user group over a period of time. The report shows the individual transaction details and the total amount charged.
Important
PaperCut does not have a Transaction Report to accumulate transaction totals per user over a period of time. Please use the Delegator Invoicing from PaperCut export function in SavaPage for that purpose.
14.1.4.2. Class Prints
SavaPage documents printed for a class.
Select “Accounts > Shared Account List > Account Details > Transaction” for a SavaPage class account to get a quick on-line view of account transactions. Sort and filter to find transactions.
The “Reports > Shared Account Reports” section contains many reports that summarize printing activity charged to shared accounts. Select the SavaPage class account to get a transaction summary report for a period of time.
14.1.4.3. Delegate Prints
SavaPage documents printed by a delegate.
“Users > User List > User Details > Job Log” gives a quick on-line view of the documents printed by a delegate user. Sort and filter to find the print jobs charged to the shared SavaPage account.
14.1.4.4. Delegate Class Prints
SavaPage documents printed by a delegate for a class.
Select “Accounts > Shared Account List > Account Details > Transaction” for the SavaPage Jobs account to get a quick on-line view of account transactions. Since the comment contains formatted information about classes, you can select transactions with the “Comment containing” filter.
Likewise you can use “Reports > Transaction Reports > Transaction logs” to generate a SavaPage\Jobs transaction report for over a period of time. The report shows the individual transaction details and the total amount charged.