How it works
Hold Transactions From Invoice is a feature that allows the bill run to create statements / statement details normally, without creating the invoice. This allows an administrator to look at the charges before they have been attached to an invoice and make any necessary changes. There are two main parts to this process. First, a global setting determines whether the bill run should hold a transaction. Second, a bill run setting determines whether the transaction should be attached to an invoice.
Global configuration setting "Hold Transactions From Invoice"
This controls what happens during a bill run with regards to adding a transaction / statement to an invoice when transaction is created
When performing a bill run, the transactions (i.e. statement / statement details records) will be created as normal. The difference comes when deciding what to do with the statement once it has been created:
True (Checked): The statement will not be associated with an invoice (no InvoiceStatementConnector record)
False (Unchecked, default) : The statement will be attached to an invoice
This is the normal behaviour for adding bill run charges pre-9.3.0 and remains the default behaviour
Bill Run Setting "Attach Held Transactions"
This controls what happens during a bill run with regards to adding a transaction / statement after all of the transactions have been created.
True (Checked, default): The bill run will look and see if there are any valid statements that are being held. Any statements found will be attached to the invoice
False (Unchecked): The bill run will ignore held statements
Statements that follow the following criteria will be attached to the invoice
The charge must occur within the current bill run's billing range (or is a one-time package, which do not have dates)
The charge must be related to one of the bill groups on the current bill run
Attaching a held transaction occurs AFTER the bill run has created all transactions. This means that if the system is holding transactions and the bill run is set to attach held transactions, the bill run will first create unattached statements, and then will attach those transactions within the same bill run.
Once a transaction is attached to an invoice, there is no way to unattach the transaction from the UI.
UI changes to the application
Changes that are always visible
Configuration page
New setting "Hold Transactions From Invoice" (checkbox)
Bill Run Edit page
New setting "Attach Held Transactions" (checkbox)
Changes when global setting "Hold Transactions From Invoice" is enabled
Packages Tab → Add (or similar pages)
"Bill Now" checkbox is hidden. User cannot use the Bill Now feature while Hold Transactions is enabled
Tools Tab
Bill Account link is hidden. User cannot bill a user through this feature while Hold Transactions is enable
Changes when global setting "Hold Transactions From Invoice" is enabled OR there is at least 1 held transaction for the current account
Transaction Tab
New Table "Held Transactions" will show any held transactions
This table works similar to the Transaction table (similar columns / values)
If holding transactions, the user has the following actions:
Add → Add a new transaction manually. This transaction will be held from an invoice until it is attached by the bill run
TaxAdj → Add a TaxAdj record. This will be held from an invoice until it is attached by the bill run
Reverse → Add a reversal record which reverses a held transaction. These records will be associated with the same statement and, when attached, will show up on the same invoice
New table "Held Credits" will show any held credits (see below for more information)
This table works similar to the Credits table (similar columns / values)
If holding a credit, the user has the following actions:
Add → Add a new credit manually. This credit will be held from an invoice until it is attached by the bill run
TaxAdj → Add a TaxAdj credit. This will be held from an invoice until it is attached by the bill run
Reverse → Add a reversal credit, which reverses a held credit. These records will be associated with the same statement and, when attached, will show up on the same invoice
Attach / Hold All → Any credits in the currently filtered view will be marked as ready for attach / not ready for attach. Only credits ready for attachment will get picked up by the bill run for disbursement
Report changes to the application
There are two new reports that have been added to the Reports tab
Held Transactions → Displays information about any transactions (statement details) that are under hold by the system
Taxes Payable for Held Transactions → Similar to the Taxes Payable report, this will show any outstanding taxes against transactions under hold of the system
In addition, transactions under hold will show up in reports that display transactions.
Logic changes to the application
When Hold Transactions is active:
API calls that use a "BillNow" parameter will fail when the parameter is set to true
XML Import will still allow statements / statementDetails to be created. These records will be held from an invoice until they are attached through the bill run
Bill Run Changes
When creating a statement, it is not attached to an invoice
If the Bill Run is set to attach transactions, it will do so after the transactions have been created
Auto-Pay will not consider held transactions when determining the amount to pay
A number of reports have been updated to reflect held transactions
Balance Pills (at the top of the screen) will not include transactions under hold. The exception to this is the "Full Balance" pill, which is responsible to tracking all charges in the system
Holding Credits
Holding a credit works similarly to holding a transaction. A held credit is
Not issued to an invoice right away
This can be attached to an invoice through the bill run the same way a transaction is attached to an invoice
Note, there is also a flag per-credit that can be set by the user to prevent the bill run from attaching specific credits
Cannot be disbursed to an invoice until it has been attached
If the credit is created for auto-disbursement, the credit will be auto-disbursed once attached to an invoice