Microsoft Cloud Solution Provider (CSP) Partner - Azure MCA (New)
Flexera One is migrating to new Azure Cost Management APIs to provide Azure Cloud Solution Providers (CSPs) with the latest billing details for cost analysis. Using these APIs, Azure CSP Modern Commerce Agreement (MCA) cost and usage details are imported into Flexera One. This new configuration replaces the legacy method, which will be deprecated. Your account manager will work with you to migrate to the Azure Cost Management APIs to maintain your Azure cost reporting in Flexera One and ensure a seamless transition.
The following features are supported in CSP partner - Azure MCA subscription:
• | Cost in billing currency |
• | Reserved Instances and Savings Plans cost and usage |
• | Amortization and commitment reallocation |
Important:The following limitations apply in Flexera One regarding CSP partner - Azure MCA subscription:
• | The List Price, Savings, and Savings Percentage metrics are not available. |
• | The Rate Reduction Savings dashboard is not available. |
• | The commitment inventory (Reserved Instances and Savings Plans) with expiration and utilization details is not available. |
This topic includes the following subsections:
• | Supported Scopes |
• | Scoping Scenarios |
• | Export Mechanisms |
• | Azure Permissions Required |
• | Connecting Azure MCA CSP Billing to Flexera One |
You can export Azure cost and usage data at the following scopes:
• | Customer Tenant |
• | Billing Profile |
• | Billing Account |
The following table lists the scoping scenarios for a CSP MCA.
Scope |
Description |
Scenario |
Recommended For |
Customer Tenant |
Billing data is scoped to an individual customer tenant (for example, customer A, customer B). |
A CSP supporting multiple customers, where each customer wants access to their own cost dashboard. |
Customer-level isolation and transparency. |
Billing Profile |
Costs grouped under a billing profile, which may span several tenants. |
A CSP using one profile for internal dev/test tenants or small bundled customers. |
Use cases where granular separation is not required. |
Billing Account |
Shows all usage and charges across all customers and profiles under the CSP. |
A finance team needs a consolidated view of all customer consumption. |
Internal financial operations, not for customer-facing portals. |
Exports can be delivered to:
• | A storage account in partner tenant |
For more details, see Creating Scheduled Exports in the Azure Portal.
• | A storage account in other tenant using a SAS token. To do so, perform the following steps: |
1. | Create a SAS token for a target Azure storage account. For more details, see Microsoft documentation on Export cost data with an Azure Storage account SAS key. |
2. | Create Exports with SAS token. Do one of the following: |
• | Creating Exports in Azure Portal. For more information, see Creating Exports in the Azure Portal. |
• | Creating Exports using Exports API. For more information, see Creating Export Using the Exports API. |
Creating Scheduled Exports in the Azure Portal
Note:This step is required only if you are using Exports.
Note:In the Azure Portal, scheduled exports must be in one-month chunks and can go back up to a maximum of 395 days.
Exports enable you to create a recurring task that automatically exports your billing data to an Azure Blob Storage on a daily, weekly, or monthly basis. The exported data is in CSV format and contains all the cost and usage data.
You can export large amounts of data with exports from Cost Management and import it into Flexera One.
To export data in the Azure storage account for importing it into Flexera One for cost reporting purposes:
1. | Sign in to the Azure portal (portal.azure.com) using your Azure account. |
2. | In the upper-left corner of the Web page, click the Show portal menu icon, and then click Cost Management + Billing. |
3. | In the left pane, click Cost Management, and under the Settings section in the left pane, click Exports. |
4. | Select the Scope at which you want to create export (Billing Account, Billing Profile, Customer). |
5. | Click Add to create a new billing export. The New export page opens. |
6. | Input information on the Basics tab. |
a. | From the Type of data dropdown list, select one of the following options. |
Note: You must create two exports—one for each type. Repeat steps below for each export type.
• | Cost & Usage (Actual)—To export standard usage and purchase costs. |
• | Cost & Usage (Amortized)—To export amortized costs for purchases like Azure reservations and Azure savings plan. |
b. | In the Export name field, enter the name for your export. |
c. | From the Dataset version dropdown list, select the dataset version. For Azure CSP, use the 2021-10-01 version. |
d. | From the Frequency dropdown list, select Daily export of month-to-date costs so that the latest data is aggregated from the previous daily exports. You can then specify more fields to define the date range in UTC format. |
Note:It is recommended to use the Daily export of month-to-date costs option.
7. | Click Add and then click Next. The Destination tab is activated for you to define the export destination. |
8. | Input information on the Destination tab. |
a. | From the Storage type dropdown list, select the storage type. The default type is Azure blob storage. |
b. | In the Destination and storage section, choose the Use existing or Create new option, and input information of your Azure storage account subscription. |
c. | From the Storage account dropdown list, select the storage account name or create a new one. If you create a new storage account, choose an Azure region. |
Important:If you are setting up a new storage account in the Azure portal, you must assign the Storage Blob Data Reader role to the storage account to access the blob data. For instructions, see Granting Required Permissions to Your App in Microsoft Entra ID.
d. | In the Container and Directory fields, input the storage container and directory path for the export file. |
e. | If you want to split your exports into multiple smaller files, enable the File partitioning option. This option is enabled by default. It is recommended to keep it enabled. |
f. | Choose whether to enable the Overwrite data option. This option is enabled by default. When it’s enabled, daily exports replace the previous day's file with an updated file. |
g. | From the data Format dropdown list, select CSV. |
h. | From the Compression Type dropdown list, select None as compressed file is not supported. |
9. | Click Next. The Review + create tab is activated. |
10. | Finally, create the export URL to connect a Bill Connect in Flexera One. The URL should be in the following format. |
https://<storage-account>.blob.core.windows.net/<container-name>/<directory-path>/<export-name>
Tip:For information on creating and managing exported data, see Microsoft documentation on Improved exports experience - Preview.
Creating Exports in the Azure Portal
Exports enable you to create a recurring task that automatically exports your billing data to an Azure Blob Storage on a daily, weekly, or monthly basis. The exported data is in CSV format and contains all the cost and usage data.
You can export large amounts of data with exports from Cost Management and import it into Flexera One.
To export data in the Azure storage account for importing it into Flexera One for cost reporting purposes:
1. | Sign in to the Azure portal (portal.azure.com) using your CSP partner account. |
2. | In the upper-left corner of the Web page, click the Show portal menu icon, and then click Cost Management + Billing. |
3. | In the left pane, click Cost Management, and under the Settings section in the left pane, click Exports. |
4. | Select the Scope at which you want to create export (Billing Account, Billing Profile, Customer). |
5. | Click Add to create a new billing export. The New export page opens. |
6. | Input information on the Basics tab. |
a. | From the Type of data dropdown list, select one of the following options. Repeat steps below for each export type. |
Important: You must create two exports—one for each type.
• | Cost & Usage (Actual)—To export standard usage and purchase costs. |
• | Cost & Usage (Amortized)—To export amortized costs for purchases like Azure reservations and Azure savings plan. |
b. | In the Export Name field, enter the name for your export. |
c. | From the Dataset version dropdown list, select the dataset version. For example, use the 2021-10-01 version. |
d. | From the Frequency dropdown list, select Daily export of month-to-date costs so that the latest data is aggregated from the previous daily exports. You can then specify more fields to define the date range in UTC format. |
Note:It is recommended to use the Daily export of month-to-date costs option.
7. | Click Add and then click Next. The Destination tab is activated for you to define the export destination. |
8. | Input information on the Destination tab. |
a. | From the Storage type dropdown list, select the storage type. The default type is Azure blob storage. |
b. | In the Destination and storage section, choose the SAS Token option. |
c. | In the Storage account field, enter the name of the storage account. |
d. | In the SAS Token field, enter the SAS token and prefix the token with the question mark icon (?). |
e. | In the Container and Directory fields, input the storage container and directory path for the export file. |
f. | From the data Format dropdown list, select CSV. |
g. | From the Compression Type dropdown list, select None as compressed file is not supported. |
9. | Click Next. The Review + create tab is activated. Review the export details. |
10. | Finally, create the export URL to connect a Bill Connect in Flexera One. The URL should be in the following format. |
https://<storage-account>.blob.core.windows.net/<container-name>/<directory-path>/<export-name>
Creating Export Using the Exports API
The Azure portal does not have the option to create SAS-based exports for Billing Profile and Customer scopes. So, you must use the Exports API to create SAS token based exports.
To create SAS token based exports using the Exports API:
1. | Open Microsoft documentation on Exports - Create Or Update. Click Try It in the HTTP request block. |
2. | Click Sign in. Sign in with CSP partner account. |
3. | Enter the following parameters as part of the API request: |
• | exportName—Enter the name of the export. |
• | scope—Enter the scope string in the following format with valid details for: |
• | Billing Account: /providers/Microsoft.Billing/billingAccounts/{billingAccountId} |
• | Billing Profile: /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId} |
• | Customer: /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/customers/{customerId} |
• | api-version—use 2025-03-01. |
4. | Enter the parameters in the request body for dataSet, destination, and recurrencePeriod. |
{
"properties": {
"definition": {
"dataSet": {
"configuration": {
"dataVersion": "2021-10-01",
"filters": []
},
"granularity": "Daily"
},
"timeframe": "MonthToDate",
"type": "ActualCost"
},
"deliveryInfo": {
"destination": {
"container": "{{storage-container}}",
"rootFolderPath": "{{storage-path}}",
"type": "AzureBlob",
"sasToken": "{{SAS-TOKEN}}",
"storageAccount": "{{storage-account-name}}",
"resourceId": null
}
},
"schedule": {
"recurrence": "Daily",
"recurrencePeriod": {
"from": "2025-04-16T00:00:00.000Z", // Export Start Date
"to": "2050-02-01T00:00:00.000Z" // Export End Date
},
"status": "Active"
},
"format": "Csv",
"partitionData": true,
"dataOverwriteBehavior": "OverwritePreviousReport",
"compressionMode": "none",
"exportDescription": "test"
}
}
Important: You must create two exports—one for ActualCost and the other for AmortizedCost.
5. | Click Run. |
To configure exports and connect billing data, the following Azure roles are required:
• | Billing Account Reader at the relevant billing scope |
• | Storage Blob Data Reader on the destination storage account (in your tenant or the target tenant) |
For cross-tenant exports, assign Storage Blob Data Reader in the target tenant and use a multi-tenant service principal.
Connecting Azure MCA CSP Billing to Flexera One
The following topics describe how to connect Azure MCA CSP Billing to Flexera One.
1. | Generating Credentials for MCA CSP Partner Billing Configurations |
2. | Obtaining the Required Data Fields From Azure |
3. | Connecting Azure MCA Cloud Solution Provider in Flexera One (New) |