Last updated: September 21, 2026
Diagnostics in CustomerGate 365
When something is wrong, start here. CustomerGate Diagnostics puts everything about this installation on one screen: the environment, the versions, the modules, both job queue entries, every web service, the counts per status, what the cleanup job would process tonight, and the connection test for each account the website signs in with. Every line says in one sentence what it means, and nothing is ever repaired unless you ask for it.
What is on the screen
At the top is the summary: Showing (everything, only the connection test, or only the cleanup preview), Environment, Failed, Warnings, and the line stating that this screen holds no personal data. Below it there is a line per part:
- Environment
- The name and type of the environment, and whether the copy guard is active.
- Licence
- The status of the licence, the plan in effect, the licence number and the end date, and a key that does not apply here. Fix opens CustomerGate Licence.
- Application
- The version of CustomerGate 365, the platform and application versions, and the company.
- Modules
- Whether Steel 365 and the document archive are detected, and where the portal gets its documents from.
- Job queue
- The state of the mail job and the cleanup job. An entry that is not set to Ready never runs.
- Web services
- Per web service, whether it is published and not switched off.
- Setup
- The two number series, the notification address and the e-mail account.
- Customer portal
- The portal address and the limits around signing in.
- Requests
- The counts per status, the counter visits and the active portal users. Counts, not records.
- Website account, Synchronization account
- What the connection test found for each Entra account.
- Tenant permission sets
- Whether the sets are at the version this app writes. Permission Gaps shows the difference per object.
- Cleanup preview
- What a cleanup run would process right now.
- Telemetry
- Whether this installation sends telemetry.
The verdict per line
Every line carries a verdict, a one-sentence explanation and sometimes a repair.
- Passed
- This part is in order.
- Warning
- It works, but there is a gap in it: a tenant permission set from an older version, a notification address left empty.
- Failed
- This does not work, and a customer notices it today.
- Information
- A line that judges nothing but reports something: the name of the environment, the number of requests per status.
Failed and Warning are kept apart on purpose. Put them on one pile and you get a screen that is always red, which is exactly as useful as a screen that is always green.
Fix, and never by itself
The Repair column says which repair a line offers. The Fix action carries it out, and only that action: nothing is ever repaired because you opened or refreshed this screen. There are five repairs:
- Repair Permissions
- Creates or corrects the tenant permission sets and assigns them. Lines that someone added by hand are kept.
- Publish Web Services
- Publishes the web services CustomerGate needs. An existing service is never overwritten.
- CustomerGate Setup
- Opens the settings, for a line that can only be solved by filling something in.
- This Is the Real Environment
- Adopts this environment and lifts the block the copy guard put on it. See below.
- CustomerGate Licence
- Opens the CustomerGate Licence page, for a line under Licence that needs attention.
A line with no repair of its own says so in a message; its explanation then says where to look. Show Records opens the records behind a counted number, so it is clear what exactly was counted.
Test Connection
Test Connection shows the connection test alone. It checks, per account that the website signs in with:
| What is checked | When it fails |
|---|---|
| The user behind the Client ID exists, is enabled and is of licence type Application | Repair Permissions never ran, or the application was disabled. |
| Every permission set is assigned: the app's own sets and the tenant sets | An environment copy, or a Client ID that was filled in later. |
| The tenant permission sets carry what this version of the app writes | The sets were written by an older version. This is the most common cause of a call that worked yesterday. |
D365 BASIC is not on the website account | Someone put it back. That set gives read access to customers, contacts, sales documents and margins. |
| Every web service is published and not switched off | An environment copy, or someone removed one by hand. |
| The setup is complete: both number series, the notification address, the e-mail account | Go-live was never finished. |
The same action sits on CustomerGate Setup and on the Microsoft Entra Applications list. Permission Gaps tells the same story per object: expected next to granted, differences only.
Preview Cleanup
Preview Cleanup reports, without changing anything, how many quote requests, account requests, acceptances, portal users, sign-in codes and portal sessions are past the retention period today, the oldest date involved, and how many of them cannot be fully erased because the text also sits on a posted document. Each line drills down to the records behind it.
It is not a second calculation that could drift: the preview runs the cleanup code itself, with a flag that stops it before its first write. The number on the screen is therefore the number that will be processed. With cleanup switched off, or with no retention period, the preview shows zero, because that is exactly what a run would then do.
The copy guard
CustomerGate remembers the environment in which its settings were adopted. If this company came from somewhere else, the summary says so in red. In a sandbox the app then blocks all outgoing e-mail and puts the mail job and the cleanup job on hold; in a production environment it changes nothing and only shows the banner, because taking a live environment down over a suspicion would break the website.
If the environment is correct, choose This Is the Real Environment. The question that follows says what that means (from then on, confirmations, notifications and sign-in codes reach real customers again), and a second question sets the two job queue entries back to Ready. After copying an environment, also choose Repair Permissions: a copy carries the Entra registrations and the web services of the source environment.
The report
At the bottom the whole screen appears again as Markdown, ready for a support e-mail. It contains counts and states only: no e-mail addresses, no names, no customer numbers and no document numbers. The report is in the language of your session, title and table header included.
- Choose Copy Report. The message points at the Report box at the bottom of the screen.
- Click in that box and press Ctrl+A to select everything.
- Press Ctrl+C. Business Central has no function to put text on the clipboard itself, so this detour is needed.
- If you would rather have a file, choose Download Report.
Telemetry is deliberately not here
The app sends telemetry events to Application Insights, but AL cannot read them back. They therefore cannot appear on this screen, and a screen that pretended otherwise would be worse than no screen. Look for them in Application Insights itself, under the events whose code starts with VOA.
Start here
When the report is that the website is not working, this is the first screen to open. What sits behind it is almost always a job on hold, a tenant permission set from an older version, a web service an environment copy did not bring along, or an e-mail account nobody set up. If you get no further, send the report along with your question.
Related help
- CustomerGate Setup
Every setting and status line on the setup page.
- CustomerGate Permission Gaps
What the app expects next to what is granted, per object.
- Troubleshooting
Common symptoms and where to look first.
- Support
How to ask for help, and what to send along.