Office 365 + Salesforce

Connect Office 365 and Salesforce to Unify Productivity and CRM

Automate data sync between your Microsoft Office 365 suite and Salesforce CRM to eliminate manual entry and keep every team on the same page.

Why integrate Office 365 and Salesforce?

Office 365 and Salesforce are two of the most widely used platforms in modern business — one powering daily productivity and communication, the other driving sales pipelines and customer relationships. Without integration, critical data lives in silos: emails go unlogged, calendar events miss CRM context, and spreadsheet updates never reach the right records. Connecting Office 365 and Salesforce with tray.ai puts information where it needs to be, automatically.

Automate & integrate Office 365 & Salesforce

Use case

Automatic Email Logging from Outlook to Salesforce

Every customer-facing email sent or received in Outlook can be automatically captured and logged as an activity against the relevant Salesforce contact, lead, or opportunity. Sales reps no longer need to manually BCC a logging address or switch between apps to record communications. The CRM always reflects the full history of customer interactions.

Use case

Salesforce Contact and Lead Sync with Office 365 Contacts

When a new lead or contact is created in Salesforce, tray.ai can automatically create or update a corresponding contact in Office 365, keeping address books and CRM in sync. Updates to phone numbers, job titles, or email addresses in either system propagate to the other in real time. Sales and customer success teams always have current contact details wherever they work.

Use case

Calendar Meeting Sync and Opportunity Activity Logging

Customer meetings scheduled in Outlook Calendar can be automatically logged as events or tasks on the associated Salesforce opportunity or account record. When a meeting is rescheduled or cancelled in Office 365, the corresponding Salesforce activity updates automatically. Sales leadership gets a real-time view of meeting cadences directly inside the CRM.

Use case

SharePoint Document Linking to Salesforce Records

Proposals, contracts, and sales collateral stored in SharePoint can be automatically linked to their corresponding Salesforce opportunity or account records when files are created or updated. Teams searching for the latest contract version don't have to leave Salesforce or dig through SharePoint folder structures. Every CRM record gets a document trail attached to it.

Use case

Salesforce Opportunity Alerts via Microsoft Teams and Outlook

When high-value opportunities in Salesforce change stage, go stale, or hit a closing date threshold, tray.ai can trigger automated notifications via Microsoft Teams messages or Outlook emails to the assigned rep and their manager. Revenue-critical deals stay top of mind without requiring sales leaders to run manual pipeline reports. Teams respond faster and deals are less likely to slip.

Use case

Excel and SharePoint Data Import to Salesforce Records

Business analysts and operations teams often maintain forecasts, account lists, or enrichment data in Excel spreadsheets or SharePoint lists. tray.ai can watch for file updates and automatically push that data into the corresponding Salesforce records — whether updating account fields, bulk-creating leads, or refreshing opportunity values. No more manual CSV imports, and CRM data stays current.

Use case

New Salesforce Account Onboarding via Office 365 Email Sequences

When a deal closes and a new account is created in Salesforce, tray.ai can trigger a structured onboarding email sequence through Outlook or Microsoft 365 mail, personalized with CRM field data like account name, assigned CSM, and contract details. Follow-up tasks get created automatically in Outlook or Microsoft To Do for the assigned success rep. New customers get a faster, more consistent start without manual coordination.

Get started with Office 365 & Salesforce integration today

Office 365 & Salesforce Challenges

What challenges are there when working with Office 365 & Salesforce and how will using Tray.ai help?

Challenge

Matching Records Across Two Different Data Models

Salesforce and Office 365 use fundamentally different ways to identify and structure records. Salesforce has Leads, Contacts, Accounts, and Opportunities; Office 365 works with emails, contacts, and calendar events that have no native concept of a sales pipeline. Mapping an Outlook email sender to the correct Salesforce record type requires lookup logic that accounts for duplicates, unmatched addresses, and multiple object types.

How Tray.ai Can Help:

tray.ai's workflow logic supports multi-step lookups, conditional branching, and fuzzy matching so you can search Salesforce by email domain, name, or account before deciding whether to log against a Lead, Contact, or Opportunity. Custom error handling paths make sure unmatched records get flagged for review rather than silently dropped.

Challenge

Handling OAuth Token Expiry and Delegated Mailbox Access

Enterprise deployments of Office 365 often use delegated permissions and shared mailboxes, while Salesforce uses its own OAuth flow with session timeouts. Maintaining persistent, authorized connections to both platforms simultaneously — particularly across shared or service accounts — can cause integrations to fail silently when tokens expire or admin permissions change.

How Tray.ai Can Help:

tray.ai manages OAuth token refresh automatically for both Office 365 and Salesforce connections, and supports service account authentication patterns for shared mailboxes. Built-in connection health monitoring alerts you before token issues cause workflow failures, so integrations keep running without manual intervention.

Challenge

Avoiding Duplicate Activity Logs and Contact Records

Without deduplication logic, bidirectional sync between Office 365 and Salesforce can quickly generate duplicate activities, contacts, and tasks — especially when multiple reps communicate with the same customer or when records are created in both systems within short time windows. Duplicate records degrade CRM data quality and erode user trust in the integration.

How Tray.ai Can Help:

tray.ai workflows can implement upsert logic using external IDs or email-based lookups to check for existing records before creating new ones. Configurable deduplication rules and conditional branching let you define exactly when to create versus update, protecting data integrity across both platforms.

Challenge

Managing Large-Volume Email and Calendar Event Throughput

Active sales teams generate hundreds of emails and calendar events daily. Attempting to log every single one to Salesforce can overwhelm API rate limits on both the Office 365 Graph API and Salesforce's REST API, leading to throttling, failed records, and incomplete activity histories.

How Tray.ai Can Help:

tray.ai includes built-in rate limiting, retry logic with exponential backoff, and the ability to batch process records to stay within API quotas for both platforms. Workflow filters let you define precise criteria — such as only logging emails from external domains or only syncing meetings with more than one attendee — to reduce volume without losing important data.

Challenge

Keeping Field Mappings Current as Salesforce Customizations Evolve

Salesforce environments accumulate customizations over time: new custom objects, fields, and validation rules. As the CRM schema changes, hardcoded field mappings in integration workflows can break silently, causing data to be dropped or written to incorrect fields without obvious error messages.

How Tray.ai Can Help:

tray.ai's visual workflow builder makes field mappings explicit and easy to audit, and the Salesforce connector dynamically reflects custom objects and fields from your org's schema. When Salesforce configurations change, teams can update mappings in the tray.ai interface without engineering support, and workflow versioning means changes can be rolled back if something unexpected comes up.

Start using our pre-built Office 365 & Salesforce templates today

Start from scratch or use one of our pre-built Office 365 & Salesforce templates to quickly solve your most common use cases.

Office 365 & Salesforce Templates

Find pre-built Office 365 & Salesforce solutions for common use cases

Browse all templates

Template

Log New Outlook Emails as Salesforce Activities

Monitors a designated Outlook mailbox or shared inbox for new emails from known Salesforce contacts and automatically creates a corresponding activity log on the matching Salesforce record, capturing subject, timestamp, and sender details.

Steps:

  • Trigger: New email received in a specified Outlook inbox or folder
  • Lookup: Search Salesforce for a matching contact or lead by sender email address
  • Action: Create an Email Activity record on the matched Salesforce contact, lead, or opportunity with full email metadata

Connectors Used: Office 365, Salesforce

Template

Sync Salesforce Contacts to Office 365 Address Book

Watches Salesforce for newly created or updated contact records and automatically creates or updates the matching contact in Office 365, so sales reps always have current contact information in Outlook without manual syncing.

Steps:

  • Trigger: New or updated Contact record detected in Salesforce via polling or webhook
  • Transform: Map Salesforce contact fields (name, email, phone, title, account) to Office 365 contact schema
  • Action: Create or update the contact in the relevant Office 365 user's address book or shared contact folder

Connectors Used: Salesforce, Office 365

Template

Create Salesforce Tasks from Outlook Calendar Meetings

Automatically detects new meetings added to an Outlook Calendar that include external customer email addresses and creates a corresponding task or event on the related Salesforce opportunity or contact record, keeping activity timelines complete.

Steps:

  • Trigger: New calendar event created in Office 365 Outlook Calendar with at least one external attendee
  • Lookup: Match attendee email addresses against Salesforce contact and opportunity records
  • Action: Create a Salesforce Task or Event linked to the matched records with meeting title, date, time, and attendee list

Connectors Used: Office 365, Salesforce

Template

Alert Sales Reps via Outlook When Salesforce Opportunities Go Stale

Runs on a schedule to identify Salesforce opportunities with no activity recorded within a configurable number of days and sends a personalized Outlook email or Teams message to the opportunity owner with deal details and a prompt to take action.

Steps:

  • Schedule: Workflow runs daily at a configured time
  • Query: Retrieve Salesforce opportunities with no activity logged in the past N days filtered by stage and owner
  • Action: Send a personalized Outlook email to each opportunity owner listing their stale deals with direct Salesforce record links

Connectors Used: Salesforce, Office 365

Template

Push Excel/SharePoint List Updates to Salesforce in Bulk

Monitors a designated SharePoint document library or SharePoint List for new file uploads or row updates and automatically processes the data to create or update the corresponding Salesforce records — supporting account updates, lead imports, or opportunity field refreshes.

Steps:

  • Trigger: New file uploaded or row updated in a monitored SharePoint List or document library
  • Transform: Parse rows and map column headers to target Salesforce object fields with validation and error handling
  • Action: Upsert records in Salesforce using an external ID, logging successes and failures back to a SharePoint status column

Connectors Used: Office 365, Salesforce

Template

Trigger Onboarding Email Sequence on Salesforce Deal Close

When a Salesforce opportunity moves to Closed Won, this template automatically sends a series of personalized onboarding emails through Office 365 to the new customer's contacts and creates follow-up tasks in Outlook for the assigned customer success manager.

Steps:

  • Trigger: Salesforce opportunity stage changes to Closed Won
  • Enrich: Retrieve account and contact details from Salesforce to personalize email content
  • Action: Send initial welcome email via Office 365 Outlook and create a series of dated follow-up tasks in Microsoft To Do or Outlook Tasks for the assigned CSM

Connectors Used: Salesforce, Office 365