Credit Control in OpenCRM
It is possible to implement credit control methods in OpenCRM. The system can be configured to prevent Sales Orders and Invoices being created against Companies who are over their credit limit.
To enable this, head to Settings > Additional Settings > Credit Check Settings and tick the Enable Credit Check... option
The other settings you can adjust are:
Default Credit Limit... - the default credit limit to be applied to company records. This value is entered set in any new company records, and applies to any existing company records that do not have a credit limit value set. The credit limit is the maximum amount an account can be overdue before the system implements credit control mechanisms on sales order creation.
Default number of days... - the default number of balance days to apply to a company record. The balance days field specifies how long a company has to clear it's balance before it is considered "Overdue".
Credit Rating Administrator - Credit admins / controllers can override credit warnings when creating Quote, Sales Order or Invoice and receive email notifications when a sales order is created against a company that is already over their credit limit. Several credit admins can be specified by typing a list of usernames separated by semi colons.
Require Company Credit Check - this will switch on automated credit checking at Company level.
Field to use for Credit Check - if the above option has been enabled, you need to specify which value to use from the following options:
- Current Outstanding balance as shown in OpenCRM
- Current Overdue balance as shown in OpenCRM
- Current Outstanding balance as shown in Sage (this could be different to the balance in OpenCRM if Sage includes balances that were in Sage prior to OpenCRM integration)
Enable Credit Checking from within Quotes - this offers you the same functionality that you have on Sales Orders, but using the Quotes module instead.
Credit Control On Company Record
When looking on a company record, a band of fields called "Credit Control" is visible.
Current Spend - please see this FAQ: https://opencrm.co.uk/help/?kb=773522&article=How-can-I-track-spend-variances-variations-on-the-accounts-companies-I-deal-with-What-is-the-%60Current-Spend%60-field-for
Account Type - This feeds into the Sales Order process, and activates different credit check procedures dependent on what is selected (see Sales Order section)
Balance Days - As above, the number of days before which invoices are considered overdue. Can be changed in the edit view, and will default to the system settings.
Opportunity YTD - this field auto-displays the value of won Opportunities for the current year.
Credit Limit - This can be set in the edit mode providing the user has access rights to the field. As described above, this is the maximum overdue balance allowed on the account before credit control is applied
Credit Check On/ By - Specify when/ who performed a credit check on the company - this affects the sales order credit check process.
Credit Status - You can override credit control to force credit check to fail by selecting any of the "(On Hold)" credit statuses.
Outstanding Balance - Total outstanding amount from all unpaid invoices against the account
Overdue Balance - Total outstanding amount of invoices that are older than the allowed number of days (balance days) before payment. If this total is larger than the Credit Limit, then credit control will be applied to the account.
Editing the Credit Control Notification Email
It is possible to modify the text in the notification email sent to credit controllers when a sales order is created against a company who are over their credit limit.
Go to Settings > Communication Templates > Inventory Notifications and in here you will find the Over Credit Limit Warning email. You can then click on the subject to go into edit mode and change the email text.
Controlling Access to Credit Control Fields
As access to credit control fields can allow users to manipulate the values to get around the systems credit control functionality, it may be advisable to limit access to these fields.
This can be done using the standard field security layer, which allows access to certain fields to be denied based on the profile applied to the user. See Settings > Field Accessibility
Updating Credit Control Balances
A daily script runs, updates the outstanding and overdue balances on all Company records. By editing an invoice, or payments against an invoice, the balances on the linked company will be updated accordingly.
Basic Credit Control on Overdue Balances
Credit control mechanisms are implemented on the creation of Sales Orders and Invoices.
If you attempt to create a Sales Order or Invoice linked to a company whose overdue balance exceeds their credit limit, or is placed on hold, you will be presented with a warning. This happens on attempting to save the record, on attempting to link the company, or when trying to create the Sales order or Invoice from the company record.
If an Invoice is created from a Sales order record, either from a standard or recurring sales order, from a sales order grid, or from the "Invoice" button on a sales order itself, a credit check will be done on attempting to save the new invoice.
If an Invoice or Sales Order is duplicated, a check will be done on attempting to save the new record.
Users who are System Admins, or Credit Rating Admins can choose to ignore the warning and create the Sales Order anyway. Standard users, cannot proceed any further.
If an admin user overrides the warning, the sales order is created, but an email is sent to the specified credit controllers, and a log of the transaction is made in the system log table.
More Advanced Sales Order Credit Control Mechanisms
When adding a sales order, there is a "Payment Type" field - The credit check process on the individual sales order is dependent on this field
Credit Account - When saving the sales order, a check is done against the Company record. If the company has not been credit checked (no credit check date), then the Sales Order is set as "Awaiting Clearance"
Cash With Order - When saving the Sales order, the "Payment Date" field (on the sales order) is checked. If this is not completed, then the Sales Order is set as "Awaiting Clearance"
Lease Deal - When saving the Sales order, if not all of the lease fields are complete on Sales Order (Lease Date, Leased By), then the Sales Order is set as "Awaiting Clearance"
Enforcing Sales Order Authorisation
There is a tickbox on Sales Orders called "Requires Financial Authorisation". If this is ticked, only a system or financial admin user will be able to edit or work with the particular Sales Order (e,g, Create PDFs).
There is an option in the Additional Settings Screen under "Sales Order Settings" which, when turned on ensures this tickbox is ticked by default (even if a user unticks it, it will be re-ticked on save)
A financial admin user can access, edit and untick the authorisation button. Note that when a non-admin user edits the record again, the tick box will be re-ticked.
The Sales Order owner will be sent a notification that it has been authorised if the setting "Send an email to the assigned user when authorisation is granted" is turned on in the same settings section.
Finally, a user can be flagged as a "Financial admin" in their user settings by ticking the "Financial Administrator" tick box.
The "Requires Financial Authorisation" feature can also be activated for Quotes and Invoices
Footnote on Sage Integration
There are a few things you will need to keep in mind when using Credit Control in OpenCRM alongside your Sage integration.
Update Credit Limit and Status from Sage
If you have Sage integration enabled, you can (optionally) update the Credit Limit and Credit Status fields on a Company automatically from your Sage data.
This is controlled by the two settings under the Settings > Additional Settings > Sage Integration Settings:
Updating Outstanding Balances From Sage
Also, optionally, the outstanding amounts on Invoices, and therefore companies, can also be updated from Sage, if this has been configured for you. This requires the Invoice numbers in OpenCRM and in Sage to match.