Microsoft Dynamics 365
Connect Riff to Microsoft Dynamics 365 Finance & Operations to build procurement apps and agents on live ERP data.
Connect Riff to Microsoft Dynamics 365 Finance & Operations (F&O) or Business Central to give your apps and agents live access to purchase orders, vendor invoices, inventory transactions, and cost centres.
What you connect
Riff connects to Dynamics 365 using Microsoft Azure Active Directory (Entra ID) OAuth 2.0 and the Dynamics 365 OData REST API. Authentication is via a registered Azure AD application with the correct Dynamics permissions.
Credentials needed:
Tenant ID
Azure Portal → Azure Active Directory → Properties
Client ID
Azure Portal → App Registrations → your app
Client Secret
Azure Portal → App Registrations → your app → Certificates & Secrets
Dynamics base URL
Your Dynamics environment URL (e.g. https://yourcompany.operations.dynamics.com)
What your apps and agents can read
Purchase Orders
PurchaseOrderHeadersV2
Confirmation status, delivery dates, totals
Purchase Order Lines
PurchaseOrderLinesV2
Line items, quantities, prices, delivery dates
Vendor Invoices
VendorInvoiceHeaderEntity
Invoice headers, approval status, payment terms
Vendor Invoice Lines
VendorInvoiceLineEntity
Line amounts, quantities, GL codes
Inventory Transactions
InventTransEntity
Goods receipts, issues, adjustments
Vendors
VendorsV2
Vendor contacts, payment terms, currency
Cost Centres
DimensionAttributeValueCombination
Cost centre codes and descriptions
What your agents can do
Chase PO confirmations
Query unconfirmed POs → send confirmation request to vendor → log response
Invoice matching
Match vendor invoice lines against PO lines → approve or flag variances
Delivery monitoring
Track PO lines past due date with no inventory transaction → alert buyer
Cost centre reporting
Pull actuals vs. budget by cost centre → flag overspend
Vendor performance
Calculate on-time delivery and invoice accuracy rates by vendor
App use cases
Purchase Order Status Tracker
Build an App that reads open POs from Dynamics 365 and shows confirmation status, expected delivery, and receipt status in a clean table. Buyers filter by vendor, site, or category. One-click to send a chase email or escalate to management — no Dynamics login needed.
Vendor Invoice Approval Queue
Display pending vendor invoices with matched PO and goods receipt data side by side. AP clerks review, approve matched invoices, and route exceptions. The app posts approvals back to Dynamics via the OData API.
Cost Centre Spend Dashboard
Pull cost centre actuals and budgets from Dynamics. Show year-to-date spend, remaining budget, and top cost categories. Finance managers drill down by GL code or cost centre. Automated weekly digest emailed to cost centre owners.
Agent use cases
Vendor Invoice Matching Agent
Trigger: Daily at 06:00 Input: All open vendor invoices in Dynamics awaiting approval Action: Match each invoice line against the corresponding PO line and inventory transaction Output: Approve matched invoices automatically; escalate variances to AP with a match summary
Overdue Delivery Monitor
Trigger: Daily at 07:00 Input: PO lines where requested delivery date is before today and no inventory transaction posted Action: Group by vendor; calculate financial exposure; send chase request via Outlook Output: Slack digest to procurement team with unresolved items flagged for escalation
Monthly Cost Centre Variance Report
Trigger: First working day of each month, 07:30 Input: Cost centre actuals vs. budgets from Dynamics for the prior month Action: Calculate variance by cost centre and GL account; identify top overruns Output: Formatted report emailed to Finance team; exceptions flagged for cost centre owners
Connecting Dynamics 365 in Riff
In Azure Portal, register a new application under your tenant's App Registrations
Assign the application the Dynamics 365 API permission:
user_impersonation(or appropriate application permission for unattended access)Create a client secret and note the Tenant ID, Client ID, and Client Secret
Open Secrets in Riff and store all four credentials
In your app or agent, reference the secrets to authenticate via OAuth 2.0 and call the OData API
Ask your agent: "Read all open purchase orders from Dynamics 365 where the delivery date is in the past and no inventory transaction has been posted"
F&O vs. Business Central: The OData entities above are for Dynamics 365 Finance & Operations. Business Central uses a different OData V4 API (/api/v2.0/). The connection approach is the same; entity names and paths differ — check the Business Central API reference for BC-specific entities.
Last updated
Was this helpful?