1. Home
  2. Sage 50 Integration with the BigChange Platform.

Sage 50 Integration with the BigChange Platform.




This page provides details on common questions and “issues” with the Sage 50 integration with Job Watch


The below section covers the running and support of the integration

Frequently asked supporting questions – general

No Question Answer
1 How does the integration work? The integration tool is middleware software that is installed on a client or server machine. The integration routine reads a pre-defined configuration file and makes API and Sage data object calls to read data to and from JobWatch and Sage 50.
2 Where should the integration be installed? The integration should ideally be located on a server. The reason for this is that the integration uses a windows service to run an application executable. The application makes a number of connections to Sage 50, and must complete the process. If installed on a client machine, the machine may be turned off before the integration completes its process, whereas the server is always on
3 What if I do not have a server? You can install the tool on a client machine, but you need to be aware of how the integration works and you must ensure that service has been stopped and the integration completes its process before switching off your PC.
4 What do I need to do for the installation? When installing the integration, you will need the administrators username and password to ensure that the windows service has full permission. You will need to ensure that the folders that the integration requires have full read, write access.

The folder location is C:\ProgramData\BigChange\

5 My integration stops on the server and the user locks, why? This is caused by the server running automatic updates and it restarts the server when the integration is running causing the user to lock. You will need to liaise with your IT and make them aware of this so they can plan around it.
6 Do I need a Sage user for the integration? Yes, the integration requires an active Sage user in order to connect to the Sage data.
7 There are processes in Sage 50 which put the system in exclusive mode. How does this work with the integration? Where the system is put into exclusive mode, the integration will halt and will not continue until it can successfully connect and process. It is important to consider this as part of the operational running of Sage 50.
8 How do I upgrade my Sage 50? Sage 50 can be upgraded for minor versions (v7.1 to v7.2) and major version v27 to v28. Where a minor version takes place, you must ensure that all PC’s are upgraded. Where a major version takes place, you must contact us so we can arrange the change to your settings.
9 What happens if a user gets locked? An error note will be raised against the miscellaneous contact. You must log onto Sage 50 and remove the user using the Sage 50 user maintenance process.
10 How do I know if something has gone wrong? Where errors occur a contact note is created/updated with details of the error. Example below:


Alternatively, a log file is generated for each module which is located in C:\ProgramData\BigChange\LogFiles. The log file stores all activity that takes place for the integration.

11 What is the process for error notes? You must review errors on a daily basis and correct any errors that occur. You can set up alerts in JobWatch to popup as reminders and there is a note report that can be used to help with error processing.
12 Does the integration require a user licence? Yes. The integration requires a dedicated user licence to run the integration.
13 Why can I not use an existing user? The integration works in the same way Sage 50 does. You cannot log onto Sage 50 with the same user in two different locations.
14 If an invoice or other financial document is cancelled on BigChange, will that be reflected in sage? No. Sage does not have a means of cancelling a document outside of deleting it. If an invoice were to be cancelled on BigChange, there would be no information to sync to Sage. If an invoice were to be deleted on BigChange, the invoice in Sage would no longer have anything to connect to so the change would not update Sage.

General Errors

No Error What does this mean? How do I fix it?
1 Logon Failed Due To: Sage 50 Accounts is in Exclusive Mode i.e. File Maintenance The integration will not run whilst Sage 50 is in exclusive mode The integration will continue once the exclusive mode has been completed.
2 Logon Failed Due To: Wrong Version The integration is trying to integration with data that does not match the version of the Sage Data Objects When upgrading Sage 50 to a new version v27 to v28, you must ensure that the configuration has been set to the correct version.
3 Logon Failed Due To: Logon Count Exceeded The number of Sage licences has been reached You must ensure that there is a separate licence for the Sage 50 integration to avoid this issue.
4 Logon Failed Due To: Logon Name already in Use The integration user has got stuck.

This can be quite common where the integration is running and stops midway whilst connected to Sage 50. Issues often occur where the server or PC reboots whilst the integration is running.

You must discuss this with your IT to ensure that they plan for this type of occurrence. For example; the service can be stopped before the reboot takes place.

The sage user can be forced to logout to address this issue in the short term via the active sessions list in sage. (settings – user management – active sessions: highlight the integration user and click Remove)

5 Object Reference not set to an instance of an object This is an unhandled exception. It means that JobWatch is trying to pass a value to to a Sage field that is wrong. Review the note type – if its an invoice take a look at the document and see what is wrong. For example; is the Nominal code correct, is the department a numerical value matching Sage 50. If the item a stock or predefined item check the stock code and reference length.

Correct the issue and log it as a request for change.

6 “Bad data” error message/ application settings cannot be accessed The application settings are inaccessible to the integration, this can be caused by change of network on older integration versions or by an improperly saved settings change. The application settings can be restored from a setting backup held here: C:\ProgramData\BigChange\Config\Backup

You need to rename the ApplicationSettings.xml file in the config folder and drag the ApplicationSettings.xml file from the backup folder into the config folder then restart the integration.

7 Invoice reference not updated, new invoice reference ****** not unique. Invoices have been removed from sage and new invoices that have synced are being created with invoice numbers that already exist on JobWatch as a result. The next available invoice number in sage needs to be updated to reflect the next invoice number that would be used in BigChange. Sort the synced invoices in BigChange by their Invoice Number and identify what the next number would be, go to the settings tab in sage and click invoice and order defaults.
Click the options tab on the sub menu that opens and set the “Invoices start from” number to match the next number you will want to use in JobWatch. Invoices that have already received this error message will need to be credited in sage and re-synchronised.
8 The integration has stopped running, what do I do? The integration has stopped responding and no further action is taking place
  1. Check the log files – these are in (c:\programdata\bigchange\logfiles).The application log should tell you why the integration failed. Read the error from the list in this document and take the necessary action. If the error is not there, log the error and add it to the list of general errors and someone will add the reason and what to do.
  2. Check the miscellaneous contact note for any general errors. The miscellaneous contact should tell you if the system failed to start
  3. Go to Task Manager and review the apps running in the processes tab. There should always be a windows BigChangeIntegrationservice running and every minute, you should see a BigChangeIntegrationApplication.exe application run and then close.Review the BigChangeIntegrationApplication and see if it runs. If the BigChangeIntegrationApplication is shown and does not close after a couple of minutes, review the service log file in the log files folder. If the service is taking a long time because it is processing a lot of data, you should see the a counter.The routine attempts to run the integration but if the process is shown, it aborts and does this for 30 iterations of the service interval (this is held in the user interface and is usually set for 1 minute intervals). Wait for the 30 iterations and see if the process is aborted.The routine should now run. If it does not please contact the professional services developers to investigate.

    The integration runs every minute 24 hours a day, 7 days a week. There will be times when the PC or server is switched off. Similar to running Sage 50 manually, if you connect to Sage 50 and then switch your PC off, the application locks the user. We need to educate customers to switch off the windows service when they install updates and reboot machines to avoid this from occurring.

9 COM Class error – Class does not exist The Integration cannot connect to sage due to remote data access features not functioning as intended. The remote data access features need to be re-instantiated in order for sage to stop presenting a popup message that the integration is not equipped to navigate, this can be done by first stopping the integration service then by restarting the Sage 50 Accounts Control service v28 and the Sage 50 Accounts service v28 via the service menu.
10 Sage remote data access features are currently unavailable The Integration is unable to connect to sage due to an issue with the remote data access feature. Sage recommends several steps to address this issue though the most effective in the short term is to stop and then restart the following services:
– Sage 50 Accounts Service v**
– Sage 50 Control Service v**
In this case, the version number ought to match whichever version of sage the customer is using. if older versions of these services are running the customer should check that no sage companies are using the older versions and if not the older services should be disabled.


Frequently asked supporting questions – contacts

To synchronise contact data between JobWatch and Sage 50, there are a number things you need to take into consideration.

No Consideration What do I need to do?
1 How are JobWatch contacts linked to a Sage account? A JobWatch contact record is linked to Sage 50 customer or supplier account record by its unique account reference. The account reference is stored against the JobWatch contact record in Financials => Terms (see example below). To expose these fields, the financial integration type must be set. image.png
2 How does the integration know which contacts to synchronise? When you configure the integration, you will need to specify which of your JobWatch contact groups will be used for synchronising customers and which groups which will be used for synchronising suppliers. All customer and supplier contacts will have a unique account reference that matches the corresponding sales or purchase account and the account type will show whether the contact is in the sales ledger or purchase ledger
3 My contact groups contain a mix contacts, is this okay? The integration requires that the groups you specify contain only the contacts that will be synchronised against customers and which groups will be synchronised against suppliers. I.e. You cannot have a group containing account customers and account suppliers.
4 Can I have multiple groups with the same contact type? You can specify one or more groups as long as the group contains the same type of contact record.
5 Does it synchronise sites/depots? The integration does not synchronise these types of contacts. A site/depot will be linked to an account customer/supplier contact (parent contact), but it must be added to a group that is not specified for synchronisation.
6 What if the site has an account in Sage 50? Any contact that has its own account in Sage 50 (customer or supplier) must be added to that type of group of contacts that are being synchronised.
7 Do site contacts require the parents account reference? No. You must ensure that the account reference blank.
8 Which way do I synchronise? You can synchronise from JobWatch to Sage 50, or from Sage 50 to JobWatch. The direction you choose depends on you requirements. The question is whether you vet your Sage 50 customers/suppliers before you add them to JobWatch.
9 I want to synchronise contacts from JobWatch but want our accounts team to run a due diligence on new customers, is there a way to determine in Sage 50 if the account is new? There is an option called terms agreed which can be set to determine whether the account is new. Where a customer or supplier has not had the flag set against it, means that it is new and needs vetting.
10 I synchronise customers from Sage 50 but have a cash account, how does that work? When synchronising from Sage 50 to JobWatch, you must ensure that each account has an address. There is an option in the user interface that can be configured to ignore account references so any changes to these accounts (cash accounts) will not be reflected in the integration.
11 I want to synchronise from JobWatch to Sage 50, do credit limits, payment terms, account balances and account status still come from Sage 50 if I need them? Whilst the account balance and status will come from Sage 50, you can configure where the credit limits and payment terms come from.
12 I want to synchronise customers but not suppliers, is there a setting to control this? Yes.  There is a setting in the user interface to control what you want to synchronise.
13 What happens if I do not want to synchronise contacts – just the credit limits or balances? You can choose not to synchronise contacts and choose to synchronise credit limits, payment terms, account balances and or account statuses.
14 I see a message telling me that terms are not agreed – what is this? In Sage 50, when you have agreed your trading terms with your customer or supplier you should tick this box to confirm you have done it within each records. It is found in the credit control screen at the foot of the page. Once it is ticked it stops the message appearing each time you open the account record.
15 I want to synchronise newly created contacts from JobWatch to Sage 50 – how does the JobWatch contact record get its account reference? When synchronising from JobWatch to Sage 50, you have two options. You can manually add the account reference, or we can set the integration to automatic.
16 How is the account reference generated for a contact created in JobWatch When configuring the user integration, the user will specify the number of characters taken from the contact name and what number sequence to append.

Remember that you can only specify a total of 8 characters or less. Example; you choose 3 characters and append 001. The routine reads our contact record and when generating the reference, it takes 3 characters from contact name and appends 001. It reads Sage to confirm whether the account reference is unique. If not, it appends 002 and so on until the account reference is unique. It updates JobWatch and creates the record in Sage 50.

17 I am synchronising from Sage 50 to JobWatch but have accounts that are marked as inactive so do not exist in JobWatch. Do I have to enter these accounts in JobWatch? No. The routine ignores inactive customers or suppliers in Sage 50, so you do not need to enter these accounts in JobWatch.
18 I am synchronising from Sage 50 to JobWatch and they are live accounts but do not exist in JobWatch. Can these be synchronised? These contacts will need importing into your JobWatch system prior to the integration being switched on.
19 I operate multi-currency with a mixture of contact currencies for sales and purchase ledger accounts, but when I synchronise contacts from JobWatch to Sage 50 all of the contacts are created in my base currency. Where do I enter the currency? At present there is no mechanism for recording currency against a contact record in JobWatch and the country is a manual entry field.  As such, when the account record is created, you must manually add the country and update the currency in Sage 50.
20 What is a miscellaneous contact used for? A miscellaneous contact is created with the contact reference SG50MISC. It is created in JobWatch and is used to record any issue where the contact is not known.

For example; There was a problem when connecting to Sage 50. The following error was returned when trying to process contact records: Logon Failed Due To: Logon Name already in Use

Contact Errors

No Error What does this mean? How do I fix it?
1 Address cannot be geocoded This error message occurs when synchronising from Sage 50 to JobWatch. A customer or supplier created in Sage 50 must contain a valid address Enter an address for the Sage 50 customer or supplier
2 The automatic generation of the contact name for: a* is less than the length of 3 characters that were specified in the user settings. You must increase the contact name length or reduce the settings to accommodate this contact name. This error message occurs where the length of contact name is less than the specified characters to generate the name. Increase the size of the contact name to greater than the specified contact name generation length.
3 The account reference contains invalid characters for aass*’@@@. You cannot create or update an account in Sage with an invalid character containing @[*,()/]”) The Sage SDO prohibits the creation of account records with certain characters Change the contact name in JobWatch and remove the unwanted characters.
4 The credit limit for contact record xxxx exceeds the allowable field limit The credit limit in Sage 50 is limited to 9999999.99 The credit limit in JobWatch must be less than 9999999.99.
5 The settings are set to generate account references manually. A/c: xxxxx was created in JobWatch with no a/c reference When generating the account reference manually, you must ensure that the JobWatch contact has an account reference Add an account reference to the JobWatch contact record.
6 The account reference for contact xxxx is empty. The integration failed to populate the account reference. The system has been unable to generate an account reference for the contact Please contact RoadCrew to advise so we can investigate
7 The account reference contains invalid characters for this contact. You cannot create or update an account in Sage with an invalid character containing @[*,()/]””) The sage development kit prohibits certain characters being used to generate an account reference Please modify the account reference against this contact and remove any unwanted characters.
8 The account reference for this contact is greater than 8 characters Sage 50 is limited to 8 characters You must amend the contacts account reference and ensure that it is 8 characters or less

Invoices, Credit Notes and Purchase Orders

Frequently asked supporting questions – transactions

No Question Answer
1 What type of JobWatch transactions are synchronised? Invoices, credit notes and purchase orders are generated in JobWatch and are synchronised to Sage 50.
2 What is the process for posting purchase invoices? JobWatch does not cater for purchase invoices, only purchase orders. You can choose to create and synchronise a purchase order in JobWatch but anything after that is a manual process.
3 What information is required when posting an invoice or credit note? When entering an invoice/credit note, you must ensure that each line has at least a nominal code and tax code. Where the nominal code is empty, a default nominal code must be applied to the invoice header.
4 If I post a purchase order from JobWatch to Sage 50, how do I receive the stock? When you synchronise a purchase order from JobWatch to Sage 50, anything after process is manual. This means that you will need to receive stock in both JobWatch and Sage 50 and process the invoice in Sage 50.
5 Can I create a transaction in Sage 50 and synchronise it to JobWatch? Transactions are created in JobWatch only. Any transactions created or amended in Sage 50 will not update JobWatch.
6 If I amend a synchronised transaction in Sage 50, will it update JobWatch? No. Any amendments made to a transaction in Sage 50 will not be reflected in JobWatch.
7 Can I amend a JobWatch transaction after it has been synchronised with Sage 50? Once a transaction has been marked as send to financial package it cannot be modified.
8 At what point does a transaction synchronise to Sage 50? A transaction in JobWatch is synchronised when the invoice, credit note or purchase order is marked as send to financial package. The integration reads these transactions and updates Sage 50 accordingly.
9 Where do Invoices, Credit notes and purchase orders get posted to in Sage 50? Invoices and Credit notes can be posted either directly to the sales ledger or to the invoices and credits module, whereas Purchase orders are only posted to the purchase order module only.
10 If I enter an invoice or credit note against a site in JobWatch how does it get posted to the correct account? Invoices and Credit notes are posted to the account reference assigned to the contact or if empty to the parent contact associated with the site contact. Purchase orders are posted to the supplier contact associated with the purchase order.
11 Can I add negative lines to a sales invoice? The rules for posted negative lines are the same as posting a transaction in Sage 50. You cannot post negative lines for an invoice that is being posted directly to the sales ledger but you can add negative lines to an invoice that is being posted to the invoices and credits module.
12 Can I add lines to an invoice or credit note with a zero unit price? You can post an invoice with a zero line, either directly to the sales ledger or to the invoices and credits module as long as the total is greater than zero.

If you have a single line with a zero price, the invoice will fail to synchronise if posting directly to the sales ledger.

13 What types of invoice can I synchronise my JobWatch invoices to? When first setting up the configuration, you can choose whether to create service or product invoices in Sage 50
14 When creating an invoice in JobWatch with stock lines, what happens to the invoice in Sage 50? If you post invoices or credit notes as service items, stock items will appear as text items. If you posted invoices or credit notes as product invoices/credit notes, then stock items will synchronised but only if the stock record in JobWatch is linked to an item in Sage 50. See stock integration.
15 I used 3 decimal places for quantities, is this supported? Yes. You would need to configure Sage 50 to cater for 3 decimal places.
16 I create my invoices from Jobs and want the PO number from the Job to show on my invoice, is this possible? When creating a Job you can assign a PO number to the order number field.


When posting an invoice to the invoices and credits module, the order number field is displayed against the customer order number field in Sage 50. When posting the invoice to the sales ledger, you can set the option in Sage 50 to automatically update the “ex ref” field


If posting an invoice directly to the sales ledger, the order number will be automatically displayed against the transactions ex. ref field.

17 Can I post foreign currency transactions? In JobWatch you can set the currency of the transaction, but you must ensure that:

  • The currency of the sales account in Sage 50 matches the currency of the transaction
  • The currency exchange rate has been configured in the Sage 50 settings
18 I restored my Sage data and need to resynchronise invoices/credit notes in JobWatch that have been marked as completed, what is the process? To re-synchronise processed invoices/credit notes, the user must export the data out of JobWatch and import it into Sage 50 directly.
19 I restored my Sage data and need to resynchronise purchase orders in JobWatch that are have been marked as completed, what is the process? There is no import in Sage 50 to accommodate purchase orders, these transactions will need to manually entered. We would advise printing a PDF off of each PO and manually keying in the information into Sage 50.

Transaction Errors


No Error What does this mean? How do I fix it?
1 Transaction xxxx has a single line with a zero value. Sage 50 prohibits this type of transaction from posting directly to the sales ledger. You have a transaction with a single line that is zero in value.

You cannot post this type of transaction directly to the sales ledger

There is nothing that you can do. This transaction cannot be synchronised.
2 There is no customer account reference for xxxx When posting the transaction, the integration read the contact record and found no account reference assigned to it. It attempted to read the parent record (if exists) and also found no account reference. The contact or parent assigned to the contact requires a valid account reference.
3 Invalid Nominal Code for transaction: xxxx. The nominal code is missing or does not exist in Sage 50 Edit the transaction and add a valid nominal code and save to resynchronise the transaction.
4 There is an incorrect tax Code specified against one or more lines for transaction xxxx. The tax code is invalid on one or more lines for this transaction. The tax code should match the Sage 50 tax codes. Usually T1, T2 etc. Amend the transaction and correct the tax code and save to resynchronsie it to Sage 50.
5 Invoices take a long time to synchronise This is not an error with the integration.

The integration runs based on the frequency set in the configuration file.

There are routines in Sage 50 (I.e. Scheduled backup) that put the integration into what is called “exclusive mode”. Whilst in exclusive mode, the integration will not run.

There is no solution to this. The process is to review the scheduled backups and be aware of when the system is exclusive mode.
6 Invalid value when posting purchase orders When posting and adding stock or predefined items, the routine will attempt to populate the stock reference. Where the stockcode is greater than 30 characters, the routine will return the error “invalid value” Review any stock records/pre-defined items and ensure that the code/reference is less than 30 characters.
7 The currency for transaction xxxx does not match the currency on the account. The currency on the transaction is being posted a contact that is linked to a sales account in Sage 50 that has a different currency. Cancel the JobWatch invoice and raise a new invoice with the correct contact that matches a sales account with the correct currency.
8 The routine is unable to post a foreign transaction with no exchange rate against transaction xxxx}. The currency against the transaction in JobWatch has not been configured in Sage 50. Add an exchange rate against the currency in Sage 50. Edit and save the transaction to resynchronise it.
9 Transaction xxxx – The quantity on this transaction line must be positive You cannot post a transaction with a negative quantity. Duplicate the transaction and cancel the errored transaction.

Modify the line and remove the negative quantity and add a negative quantity against the unit price.

10 Transaction xxxx has a single line with a zero value. Sage 50 prohibits this type of transaction from posting directly to the sales ledger. You cannot post a transaction with a single zero line There is nothing that can be done. The integration cannot post this type of transaction.

Payments / Receipts

Frequently asked supporting questions – payments/receipts

No Question Answer
1 Can I pay invoices from JobWatch and Sage 50 You can pay invoices either from JobWatch or from Sage 50, not both.
2 Which bank account does it use? When paying an invoice, the routine will use the bank account associated with the transaction and where empty it will use the default bank account held in the configuration file.
3 Can I pay a foreign currency invoices from JobWatch? No. The integration routine does not cater for foreign currency payments. Where this is required, you would need to pay the invoice from Sage 50.
4 Does the system cater paying invoices from JobWatch where Sage is registered for cash accounting? We do not support payments from JobWatch where the VAT scheme of Sage 50 is cash accounting due to the complexity of splitting the net and vat amounts. The suggestion is to pay invoices from Sage 50.
5 Can I part pay an invoice in JobWatch/Sage 50? You can pay up to and including the amount of the invoice from JobWatch or Sage 50.

When paying an invoice from Sage 50, the part payment amount is posted to the invoice. When posting the next payment, the original payment in JobWatch is replaced with the total amount paid. I.e. It will only ever show one payment, not the individual part payments.

6 Can I overpay an invoice? No.
7 How do I process refunds in JobWatch? Where discounts / refunds are required, you would need to process these manually in Sage 50.
8 I pay invoices from JobWatch and allocated a credit note against the invoice directly in Sage 50. The invoice only shows as part paid, why? When posting from JobWatch, it only records the receipts recorded. When you enter a credit note against the invoice in Sage 50, it does not update JobWatch.

Whilst you can process payments in JobWatch, we do advise that payments are done in Sage 50 for this very reason.

9 I’ve incorrectly paid an invoice in JobWatch, how do I correct this? You would need to mark the invoice as unpaid and correct the corresponding transaction paid in Sage 50
10 I want to start processing payments from JobWatch from a date, is this possible? When configuring the integration, you will be able to choose the start date of the integration. Payments will be processed from this point forwards.

Payment Errors


No Error What does this mean? How do I fix it?
1 A payment has been recorded for an invoice whose account reference does not exist in Sage 50. Account: . Please check both your JobWatch and Sage 50 system. The account reference for the specified invoice no longer exists Please check both Sage 50 and JobWatch to confirm the records exist.
2 The payment value against invoice xxxx is greater than the amount outstanding on the invoice in Sage 50. This payment will not be processed. The invoice has already been paid and the payment being recorded is greater than the amount outstanding. If you are posting a payment in JobWatch to match an invoice that was previously made in Sage 50, then you can ignore this error.

However, where the Sage 50 paid invoice is incorrect, then you will need to reconcile your payments in Sage 50 to confirm what should/shouldn’t have been paid.


BigChange and Sage 50

BigChange and Sage 50



Email This Post Email This Post
Updated on 18th July 2022