Sync Enterprise Agreement Pricing
Enterprise Agreement Customers Only: This guide is for organizations with an Enterprise Agreement (EA) with Microsoft. If your organization has negotiated Azure rates or special pricing, syncing ensures Dr Migrate's cost and TCO models reflect your actual enterprise discounts instead of standard retail rates.
Overview¶
Dr Migrate provides a streamlined way to sync your Enterprise Agreement pricing directly through the TCO Settings. This feature allows you to configure Service Principal access to automatically pull your negotiated Azure rates, ensuring accurate cost projections and TCO calculations.
Before using this feature, ensure you have completed the EA pricing prerequisites in your setup configuration. See Create Service Principal, Assign Cost Management Reader Role, and Enable Account Owners Can View Charges Policy below for the setup steps.
How It Works¶
When you sync Enterprise Pricing, Dr Migrate uses a Service Principal to access your Azure Enterprise Agreement price sheet. This ensures that:
- Cost calculations use your negotiated rates instead of retail pricing
- TCO models reflect your actual enterprise discounts
- Financial reports show accurate cost projections based on your agreement
The Service Principal must have the Cost Management Reader role assigned and the "Account owners can view charges" policy must be enabled in your Enterprise Agreement settings.
Prerequisites¶
Before syncing EA pricing, ensure you have:
- Enterprise Agreement: An active Enterprise Agreement with Microsoft
- Service Principal: A Service Principal (SPN) with the following: - Tenant ID: Your Azure AD tenant identifier - Application (Client) ID: The Service Principal's application ID - Client Secret Value: The secret value (not the Secret ID) - Cost Management Reader role: Assigned at the subscription scope where Azure Migrate is deployed
- EA Policy Enabled: The "Account owners can view charges" policy must be enabled by an Enterprise Administrator
If you haven't completed the EA pricing prerequisites yet, follow the setup steps above before proceeding.
Create Service Principal¶
If you don't already have a Service Principal for Dr Migrate, create one in Entra ID with an Application (Client) ID and Client Secret Value. For Microsoft documentation on creating a Service Principal, see here.
Assign Cost Management Reader Role¶
Assign the Cost Management Reader role to your Service Principal, scoped to the subscription or resource group where Azure Migrate is deployed. Learn more about assigning RBAC roles here.
Enable Account Owners Can View Charges Policy¶
- Sign in to Azure Portal with an Enterprise Administrator account
- Navigate to Cost Management + Billing
- Select your Billing Account
- Under Settings, choose Policies
- Set "Account owners can view charges" to On
This policy must be enabled by an Enterprise Administrator. Without this setting, the Cost Management Reader role alone will not provide access to EA pricing data.
Sync Enterprise Pricing¶
Access TCO Settings¶
Navigate to Plan > TCO Analysis > TCO Settings in Dr Migrate.
Open Azure Costing Tab¶
Select the Azure Costing tab from the left sub-nav.
Click Sync Enterprise Pricing¶
Click the Sync Enterprise Pricing button at the top of the TCO Settings screen. This opens the Enterprise Pricing configuration modal.
Enter Service Principal Details¶
Fill in the required Service Principal information:
- Tenant ID: Enter your Azure AD tenant identifier
- Subscription ID: Enter the subscription ID where Azure Migrate is deployed
- Service Principal - Application (Client) ID: Enter the application (client) ID of your Service Principal
- Service Principal - Client Secret Value: Paste the secret value (not the Secret ID)
Important: Ensure you are pasting the SPN 'Value' and NOT the 'Secret ID'. The secret value is what you need for authentication.
Save Configuration¶
Click Save to store your Enterprise Pricing configuration. Dr Migrate will use these credentials to sync your EA pricing data.
Verify Sync¶
After saving, Dr Migrate will attempt to sync your Enterprise Agreement pricing. The system will use your negotiated rates for all cost calculations and TCO models going forward.
Verification¶
After configuring Enterprise Pricing sync:
- Check TCO Reports: Generate a TCO report and verify that costs reflect your EA discounts
- Review Cost Models: Navigate through cost calculations to confirm enterprise rates are being applied
- Monitor Data Health: Check the Data Health dashboard to ensure EA pricing data is being ingested successfully
If you encounter issues with EA pricing sync, verify that: - The Service Principal has the Cost Management Reader role assigned - The "Account owners can view charges" policy is enabled in your Enterprise Agreement - The Client Secret Value (not Secret ID) is correct and hasn't expired - The subscription ID matches where Azure Migrate is deployed
Troubleshooting¶
If Enterprise Pricing sync fails:
- Verify Service Principal Permissions: Ensure the SPN has the Cost Management Reader role at the subscription scope
- Check EA Policy: Confirm an Enterprise Administrator has enabled "Account owners can view charges" in Cost Management + Billing > Policies
- Validate Credentials: Double-check that you're using the Client Secret Value (not the Secret ID) and that it hasn't expired
- Review Subscription: Ensure the Subscription ID matches the subscription where Azure Migrate is deployed
For detailed setup instructions, see the Prerequisites section above.

