Microsoft Unbilled Usage - Version 15.1

Modified on Mon, 19 Oct at 1:23 PM

Overview

The Microsoft Unbilled Usage collector retrieves unbilled Azure consumption data from the Microsoft Partner Center API, providing detailed visibility into resource-level usage and costs across managed customer tenants for a given billing period.

This collector produces a single record type representing aggregated Azure resource consumption per usage line item, grouped by customer, product (meter), resource, and usage date. Each record includes consumption quantity, pre-tax cost totals, and an optional cost percentage markup.

The collector retrieves rated consumption data, meaning monetary values (cost and total) are supplied by the source system and included in each record submitted to Varibill.

This collector retrieves usage data for a configurable billing period, meaning each execution collects the unbilled consumption data accumulated during the specified period. The data reflects Azure resource usage as reported by the Microsoft Partner Center reconciliation API.

For general instructions on creating and running Source Collectors, see: Configuring a New Cloud Source Collector

Collector Summary

Field Value
Source Collector Name Microsoft Unbilled Usage - Version 15.1
Collection Behavior Period-Based (Billing Period)
Rating Model Rated
Vendor Name Microsoft
Product Microsoft Azure (via Partner Center)
Purpose Retrieves unbilled Azure consumption data from Microsoft Partner Center for billing and cost reconciliation within Varibill

About Microsoft Partner Center

Microsoft Partner Center is the platform through which Cloud Solution Provider (CSP) partners manage their customers’ Microsoft cloud subscriptions and services. Partner Center provides APIs for programmatic access to billing, usage, and reconciliation data across the partner’s managed customer base.

The Unbilled Usage Reconciliation API returns detailed line-item consumption data for Azure resources that have not yet been invoiced. Each line item includes the customer, subscription, Azure resource, meter details, quantity consumed, and pre-tax cost totals.

Access to the Partner Center API requires an Entra ID (formerly Azure Active Directory) application registration with the appropriate Partner Center API permissions.

Data Collected

The Microsoft Unbilled Usage - Version 15.1 collector retrieves rated Azure consumption data from the Microsoft Partner Center Unbilled Usage Reconciliation API. The collector downloads usage data for the configured billing period, extracts individual consumption line items, and aggregates them before submission.

Azure Resource Consumption (Per Line Item)

For each unbilled usage line item returned by the API: - A record representing consumption of an Azure resource, with a quantity reflecting usage volume and cost values reflecting the pre-tax billing totals

The Cost value includes an optional markup: if a Cost Percentage is configured, the cost is calculated as the pre-tax total plus the configured percentage of that total. If the Cost Percentage is set to 0, the cost equals the pre-tax total.

Records are aggregated by Client Identifier, Product Identifier, Record Identifier, Unique Identifier, and usage date. When multiple line items share these values, their Cost, Quantity, and Total values are summed.

The identifiers submitted to Varibill for each record are constructed as follows:

  • Client Identifier — a composite of the customer name and a configurable secondary component, separated by #. The secondary component is determined by the collector’s configuration:
    • If Include Resource Group in Client Identifier is enabled: the Azure resource group name
    • If Include Microsoft Tag in Client Identifier is enabled: the Microsoft resource tag value
    • If neither is enabled: the entitlement description (Azure plan name)
  • Product Identifier — a composite of the meter sub-category and meter name from the Azure usage data, separated by # (for example, Bandwidth Inter-Region#Inter Continent Data Transfer Out)
  • Record Identifier — a description in the format Consumption for {resource name} in resource group {group name} on {usage date}
  • Unique Identifier — a CRC32 hash derived from key usage fields (reseller MPN ID, customer name, subscription ID, entitlement ID, entitlement description, usage date, resource URI, resource group, meter sub-category, and meter name)
  • Tag — empty (not populated by this collector)
  • Last Seen Date — the usage date from the consumption record
  • Cost — the pre-tax total with the configured cost percentage markup applied
  • Total — the pre-tax total from the source data

Note: The collector retrieves unbilled usage data, which represents Azure consumption that has not yet appeared on an invoice. Quantities and costs may change in subsequent billing cycles as Microsoft finalises the charges.

Prerequisites

Before configuring this collector, ensure that:

  • You are a Microsoft Cloud Solution Provider (CSP) partner with access to Partner Center
  • You have an Entra ID (Azure AD) application registration with Partner Center API permissions
  • You have obtained the Tenant ID, Client ID, and Client Secret for the application
  • You know the currency code for your billing region
  • You have access to the Varibill Source Collector configuration screen

Warning! The Microsoft Client Secret grants API access to your Partner Center billing data. Store it securely and do not share it. This value is masked in the Varibill UI once saved. If it is compromised, rotate the secret in your Entra ID application registration immediately.

Configuration Parameters

The parameters below are entered when configuring the collector in Varibill. They are grouped by function.

Connection Parameters

These parameters authenticate against the Microsoft Partner Center API using an Entra ID application registration.

Parameter What it is Where to find it
Microsoft Tenant ID The GUID identifying your Microsoft Entra ID tenant Entra ID portal → Tenant properties
Microsoft Client ID The GUID identifying your registered application Entra ID → App registrations → your app → Application (client) ID
Microsoft Secret Key The client secret for your registered application Entra ID → App registrations → your app → Certificates & secrets

Warning! The Microsoft Secret Key is a sensitive credential. It is masked in the Varibill UI once saved. If it is compromised, rotate the secret in your Entra ID application registration immediately.

Billing Parameters

These parameters control what usage data the collector retrieves from the Partner Center API.

Parameter What it is Example
Currency Code The ISO currency code for the billing data to retrieve USD
Billing Period The billing period to retrieve unbilled usage data for. Use current for the current billing period or last for the previous billing period. last
Attribute Set The attribute set that determines the level of detail returned by the API full

Client Identifier Parameters

These parameters control how the Client Identifier is constructed for each record. Only one of the two boolean parameters should be enabled at a time.

Parameter What it is Default
Include Resource Group in Client Identifier When enabled, appends the Azure resource group name to the customer name in the Client Identifier false
Include Microsoft Tag in Client Identifier When enabled, appends the Microsoft resource tag value to the customer name in the Client Identifier false

Note: If neither parameter is enabled, the Client Identifier uses the entitlement description (Azure plan name) as the secondary component. If both are enabled, the resource group takes precedence.

Cost Parameters

Parameter What it is Default
Cost Percentage A percentage markup applied on top of the pre-tax total to calculate the Cost value. Set to 0 for no markup. 0

API Parameters

These parameters control the API request behavior and retry logic.

Parameter What it is Default
Http API Prefix The protocol prefix for the API endpoint https://
Number of Unbilled File Retrieval Retries The number of times the collector retries retrieving usage data if the initial request does not return results immediately 8
Retry Interval in Seconds The number of seconds to wait between retry attempts 900

Note: The Microsoft Partner Center API may take time to prepare large unbilled usage data files. The retry parameters allow the collector to wait and re-request the data until it is available. The default configuration retries up to 8 times at 15-minute intervals (up to 2 hours total).

Operational Parameters

These parameters control file management behavior.

Parameter What it is Default
Delete data files older than The number of days after which locally stored collection files are automatically deleted. Must be at least 1. 62
Maximum number of records per file The maximum number of records written to a single output file before a new file is started. Must be between 1,000 and 50,000. 10000

Configuration Steps

Step 1: Register an Application in Microsoft Entra ID

  1. Sign in to the Entra ID portal.
  2. Navigate to App registrations and register a new application (or use an existing one with Partner Center API permissions).
  3. Note the Tenant ID and Client ID (Application ID).
  4. Under Certificates & secrets, create a new client secret and note the Secret Value immediately — it is only shown once.

Step 2: Ensure Partner Center API Permissions

  1. Ensure the application has the necessary permissions to access the Partner Center API for unbilled usage reconciliation data.
  2. Refer to the Microsoft Partner Center API documentation for the required permissions and setup steps.

Step 3: Configure the Collector in Varibill

  1. In the Varibill User Interface, open the Source Collector configuration screen.

  2. Enter the required field values under the Details tab:

    • Hosting Provider: Select Varibill Cloud
    • Source Collector Name: Select Microsoft Unbilled Usage - Version 15.1
  3. Enter the connection parameters:

    • Microsoft Tenant ID: The Entra ID tenant GUID
    • Microsoft Client ID: The application (client) ID GUID
    • Microsoft Secret Key: The client secret value
  4. Configure the billing parameters:

    • Currency Code: The ISO currency code (for example, USD)
    • Billing Period: The billing period to collect (for example, last)
    • Attribute Set: The level of detail (for example, full)
  5. Configure the client identifier parameters as needed:

    • Include Resource Group in Client Identifier: Enable if you want to segment billing by Azure resource group
    • Include Microsoft Tag in Client Identifier: Enable if you want to segment billing by Microsoft resource tag
  6. Configure the cost percentage if a markup is required:

    • Cost Percentage: The markup percentage (set to 0 for no markup)
  7. Save the collector configuration.

Step 4: Run the Collector

Run or schedule the collector according to your standard Source Collector execution process.

For detailed instructions, see: Configuring a New Cloud Source Collector

Note: The collector may take a significant amount of time to complete for large Azure environments, as the Microsoft Partner Center API can require multiple retries before the usage data file is available. Monitor the collector’s execution status and adjust the retry parameters if needed.

Troubleshooting

If the collector fails to connect to Microsoft Partner Center, verify that:

  • The Microsoft Tenant ID is correct and matches your Entra ID tenant.
  • The Microsoft Client ID is correct and matches your registered application.
  • The Microsoft Secret Key is valid and has not expired. Client secrets have configurable expiration dates in Entra ID.
  • The application has the required Partner Center API permissions.

If the collector connects successfully but returns no data, verify that:

  • The Billing Period is set correctly (for example, last for the current unbilled period).
  • The Currency Code matches the currency used in your Partner Center billing configuration.
  • There is active Azure consumption under your managed customer subscriptions.
  • The Number of Unbilled File Retrieval Retries and Retry Interval in Seconds values are sufficient — large environments may need more retries or longer intervals.

If the collector returns data but Client Identifiers are not grouped as expected, verify that:

  • The Include Resource Group in Client Identifier and Include Microsoft Tag in Client Identifier settings match your billing segmentation needs.
  • Only one of the two boolean parameters is enabled at a time.

Microsoft References

The following resources may assist with locating values or configuring your Microsoft Partner Center API access.

Microsoft Documentation (External)

Note: Microsoft documentation is provided for reference. Interface labels and available features may vary depending on your Partner Center agreement type and Entra ID configuration.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article