Deltek and Microsoft Teams integration
Deltek Vantagepoint runs projects, accounting, and the people who bill against them. Microsoft Teams is where those people already work and approve things. Connecting the two moves Deltek finance events into Teams so an approver sees an AP invoice or a submitted expense report as a message in their channel instead of in a separate ERP inbox. ml-connector reads the events from Deltek, posts them into the correct Teams channel or chat as plain text or an adaptive card, and maps Deltek employees to Teams users so each notification reaches the right person. Teams holds no financial records, so the connection is built around it being a notification and approval surface rather than a second system of record.
What moves between them
The flow runs from Deltek Vantagepoint into Microsoft Teams. When an AP invoice is received, an expense report is submitted, or a project status changes in Deltek, ml-connector posts a corresponding message or adaptive card to the configured Teams channel, or a direct chat for a named approver. Deltek employees and contacts are matched to Teams users by email so notifications can @mention or directly message the right person. No financial data moves the other way, because Teams stores no invoices, projects, or ledger entries; user and channel data is read from Teams only to address the notifications correctly. Cadence is event-driven where a Vantagepoint workflow webhook is configured, and a scheduled poll of the Deltek finance APIs backfills events on instances where the webhook is not set up.
How ml-connector handles it
ml-connector stores both credential sets encrypted. On the Deltek side it accepts the full tenant URL, database name, client ID and secret, and API username and password per customer, requests a bearer token by password grant, and refreshes it when a call returns 401. On the Teams side it requests a Graph token by client credentials against the customer tenant and posts to the channel or chat message endpoints. Vantagepoint webhooks carry no HMAC signature, so when they are used the connector relies on the basic auth or key fields configured on the webhook URL and treats each Deltek record number as a dedup key, since Vantagepoint has no idempotency header and can fire a save more than once. Employee-to-user mapping is built first by matching email so an approval lands on a real Teams user. Graph throttling returns HTTP 429 with a Retry-After header, which the connector honors with backoff; Deltek has no published rate limit, so polling is kept conservative. Where the connector subscribes to Graph change notifications it renews the subscription before the three-day expiry and verifies the clientState value on each callback. Every notification is recorded so a failed Teams post can be retried or replayed.
A real-world example
A 300-person architecture and engineering firm runs Deltek Vantagepoint for projects, billing, and accounting, and runs day to day on Microsoft Teams. Before the integration, project principals only saw AP invoices and submitted expense reports when they logged into Vantagepoint, so approvals sat for days and month-end billing slipped while finance chased people by email. With Deltek and Microsoft Teams connected, each new AP invoice and submitted expense report posts as an adaptive card in the project's Teams channel and as a direct message to the assigned approver, mapped from their Deltek employee record. Approvers act on items the day they arrive, finance stops sending reminder emails, and the approval backlog clears without anyone leaving Teams.
What you can do
- Post Deltek Vantagepoint AP invoice and expense report events into Microsoft Teams channels as text or adaptive cards.
- Send direct Teams messages to the approver mapped from the Deltek employee or contact record.
- Match Deltek employees and contacts to Microsoft Teams users by email so notifications reach the right person.
- Authenticate Deltek with its tenant password-grant token and Microsoft Teams with Microsoft Graph client credentials.
- Trigger on Vantagepoint workflow webhooks where configured and fall back to scheduled polling, with retries and replay on every notification.
Questions
- Which direction does data move between Deltek and Microsoft Teams?
- Finance events move from Deltek Vantagepoint into Microsoft Teams as notifications. AP invoices, expense reports, and project changes become channel messages or direct chats. Teams holds no invoices, projects, or ledger records, so ml-connector does not write financial data back into it; it only reads Teams users and channels to address the notifications correctly.
- Can Microsoft Teams store invoices or approve them inside the ERP?
- No. Microsoft Teams is a collaboration platform reached through the Microsoft Graph API and has no invoice, purchase order, or general ledger objects. What it does is display the event as a message or adaptive card and let a person act on it. The record of truth stays in Deltek Vantagepoint, and an approval decision is applied back in Deltek through its own API or workflow.
- Does the integration use webhooks or polling?
- Both, depending on the Deltek instance. Vantagepoint can fire a workflow webhook on a record save, including expense report saves, and the connector acts on that immediately, though those webhooks carry no HMAC signature and are authenticated by the basic auth or key fields set on the webhook URL. Where a webhook is not configured, ml-connector polls the Deltek finance APIs on a schedule and uses each record number to avoid posting the same event twice.
Related integrations
More Deltek integrations
Other systems that connect to Microsoft Teams
Connect Deltek and Microsoft Teams
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started