Billing Accounts are completely optional and are used to make payment processing simpler for patrons when a request's expenses are being covered by a specific account. A Billing Account is uniquely identified by an ID up to fifty characters long and a description. There are three database tables associated with this feature:
- Accounts: Stores the billing account's ID and description
- UserAccountLinks: Links patrons to the billing accounts with which they are associated.
- TransactionAccountLinks: Links requests to the billing account with which they are associated.
Currency values in the Aeon Desktop Client and the Aeon patron web pages will display as set in the Windows User settings (Control Panel | Clock, Language, and Region | Region | Additional Settings) on the local computer.
Creating and Editing Billing Accounts
You can create and edit Billing Accounts using the Aeon Desktop Client:
- To open the Billing Accounts form, click the Manage tab, then click Billing Accounts.
- To create a new Billing Account, click New or navigate to "click here to add a new row" in the Billing Accounts section.
- Type in a Billing Account ID and Description.
- Click Save to save changes.
- To edit a Billing Account, click on the account and make changes. The ID cannot be modified once it has been created, only the description.
Associating Users with Billing Accounts
Staff can associate a Billing Account with a user on the User form in the Aeon Desktop Client under the Billing Accounts tab. This tab will list any current Billing Accounts and will allow staff to search for other accounts. Any number of billing accounts may be associated with a user. When a patron is removed from a Billing Account, any of the patron's requests that are associated with that account will retain that association, so past requests will not be adversely affected by changes to the patron's account. If two patrons are merged, the account associations of the disavowed user will be copied to the new user.
- To associate a user with a Billing Account, the first search for an open the User's record in the Aeon Desktop Client.
- Click on the Billing Accounts tab.
- Any existing Billing Accounts associated with the user will be displayed on the left.
- By default, all of the available accounts will be shown in the Search Results box on the right when the form is first loaded.
- To find a specific account to add to the user, select it from the list or search by Account ID or Description.
- To add the account to the user, click Add Billing Account.
Associating Requests with Billing Accounts
Billing Accounts can be assigned to requests either by staff through the Aeon Desktop Client from the billing tab of the request form, or by patrons through the web when submitting or editing photoduplication requests. Only one Billing Account can be assigned to a request, and it is not required to add a Billing Account to a request.
A request's billing account values will be available to print and email templates via the field names BillingAccountID and BillingAccountDescription. Staff will be able to apply payments to the request's account whenever is appropriate for their specific workflow. If a Billing Account is assigned to a request, "Billing Account" will be added to the payment method dropdown, and selecting it will automatically add the account ID to the payment reference field. A request's Billing Account will also be assigned to any clones, but only if it is a valid account given the clone's user and researcher. Otherwise, that field will remain blank. This will not be relevant until the photoduplication process is initiated on the clone, but once it is, the billing account will already be assigned.
- To add a Billing Account to a request, open the request and click on the Billing tab.
- Click on the Billing Account dropdown and select the Billing Account you want to add.
- Click Save.
Billing Accounts in the Aeon Web Pages
The following changes have been made to the default Aeon web pages and will have to be manually added to take advantage of this field.
-
A new input field for the Billing Account association has been added to PhotoduplicationRequest.html and EditPhotoduplicationRequest.html. This change takes advantage of the same method as the request link input to dynamically assign a class to the span to either show or hide the entire Billing Account dropdown, depending on whether or not it is relevant to the current patron (that is, if the patron or any of the researchers they are proxies for having a Billing Account). The span for this input is then followed by a reference to billingAccountOptionHandler.js, which will handle dynamically updating the available options in the Billing Account dropdown in the same way the Format, Service Level, and Shipping Option dropdowns are updated to reflect changes in the request's researcher or Activity. The new input is added with the following HTML after the RequestLink input:
<span class="<#PARAM name="BillingAccountsVisible" enabled= "BillingAccountsEnabled" disabled="BillingAccountsDisabled">"> <label for="BillingAccount"> <span class="field"> <span class="<#ERROR name="ERRORBillingAccount">"><b>Billing Account</b></span> </span> <select id="BillingAccountId" name="BillingAccountId" size="1" class= "f-name" tabindex="202"> <#OPTION name="BillingAccounts"> </select><br /> </label> </span> <script type="text/javascript" src="js/billingAccountsOptionHandler.js"> </script>
By default, the BillingAccounts #OPTION will display the description of the billing account followed by the account ID in parentheses although this display can be modified using the 'displayMethod' attribute, which can be set equal to 'onlyID' or 'onlyDescription'.
-
Additionally, the billingAccountsOptionHandler.js file should be added to the javascript directory, and the following lines should be added to main.css:
form.f-wrap-request fieldset span.BillingAccountsEnabled {display:block} form.f-wrap-request fieldset span.BillingAccountsDisabled {display:none}
and to expand the width of the select elements to better accommodate billing accounts, all instances of:
label select {width: 15.5em}
should be replaced with
label select {width: 24em}
-
Lastly, a new customization key SLBillingAccountError has been added. This key will be used to display a status line message if a patron attempts to submit or edit a request with an invalid billing account (that is, one that is not associated with them or the researcher the request is for) and has a default value of "You are not authorized to assign that account to this request."