Salesforce SharePoint Integration: Options, Setup, and Limits

By: Rajeshwari Jain | Updated: October 31, 2026 | 13 min read
Sharepoint to Salesforce integration

Salesforce SharePoint integration lets you link Salesforce records to documents in SharePoint or move Salesforce data into workbooks stored there. You can do this using Files Connect, AppExchange apps, Power Automate, middleware, or custom APIs. The best choice depends on whether you want to access files, share documents, or sync Salesforce data.

What Salesforce SharePoint Integration Means

Salesforce SharePoint integration can refer to connecting documents to Salesforce records or transferring Salesforce data to workbooks stored in SharePoint.

Files: Documents stay in SharePoint, and Salesforce shows links or lets you open them from related records. This reduces Salesforce file storage, prevents duplicate copies, and makes it easier for teams like HR, finance, and legal to share documents. People without Salesforce licenses can still access files in SharePoint if they have the right permissions.

Data: Some teams use this integration to export Salesforce records or reports to Excel workbooks in SharePoint and refresh them on a schedule. Microsoft Power Automate’s Salesforce connector is a Premium connector. It lets you get, create, update, and delete Salesforce records depending on your permissions and connector limits. You can set up a flow to move Salesforce data to SharePoint lists, but this does not create two-way sync. One-way flows work but can be hard to maintain.

If you need Salesforce data in Excel rather than document integration, XL-Connector 365 can pull Salesforce records into workbooks stored in SharePoint or OneDrive and refresh the data on a schedule.

Why Connect Salesforce and SharePoint?

Connecting Salesforce and SharePoint makes it easier for organizations to manage documents and reduces their reliance on Salesforce file storage.

  • Storage: Salesforce gives each organization file storage based on its edition and number of user licenses. SharePoint Online offers 1 TB for the whole organization, plus 10 GB for each eligible license. You can buy more storage on either platform if needed.
  • File size: Most uploads to Salesforce are limited to 2 GB, including those through the REST API and Connect REST API. The Lightning file upload tool allows files up to 10 GB, but Experience Cloud sites have lower limits. SharePoint supports files as large as 250 GB.
  • Access: SharePoint allows organizations to share documents with authorized users who do not have Salesforce licenses. These users’ access is controlled by SharePoint permissions and sharing policies.
  • Version history: Salesforce Files lets users upload new versions and see previous ones. SharePoint also tracks version history and lets multiple users edit compatible Office documents at the same time.
  • Usability: Admins often mention that sorting options for files attached to records are limited. Without integration, teams using both systems might need to upload the same file twice.

SharePoint vs Salesforce for Documents

SharePoint vs Salesforce for documents comes down to their primary purposes. Salesforce Files connects files to CRM records, while SharePoint organizes documents for storage and collaboration.

Feature
Main purpose
Salesforce Files
Attach and share files alongside Salesforce records, libraries, and Chatter
SharePoint
Store, organize, and collaborate on documents
Feature
Storage
Salesforce Files
10 GB per org, plus 2 GB per user license on Enterprise, Performance, and Unlimited editions (612 MB per license on Contact Manager, Group, and Professional). Essentials and Starter get 1 GB per org.
SharePoint
1 TB per organization, plus 10 GB per eligible license purchased
Feature
Maximum file size
Salesforce Files
10 GB in Files Home, libraries, and a record's Files related list; 2 GB in Chatter posts and comments. Experience Cloud sites have lower limits.
SharePoint
250 GB per file
Feature
Version history
Salesforce Files
Supports uploading new versions and viewing previous versions
SharePoint
Supports version history and restoration, depending on library settings
Feature
Access
Salesforce Files
Files in Files Home are private until shared. Library files inherit the library's sharing settings. Files can also inherit record permissions.
SharePoint
Controlled by SharePoint permissions at the site, library, folder, or item level
Feature
File organization
Salesforce Files
Linked to records, grouped in libraries, or shared in Chatter
SharePoint
Organized in sites, document libraries, and folders

Things to keep in mind

  • Storage varies by license. The Salesforce allocations apply to standard Salesforce and Salesforce Platform licenses. Orgs with custom user licenses should check Setup > Storage Usage for their actual limits.

  • Small orgs get a flat amount. Contact Manager, Group, and Professional orgs with fewer than 10 users receive 1 GB of per-user file storage in total.

  • Experience Cloud sites have lower file limits. Sites on the Salesforce-provided my.site.com URL allow up to 128 MB per file. Sites with a custom domain allow up to 500 MB.

  • Older file types have tighter limits. Classic attachments are capped at 25 MB and the Documents tab at 5 MB.

  • File sharing has a cap. A Salesforce file can be shared a maximum of 2,000 times.

Integration Options Compared

Choose Files Connect if users only need to access existing SharePoint files from Salesforce. The files stay in SharePoint and are only referenced from Salesforce, so nothing is uploaded or moved. 

Choose an AppExchange app or custom integration if they also need to upload files, create folders automatically, or move files from Salesforce storage to SharePoint. For admins without developer support, an AppExchange app is usually the easiest option for these advanced workflows.

Option
Files Connect
Choose it if
Users need to access and share existing SharePoint files from Salesforce.
Upload and folders from Salesforce
It only accesses, searches, and links existing SharePoint files; it can’t upload files or create folders natively.
Flow automation
No native Flow actions.
Admin effort
Configure authentication, the external data source, and user permissions. No custom code required.
Cost
Included in Professional, Enterprise, Performance, Unlimited, and Developer editions.
Option
AppExchange apps
Choose it if
Users who need to upload files, create SharePoint folders automatically, or sync files between Salesforce and SharePoint.
Upload and folders from Salesforce
Depends on the app. Files can remain in SharePoint rather than being stored in Salesforce.
Flow automation
Some apps provide Flow actions or Apex methods to automate folder creation, file uploads, and synchronization.
Admin effort
Install the app, connect it to Microsoft 365, and configure authentication. A Salesforce admin typically assigns the app’s permission sets, and a Microsoft 365 admin grants the app access to SharePoint.
Cost
Varies by app, subscription, and pricing model.
Option
Power Automate
Choose it if
Syncing SharePoint lists with Salesforce records, or automating actions triggered by Salesforce record changes (created or modified).
Upload and folders from Salesforce
Not a dedicated interface for managing files on Salesforce records.
Flow automation
Yes, through Power Automate flows.
Admin effort
Admin or power user, depending on complexity.
Cost
Salesforce connector requires a Premium license.
Option
Middleware (MuleSoft, Zapier)
Choose it if
Connecting several systems. MuleSoft suits complex data mapping; Zapier suits simple workflows.
Upload and folders from Salesforce
Custom, depending on connectors and workflow.
Flow automation
Custom workflows: integration flows and APIs (MuleSoft), trigger-action workflows (Zapier)
Admin effort
MuleSoft: IT/developers (Composer is no-code). Zapier: no-code, admin or business user.
Cost
MuleSoft: from $2,000/month, billed annually, credit-based. Zapier: Salesforce needs a paid plan, from $19.99/month billed annually (750 tasks).
Option
Custom build
Choose it if
You need functionality that existing products do not provide.
Upload and folders from Salesforce
Custom, using Microsoft Graph and Salesforce components.
Flow automation
Custom automation.
Admin effort
Developer required for authentication, Apex, LWC, testing, and maintenance.
Cost
Development and maintenance costs.

Files Connect lets users access and share external files by storing copies in Salesforce or referencing files in SharePoint. However, it doesn’t provide a complete document-management workflow out of the box.

AppExchange apps may add features such as file uploads, automatic folder creation, and Flow automation. Check each vendor’s listing for supported features and pricing.

If users already have access to Salesforce and SharePoint, linking a SharePoint folder to a Salesforce record or embedding a SharePoint page may be enough. These options don’t automatically upload files, create folders, or sync file details. Users still need the required SharePoint permissions.

Custom Development with Microsoft Graph

A custom integration gives you control over how users access and manage SharePoint files in Salesforce. Register an application in Microsoft Entra ID and configure the required Microsoft Graph permissions. In Salesforce, set up an Auth Provider and Named Credentials for authentication and secure API callouts. Use Apex to retrieve and manage files, and a Lightning Web Component (LWC) to display them on Salesforce record pages.

You need the Microsoft tenant ID, SharePoint site ID, and document library’s drive ID. Retrieve these values using Microsoft Graph:

  • GET /sites/{hostname}:/teams/hr retrieves the SharePoint site.
  • GET /sites/{siteId}/drive retrieves the site’s default document library.
  • GET /sites/{siteId}/drives lists the site’s document libraries.

Grant the permissions required for the operations your integration performs.

Warning icon

Tip

Never expose client secrets in front-end code. Store authentication details securely and use Named Credentials for authenticated API callouts.

How to Set Up Files Connect

Before connecting Salesforce to SharePoint Online, make sure you have:

  • Required permissions: Salesforce permissions for Customize Application and Manage Auth. Providers, along with access to the Microsoft Entra admin center or Azure portal.

  • SharePoint site URL: The HTTPS URL of your site, site collection, or web application. Do not use a page URL ending in SitePages/Home.aspx.

  • Identity type: Choose Per User to authenticate each user with their own Microsoft account, or Named Principal to use shared credentials for the data source.

Setup Steps

Enable Files Connect and Choose a File-Sharing Mode

In Salesforce Setup, search for Files Connect, click Edit, and select Enable Files Connect. Then choose a file-sharing mode based on how users need to access SharePoint files.

  • Reference: Keeps files in SharePoint and follows SharePoint’s access permissions. Users need the required SharePoint access to download files, and file previews aren’t available.
  • Copy: Stores a separate copy of each file in Salesforce. Choose this mode when sharing files with external customers or partners. Chatter group members can access shared copies without needing access to the original SharePoint files.
Salesforce Setup page Files Connect Settings with Enable Files Connect checked and File Sharing set to Reference

Next, create a permission set or edit a profile and enable the Files Connect Cloud system permission. In a permission set, find it under System Permissions. In a profile, find it under Administrative Permissions. Assign it to users who need access and administrators who configure data sources.

Profile system permissions list in Salesforce Setup with the Files Connect Cloud checkbox selected and highlighted

Files Connect lets Salesforce users access documents stored in SharePoint Online without leaving Salesforce. Setup requires an authentication provider in Salesforce, an app registration in Microsoft Azure, and an external data source.

Create an Authentication Provider in Salesforce

Azure requires a Salesforce callback URL, while Salesforce needs credentials from Azure. To resolve this dependency, create a placeholder authentication provider in Salesforce, register the Azure application, and then update the provider with the actual credentials.

Keep a temporary text file to store the callback URL, application ID, and client secret during setup.

  1. 1

    In Salesforce Setup, search for Auth. Providers and open it.

  2. 2

    Click New.

  3. 3

    Configure the Auth Provider with OpenID Connect as the provider type, a descriptive name, and a unique URL suffix. Enter temporary values for the Consumer Key, Consumer Secret, Authorize Endpoint URL, and Token Endpoint URL. Use HTTPS for both endpoint URLs and leave Default Scopes blank. Click Save to create the Auth Provider.

    Authentication Provider edit form in Salesforce Setup with OpenID Connect type and placeholder values filled in

On the provider’s detail page, copy the Callback URL into your text file.

Salesforce authentication provider detail page with the Callback URL highlighted under Salesforce Configuration

Register the Application in Microsoft Azure: Sign in to the Microsoft Azure portal and open App registrations. Click New registration.

Microsoft Entra Default Directory overview with the Add application registration quick action highlighted

Sign in to the Microsoft Azure portal and open App Registrations. Click New registration, enter a display name for the application, and click Register to create it.

Microsoft Azure Register an application form with the name, single tenant type, and Web redirect URI filled in

On the application overview page, copy the Application (client) ID into your text file.

Microsoft Azure app registration overview for Salesforce Files Connect showing the application ID and tenant ID

Open Certificates & secrets, click New client secret, enter a description, and select an expiration period.

Azure Certificates & secrets page for the Salesforce Files Connect app with the New client secret button highlighted

Click Add and copy the secret’s Value immediately. Azure displays it only once.

Azure Add a client secret panel with a description entered and the Recommended 180 days expiry selected

Open API permissions, click Add a permission, and select SharePoint. Add the permissions required by your integration. Avoid broad permissions such as AllSites.FullControl unless necessary.

Azure Request API permissions panel with Delegated permissions selected and AllSites.FullControl checked

Update the Authentication Provider in Salesforce

Return to Salesforce Setup and open Auth. Providers. Click Edit beside your SharePoint provider and replace the placeholders.

Field
Consumer Key
Value
Application (client) ID from Azure
Field
Consumer Secret
Value
Client secret value from Azure
Field
Authorize Endpoint URL
Value
https://login.microsoftonline.com/common/oauth2/authorize?resource=https%3A%2F%2F[TENANT].sharepoint.com&prompt=login
Field
Token Endpoint URL
Value
https://login.microsoftonline.com/common/oauth2/token

Replace [TENANT] with your SharePoint tenant name. Verify that the endpoints match the authentication configuration supported by your Salesforce and Microsoft setup.

Salesforce Auth Provider edit form with the Microsoft authorize and token endpoint URLs and consumer key entered

Click Save.

Configure SharePoint as an External Data Source

In Salesforce Setup, search for External Data Sources and create a new data source. You need the Customize Application permission.

In Salesforce Setup, open External Data Sources under Integrations. Click New External Data Source.

Salesforce Setup External Data Sources page with an empty list and the New External Data Source button

Configure the external data source with a label, a unique name, and Files Connect: Microsoft SharePoint Online as the type. Enter your HTTPS SharePoint site URL. Set Identity Type to:

  • Per User: Each user signs in with their own Microsoft credentials.
  • Named Principal: All users access the source through the same credentials.

Set the authentication protocol to OAuth 2.0. Leave Scope blank if no value is required, and enable Exclude Other Site Collections if you want to restrict access to the specified site collection.

External data source form with the SharePoint Online type, a site URL, and Exclude Other Site Collections checked

Select Start Authentication Flow on Save and click Save. Review the requested permissions and click Accept. If prompted, click Confirm.

Warning icon

Tip

Enable Exclude Other Site Collections if any users can access the root site collection. This restricts the data source to the site collection specified in the URL.

Validate and Sync SharePoint Files

  1. 1

    On the external data source detail page, click Validate and Sync.

  2. 2

    Select the external object generated for SharePoint files.

  3. 3

    Click Sync. For large libraries, use Sync in the background if available.

After synchronization, SharePoint should appear under Connected Sources in the Salesforce Files tab. Users can access documents according to the configured permissions.

Administrator Best Practices

  • Track secret expiration. Renew the client secret before it expires.

  • Apply least privilege. Grant only the SharePoint permissions the integration requires.

  • Choose the identity type carefully. Per User authentication respects individual SharePoint access controls. Named Principal uses shared credentials, so restrict Salesforce access accordingly.

  • Protect credentials. Store secrets securely and delete temporary files when they are no longer needed.

Files Connect Limits

Files Connect lets Salesforce users access files stored in SharePoint Online and OneDrive for Business. However, it has several limitations.

  1. 1

    Identity types. With Per User, each user signs in with their own Microsoft account and can access files permitted by that account. With Named Principal, all users share the credentials configured for the external data source.

  2. 2

    Preview and custom columns. Files from SharePoint Online and OneDrive for Business can’t be previewed in Salesforce’s file preview player. SharePoint custom column names must not contain spaces.

  3. 3

    File management. Users can open, download, and share external files through Files Connect. Folders containing special characters such as # or % may appear in Salesforce, but users can’t access their contents.

  4. 4

    Existing Salesforce files. Files Connect doesn’t automatically migrate files stored in Salesforce to SharePoint. They remain in Salesforce unless a separate process moves them. External files can be shared as copies or references. A copy is stored in Salesforce and doesn’t reflect changes to the original. A reference points to the external file’s latest version, but users need access to the external system to download it.

Common Setup Errors

“Not granted” for your organization.

The Microsoft app registration requires admin consent for one or more permissions. In the Microsoft Entra admin center, open App registrations, select the app, go to API permissions, and click Grant admin consent for [your organization] if you have the required administrator role.

“Can't access external source. External data source is unavailable because of an error.”

This can indicate an incorrect SharePoint Site URL or a permissions issue. In Salesforce Setup, open External Data Sources and check the Site URL, then verify the user’s access to the external data source and the Microsoft app’s permissions.

Warning icon

Tip

After correcting the configuration, return to Setup → External Data Sources, select the SharePoint data source, and click Validate and Sync if available. Test the connection again.

Access feels too broad.

Microsoft’s Sites.Selected permission restricts an app to explicitly authorized SharePoint sites, but Salesforce compatibility depends on the Files Connect configuration. Confirm that Salesforce supports this permission for your setup before replacing the documented permissions.

AppExchange Apps

AppExchange apps extend Salesforce file management with features such as uploading files from records, creating SharePoint folders through Flow, mapping Salesforce fields to SharePoint columns, displaying documents in Experience Cloud, and moving Salesforce files to external storage. Check each app’s listing for supported features.

Experience Cloud provides a customer-facing portal, while SharePoint stores and manages documents. Integration apps can connect the two, allowing customers to access SharePoint files through an Experience Cloud site.

Salesforce file-management apps

App
24Files
Connects to
SharePoint Online only
Folders via Flow
Yes. Flow actions for generating folder structures, creating SharePoint folders, uploading files, and renaming folders, plus Apex methods. Folders are created when the component first loads on a record page.
Notable feature
Bidirectional file, folder, and metadata sync. Experience Cloud support, mainly via a shared anonymous-access account with limited folder access.
App
CloudFiles
Connects to
SharePoint, OneDrive, Google Drive, AWS S3, Azure Blob, Box, Dropbox
Folders via Flow
Yes. Record-triggered and scheduled Flows, plus an uploader widget for screen flows.
Notable feature
Document generation (DOCX/XLSX/PPTX/PDF from templates), sharing analytics, Experience Cloud file sharing, and Flow-based document workflows
App
Egnyte
Connects to
Egnyte cloud storage
Folders via Flow
Yes, since Egnyte for Salesforce v3.8 (May 2025). A Mapped Folder Creation action works in record-triggered flows.
Notable feature
Embedded file access on record pages, sharing (including with non-Salesforce users), and folder templates
App
Share Connect
Connects to
SharePoint and OneDrive
Folders via Flow
Yes, on the Pro plan only. Record-triggered Flows (Automate Share action) create, link, rename and move folders and upload files.
Notable feature
File linking and upload on all tiers. Folder linking and Flow automation on Pro.
App
sFiles
Connects to
SharePoint Online
Folders via Flow
Yes. Flow-enabled Apex actions create, copy, rename and delete folders and items. Most require the Enterprise license.
Notable feature
SharePoint file management and folder structures. Experience Cloud (upload/download only), multi-site support, and the Apex API require the Enterprise Add-On.
App
XFilesPro
Connects to
SharePoint, OneDrive, Google Drive, AWS S3
Folders via Flow
Folders are created automatically on record creation through declarative configuration.
Notable feature
External file storage, template-based folder automation, and document generation (via the separate DocuPrime product)

Rollout Checklist

  • Define requirements. Decide whether users need to view files, upload documents, automate file management, or reduce Salesforce storage usage.

  • Plan folders and naming. Agree on the folder structure and naming conventions before connecting SharePoint.

  • Assign ownership. Decide who will manage files, metadata, and integration settings.

  • Choose a primary location. Keep SharePoint as the main document repository where appropriate to avoid duplicate files in Salesforce.

  • Check permissions. Verify that users have the required access in Salesforce and SharePoint.

  • Test workflows. Check file access and required actions using real records and regular user accounts before rollout.

Warning icon

Tip

Test with a regular user account, not an admin account, and use real records to identify access issues

Conclusion

Use Files Connect to access SharePoint files from Salesforce. Choose an AppExchange app or custom integration for uploads, folder management, automation, or moving files out of Salesforce to free storage. If you need to work with Salesforce data in Excel, follow the approach described in the first section.

FAQ

Is Files Connect included with Salesforce?

Files Connect is available in Professional, Enterprise, Performance, Unlimited, and Developer editions. You also need SharePoint Online or OneDrive for Business and the required Microsoft authentication setup.


Can I upload files to SharePoint from a Salesforce record?

Files Connect lets users access SharePoint files from Salesforce but does not provide direct uploads to SharePoint. An AppExchange app or custom integration can add upload functionality.


How do I stop running out of Salesforce file storage?

Files Connect does not move existing Salesforce files to SharePoint. To free storage, use an app or custom process to migrate files, verify the migrated copies, and remove the Salesforce originals when appropriate.


Do SharePoint permissions apply inside Salesforce?

With Per User authentication, each user accesses files based on their own Microsoft account permissions. With Named Principal authentication, users access files through a shared account, so SharePoint’s per-user permissions do not apply and access is controlled on the Salesforce side.


Does Files Connect work with SharePoint on-premises?

Files Connect support for SharePoint Online and OneDrive for Business, not SharePoint on-premises. You need another integration approach to connect an on-premises SharePoint environment.

|
Rajeshwari Jain

Rajeshwari Jain

Content Manager

About the Author

Rajeshwari Jain is a Technical Support Specialist and Content Writer at Xappex. She applies her practical experience to assist customers and create articles on how Xappex tools work with Salesforce to improve data management and increase efficiency.

She began her IT career in 2022 as a Quality Assurance professional before transitioning into Salesforce administration and technical writing in 2023. With Salesforce Certified Administrator and Associate certifications, Rajeshwari writes blogs on Salesforce flows, admin tools, and updates to expand her skills outside of work.

In her free time, she enjoys reading tech blogs and experimenting with new tools.

Feel free to reach out to Rajeshwari for collaborations or to check out her Salesforce-focused content.