In this article, we will walk you through the steps to configure the integration, export Non-Class Entity documents to SharePoint, and ensure the seamless transfer of files/data to the appropriate target location within your SharePoint system, including:
- Background
- Overview of Integration
- Setting up VMR integration to SharePoint
- Communicating OAuth 2.0 Credentials to VMR Team
- Navigate to SharePoint to view the exported data
- Link to Microsoft documentation
Background
To streamline document handling for Class customers using VMR across all their clients, a new export functionality was introduced to support non-Class entity documents and metadata delivery to designated SharePoint locations. This integration enables automated ingestion of files into VMR from various sources, including physical documents via locked bags and electronic submissions through email forwarding or direct VMR feeds. Once ingested, the system leverages advanced AI, machine learning, and language models to classify documents, extract data, and auto-map them to the correct client records within VMR. The final output is exported in PDF and JSON formats, complete with metadata tagging and structured folders in SharePoint, ensuring easy navigation and compliance.
Overview of Integration
This integration links the Virtual Mailroom (VMR) solution with the customer's SharePoint environment to automate and secure the delivery of documents such as contract notes, statements, notices, invoices, and reports. Once uploaded to VMR, documents are automatically classified and mapped using extracted data, enabling seamless export to designated SharePoint libraries within the customer's tenant. The solution ensures structured folder organisation, metadata alignment, and permission-based handling, supporting efficient auditability and compliance. Its core objective is to streamline the export of non-Class entity documents and metadata from VMR to SharePoint, maintaining consistency and security throughout the process.
Setting up VMR integration to SharePoint
-
SharePoint
Sharepoint Target Location - The destination in SharePoint where files are exported—structured, searchable, and secure—after being exported from VMR solution.
Example of URL: https://{yourtenant}.sharepoint.com/sites/{yoursite}/
'yourtenant' refers to your business' domain.
'yoursite' is the name of the SharePoint site.
This can be named for example 'VMR-Non-ClassEntities' or your preferred name.Within the SharePoint location, please provision the following two folders:
-
Folder 1: 'TO VMR'
For uploading CSV files containing non-Class entity codes (sample .csv provided in screenshot below) -
Folder 2: 'FROM VMR' For receiving processed output from VMR
-
Folder 1: 'TO VMR'
-
Microsoft Azure Service Account
-
OAuth 2.0 App ID (also called Client ID)
Create a Service Principal account for SharePoint (or any Microsoft 365 service) via Microsoft Entra ID (formerly Azure Active Directory).
Go to Entra ID > App registrations > New registration
Put the display name as your valid domain name or 'VMR-Non-Class-Entity'.
Several identifiers such as Application (Client) ID, Object ID and Directory (Tenant) ID are automatically generated for you. Gather the information such as Client ID and Tenant ID.
-
Client Secret
Go to Certificates & secrets > create a new client secret and capture the value.
Note: The secret will only be shown once when it is created therefore save the secret value immediately—you won’t be able to view it again!
-
-
API Permissions and grant access
Go to API permissions. Grant admin consent and Grant the following API scopes to Microsoft Graph:
Sites.Selected and User.Read
-
Update Sharepoint Permissions
-
Add the SharePoint URL into XML
Navigate to the site tenant as a SharePoint admin and add in the site URL from Step 1 above. You will need to add _layouts/15/appinv.aspx at the end of the site URL.
Example: https://yourtenant.sharepoint.com/sites/yoursite/_layouts/15/appinv.aspx
In SharePoint, the URL path "/_layouts/15/appinv.aspx" points to a page which is part of the SharePoint system. This page is used primarily for app (or add-in) registration and permission management.- Fill in the App Id section with the Client ID generated during app registration
- Set the App Domain to localhost
- Provide the appropriate Permission Request XML.
Permission Request XML:<AppPermissionRequests AllowAppOnlyPolicy="true"> <AppPermissionRequest Scope="http://sharepoint/content/sitecollection/web" Right="FullControl" /> </AppPermissionRequests>Click 'Trust It' at the end of the SharePoint configuration to grant the app the specified permissions.
-
Communicating OAuth 2.0 Credentials to VMR Team
Please have the access controller of the business send an email to support@class.com.au, with vmr@class.com.au in CC, requesting the method for securely sharing OAuth credentials. Kindly ensure that the OAuth credentials, including the SharePoint site URL, are not included in this initial email. Upon receiving the request, the VMR team will respond directly to the access controller with details on the secure and controlled channels that can be used to share the App ID, Client Secret value, and Tenant ID with the VMR technology team. This response will also include the email address of the VMR tech team, to which the SharePoint site URL can be forwarded.
Navigate to SharePoint to view the exported data
Non-Class entities data from .csv files, periodically loaded by Class clients into the 'To VMR' folder within the SharePoint target location, will be programmatically appended to the existing funds list in your VMR business instance's 'entity code/entity name' lookup. Upon automatic completion of the import service, the .csv file will then be moved to the 'Processed' folder under the 'To VMR' folder. Refer to the screenshot below for an example.
A fund mapping algorithm will map the non-Class entity documents loaded into VMR to the non-Class entity code/name appended from a CSV file, facilitating usual operations such as document classification and data extraction.
When users publish non-Class entity documents from VMR, the export service will place these files under the target location 'From VMR' and dynamically create a folder structure according to the following naming convention: “From VMR/{entity_id}.{entity_name}/{document_type}/{financial_year}/”.
- Entity Code / Entity Name: Refers to the unique identifier and name of a legal entity within an organisation.
- Document Type: Indicates the classification of a document such as buy, sell, dividend, or distribution which helps in organising and processing records.
- Financial Year: A 12-month period used for accounting and financial reporting.
- Document Description: Refers to the category under which the file is classified.
- JSON Sample: Represents structured data exported in JSON format.
Link to Microsoft Documentation
App Registration with Microsoft identity platform
Granting access using SharePoint App-Only
Add-in permissions in SharePoint