SharePoint Setup Page
The SharePoint Setup page is the central configuration hub for the SharePoint Connector. This page walks you through each field and section.
Accessing SharePoint Setup
- Search for "SharePoint Setup" in Business Central
- The setup page opens showing all configuration options
Setup Page Sections
Setup
This group contains the core fields that define your SharePoint location and authentication configuration.
Connection Fields
| Field | Description | Example |
|---|---|---|
| Base URL | Your SharePoint tenant URL | https://contoso.sharepoint.com |
| Subsite Name | Subsite path (optional, no leading /) |
sites/finance, teams/projects, BCDocs, or blank |
Note: The Document Library (base folder) field is part of the Folders and Integration group, not the Setup group. See the Folders and Integration section below.
Base URL
- A warning is shown if it does not end with
sharepoint.com(non-blocking) - Do not include trailing slash
- Do not include the site path here
Subsite Name
- Leave blank for the root site
- Enter subsite path without leading slash
- A leading
/is silently stripped via TrimStart (not rejected) - Valid examples:
sites/BCDocs- for a site under /sites/teams/BCDocs- for a Teams siteBCDocs- for a subsite directly under the root (without sites/ prefix)
- Invalid examples:
https://contoso.sharepoint.com/sites/BCDocs- do not include full URL
Authentication Fields
| Field | Description | Options |
|---|---|---|
| Authentication Method | How users authenticate | Proxy, Personal, Certificate |
| Microsoft Login Method | Login flow type | App Registration, Device Code, Modern App Registration, PKCE |
| Azure Cloud | Microsoft cloud environment | Public, US (Government) |
Authentication Method
- Proxy: Single shared account for all users
- Personal: Each user authenticates individually
- Certificate: Certificate-based authentication
Microsoft Login Method
- PKCE (default for a new setup): Browser sign-in without a client secret, with the connector's app registration (Client Id blank, Business Central Online only) or your own public client app registration (Client Id filled in)
- Device Code: Sign in on a Microsoft page with a one-time code, using the connector's app registration (no app registration, no pop-up)
- Modern App Registration: Your own app registration with a client secret, signing in through the standard Business Central OAuth sign-in and redirect URL
- App Registration: Your own app registration with a client secret and the connector's own callback page
The page greys out the fields the selected login method does not use. See Authentication Methods for a comparison.
App Registration Fields
These fields identify your app registration in Microsoft Entra:
| Field | Description | Used by |
|---|---|---|
| Client ID | Azure AD Application ID (GUID format) | App Registration, Modern App Registration, PKCE (optional: blank = connector's app registration), Certificate authentication |
| Client Secret Value | Application secret value (not a GUID) | App Registration, Modern App Registration |
| Entra Tenant Id | Directory (tenant) ID of the app registration | Modern App Registration and PKCE, optional |
| Callback URL | OAuth redirect URI, must match a redirect URI in the app registration | App Registration: must include page=70319501. Modern App Registration and PKCE: the Business Central OAuthLanding.htm page |
Client ID
- From your Azure AD app registration
- Format:
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx - A warning is shown if the value is not a valid GUID (non-blocking). A blank value is valid: PKCE then uses the connector's app registration
- When you switch the Microsoft Login Method to PKCE while a Client Id is filled in, a message reminds you that PKCE will sign in with that app registration, which must be set up as a public client
Client Secret Value
- Secret value (not the secret ID)
- Created in Azure AD under Certificates & secrets
- Stored in encrypted IsolatedStorage (the underlying table field is marked obsolete; the setup page reads/writes the secret through
GetClientSecret/SetClientSecret) - A warning is shown if the value IS a GUID, suggesting you may have copied the Secret ID instead of the Secret Value (non-blocking)
- Not used by PKCE and Device Code (public clients)
Entra Tenant Id
- Used by Modern App Registration and PKCE (the v2.0 sign-in address contains the tenant)
- The Directory (tenant) ID from the app registration's Overview page (a GUID, or a verified domain like
contoso.onmicrosoft.com) - Modern App Registration, blank: the Microsoft Entra tenant of the Business Central environment is used (
commonif it cannot be determined). Fill it in on-premises when Business Central does not use Microsoft Entra authentication and the app registration is single tenant - PKCE, blank: the
commonendpoint is used, which is right for the connector's multi-tenant app registration. Fill it in when your own app registration is single tenant - A single-tenant app registration signed in through
commonfails with AADSTS50194
Callback URL
- Must match a redirect URI in Azure AD: under Authentication > Web for App Registration and Modern App Registration, under Mobile and desktop applications for PKCE with your own app registration
- Filled in with the right default when you select the Microsoft Login Method
- App Registration: must include
page=70319501, e.g.https://businesscentral.dynamics.com/contoso/BC?page=70319501 - Modern App Registration: the standard Business Central OAuth landing page, e.g.
https://businesscentral.dynamics.com/OAuthLanding.htm(the same for all online environments). Only change it if your on-premises web client is reached through a different public URL - PKCE: the same
OAuthLanding.htmpage, keep the default (it is the redirect URL registered on the connector's app registration; with your own app registration register it under Mobile and desktop applications) - With Modern App Registration and PKCE, a Callback URL that does not end in
OAuthLanding.htmis ignored and the Business Central default landing page is used - Not used by Device Code
Certificate
| Field | Description |
|---|---|
| Certificate | Indicator showing whether a self-signed certificate is loaded. Used when Authentication Method is Certificate. |
- The Certificate field is read-only and shows the current state from IsolatedStorage (
PRIVATECERTkey). - Use the assist-edit (
...) action on the field to generate a new self-signed certificate. You are prompted to confirm because creating a new certificate replaces any existing one. - The certificate is required when Authentication Method is set to Certificate.
Report Layout Selection
| Field | Description | Default |
|---|---|---|
| Report Layout Selection | Chooses which Document Template flavor the Generate Document action uses. Custom Report Layout uses the legacy Document Templates (table 70319503, page 70319505) bound to BC Custom Report Layouts. Report Layout uses the modern Document Templates (table 70319495, page 70319519) bound to entries in the BC Report Layout List. |
Report Layout |
This field lives in the Setup group and is visible by default. Changing it changes which template list is opened when a user runs Generate Document from the SharePoint FactBox. See SharePoint Document Templates.
Setup Help
The Setup tips and tricks link in the Setup group opens the SharePoint Connector YouTube playlist (https://www.youtube.com/playlist?list=PLowctfi3tRdHHiyoJhcwBawgSBx5bdWZE) in a new browser tab.
Hidden Fields
The following fields are part of the Setup group but are hidden (Visible = false) by default:
| Field | Description | Default |
|---|---|---|
| Separate Access Token per Company | Maintain separate OAuth tokens per company | Off |
| Activate Debug Mode | Enable extra debug telemetry | Off |
Status
This group shows the current state of the connector.
| Field | Description |
|---|---|
| Connection Status | Whether the connector is currently connected to SharePoint |
| Tables Mapped | Number of Business Central tables mapped to SharePoint folders |
Folders and Integration
This group contains the document library, auto-upload, file behavior, and print settings.
Document Library (base folder)
| Field | Description | Example |
|---|---|---|
| Document Library (base folder) | Document library path | Shared Documents |
- Path to the document library
- Usually
Shared Documents(default) - Do not include a leading slash (leading slashes are stripped)
- A warning is shown if the value contains any
%character (non-blocking) - A warning is shown if the value contains
sites/anywhere (non-blocking) - use the Subsite Name field instead
Auto-Upload Fields
| Field | Description | Default |
|---|---|---|
| Auto-Upload Sales Documents | Enable for sales invoices/credit memos | Off |
| Auto-Upload Purchase Documents | Enable for purchase invoices/credit memos | Off |
| Auto-Upload Sales Shipments | Enable for sales shipment documents | Off |
| Auto Upload Process | Background or Foreground processing | Background |
Auto Upload Process
- Background: Uses background sessions (recommended)
- Foreground: Immediate upload during posting (blocks the user)
File Behavior Fields
| Field | Description | Options |
|---|---|---|
| File Open Operation | How files open when clicked | Web Link, SharePoint UI |
| Name Sanitizing | How special characters are handled | Strict, Relaxed |
File Open Operation
- Web Link: Opens file directly in browser
- SharePoint UI: Opens SharePoint interface around the file
Important: Selecting "SharePoint UI" while the Document Library (base folder) contains a
/(i.e., points to a subfolder) raises a blocking error:Your Document Library can't contain subfolders when using the SharePoint UI.
Name Sanitizing
- Strict: Converts non-alphanumeric characters to underscores
- Relaxed: Allows more characters in folder names
Print to SharePoint Fields
| Field | Description | Default |
|---|---|---|
| Print to SharePoint Folder | Destination folder for printed docs | Print |
| SharePoint Printer Papersize | Default paper size (free-text Text[20]; example values Letter, A4) |
Letter |
Note: Leading slashes in the Print to SharePoint Folder value are stripped.
Hidden Fields
The following field is hidden (Visible = false) by default in the Folders and Integration group and must be personalized to appear:
| Field | Description | Default |
|---|---|---|
| Enable Check In/Out in UI | Enable check-in/out controls in the FactBox (requires Personal authentication) | Off |
e-Signature
This group provides links to configure electronic signature integrations.
| Link | Description |
|---|---|
| Adobe Sign Setup | Opens the Adobe Sign configuration page |
| DocuSign Setup | Opens the DocuSign configuration page |
Incoming Documents
This group contains settings for incoming document processing and OCR.
| Field / Link | Description |
|---|---|
| Incoming Document Sources | Link to configure incoming document sources |
| Azure Computer Vision | Link to configure Azure Computer Vision |
| OCR Service URL | URL of your OCR service |
| OCR Subscription Key | API key for OCR service |
Actions on the Setup Page
Connect
Initiates the OAuth authentication flow:
- Click Connect
- Browser window opens for authentication
- Sign in with appropriate credentials
- Grant requested permissions
- Return to Business Central
Disconnect
Clears the stored authentication tokens:
- Click Disconnect
- Confirm when prompted
- Connection status changes to "Not connected to SharePoint"
Table Mapping
Opens the SharePoint Table Mapping page where you configure which Business Central tables have corresponding SharePoint folders.
License/Register
Opens the registration page to activate your SharePoint Connector license.
About
Opens the "About SharePoint Connector" page, which shows version information and other details about the extension.
Validation Rules
The setup page mostly shows non-blocking warnings to help catch common configuration mistakes. These warnings do not prevent you from saving the record.
| Field | Warning Condition |
|---|---|
| Base URL | Shows a warning if it does not end with sharepoint.com |
| Subsite Name | A leading slash is silently stripped via TrimStart (no warning) |
| Client ID | Shows a warning if the value is not a valid GUID format |
| Client Secret Value | Shows a warning if the value IS a GUID, suggesting you may have copied the Secret ID instead of the Secret Value |
| Document Library (base folder) | Shows a warning if it contains any % character |
| Document Library (base folder) | Shows a warning if it contains sites/ anywhere in the value |
There is one blocking validation: setting File Open Operation to "SharePoint UI" while the Document Library (base folder) contains a / raises the error Your Document Library can't contain subfolders when using the SharePoint UI and prevents the change.
Step-by-Step Configuration
Minimum Required Configuration
- Base URL: Enter your SharePoint URL
- Document Library (base folder): Enter your document library path
- Authentication Method: Choose Proxy or Personal
- Microsoft Login Method: Choose App Registration, Device Code, Modern App Registration or PKCE
- If PKCE (the default):
- Leave Client ID blank to use the connector's app registration (Business Central Online)
- Or enter the Client ID of your own public client app registration, add the Callback URL (
.../OAuthLanding.htm) to it under Mobile and desktop applications, and enter the Entra Tenant Id if it is single tenant
- If Device Code: nothing else to fill in
- If App Registration:
- Enter Client ID
- Enter Client Secret Value
- Enter Callback URL
- If Modern App Registration:
- Enter Client ID
- Enter Client Secret Value
- Enter the Entra Tenant Id when Business Central runs on-premises without Microsoft Entra authentication
- Add the Callback URL (
.../OAuthLanding.htm) to the app registration
- Click Connect
Recommended Configuration
In addition to minimum:
- Set File Open Operation preference
- Configure Auto-Upload if desired
- Set Name Sanitizing based on needs
Common Configuration Scenarios
Simple Setup (PKCE)
For quick setup or small organizations on Business Central Online, no app registration needed:
| Field | Value |
|---|---|
| Base URL | https://contoso.sharepoint.com |
| Document Library (base folder) | Shared Documents |
| Authentication Method | Proxy |
| Microsoft Login Method | PKCE |
| Client ID | (blank) |
| Callback URL | https://businesscentral.dynamics.com/OAuthLanding.htm (filled in automatically) |
Simple Setup (Device Code)
For quick setup without pop-ups, also on-premises:
| Field | Value |
|---|---|
| Base URL | https://contoso.sharepoint.com |
| Document Library (base folder) | Shared Documents |
| Authentication Method | Personal |
| Microsoft Login Method | Device Code |
Enterprise Setup (App Registration)
For larger organizations with central control:
| Field | Value |
|---|---|
| Base URL | https://contoso.sharepoint.com |
| Subsite Name | sites/erp-documents |
| Document Library (base folder) | Documents |
| Authentication Method | Proxy |
| Microsoft Login Method | App Registration |
| Client ID | (from Azure AD) |
| Client Secret Value | (from Azure AD) |
| Callback URL | (your callback URL) |
Enterprise Setup (Modern App Registration)
For larger organizations that want their own app registration and one redirect URL for all environments:
| Field | Value |
|---|---|
| Base URL | https://contoso.sharepoint.com |
| Subsite Name | sites/erp-documents |
| Document Library (base folder) | Documents |
| Authentication Method | Personal |
| Microsoft Login Method | Modern App Registration |
| Client ID | (from Azure AD) |
| Client Secret Value | (from Azure AD) |
| Entra Tenant Id | (blank on Business Central Online) |
| Callback URL | https://businesscentral.dynamics.com/OAuthLanding.htm (filled in automatically) |