---
title: >-
  New Pricing audit trail for contextual product variant prices - Shopify
  developer changelog
description: >-
  Shopify’s developer changelog documents all changes to Shopify’s platform.
  Find the latest news and learn about new platform opportunities.
source_url:
  html: >-
    https://shopify.dev/changelog/pricing-audit-trail-for-contextual-product-variant-prices
  md: >-
    https://shopify.dev/changelog/pricing-audit-trail-for-contextual-product-variant-prices.md
metadata:
  effectiveApiVersion: 2026-10
  affectedApi:
    - displayName: Admin GraphQL API
      handle: admin-graphql
  primaryTag:
    displayName: API
    handle: api
  secondaryTag:
    displayName: New
    handle: new
  indicatesActionRequired: false
  createdAt: '2026-09-04T13:50:17-04:00'
  postedAt: '2026-09-17T12:00:00-04:00'
  updatedAt: '2026-09-11T16:30:19-04:00'
  effectiveAt: '2026-09-30T12:00:00-04:00'
---

September 17, 2026

# New Pricing audit trail for contextual product variant prices

DateSeptember 17, 2026

Version[2026-10](https://shopify.dev/changelog?api_version=2026-10)

FlagsNew

SurfacesAPI

Affected APIs[Admin GraphQL API](https://shopify.dev/changelog?api_type=admin-graphql)

The GraphQL Admin API now includes the `auditTrail` field on [`ProductVariantContextualPricing`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/ProductVariantContextualPricing#field-ProductVariantContextualPricing.fields.auditTrail) in API version `2026-10`.

Apps with the [`read_products` access scope](https://shopify.dev/docs/api/usage/access-scopes#authenticated-access-scopes) can use this field to inspect the ordered adjustments that Shopify applied to a contextual product variant price.

Existing apps do not need to take action.

## What changed

The new `ProductVariantContextualPricing.auditTrail` field returns a [`PricingAuditTrail`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/PricingAuditTrail) object. Its [`priceAdjustments`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/PricingAuditTrail#field-PricingAuditTrail.fields.priceAdjustments) field contains the adjustments in the order that Shopify applied them.

Each [`AuditTrailAdjustment`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/AuditTrailAdjustment) includes:

* [`type`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/AuditTrailAdjustment#field-AuditTrailAdjustment.fields.type): The operation Shopify applied. The field returns an [`AuditTrailAdjustmentType`](https://shopify.dev/docs/api/admin-graphql/2026-10/enums/AuditTrailAdjustmentType) value of `ADDITION`, `MULTIPLICATION`, or `REPLACEMENT`.
* [`value`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/AuditTrailAdjustment#field-AuditTrailAdjustment.fields.value): The value used by the operation.
* [`price`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/AuditTrailAdjustment#field-AuditTrailAdjustment.fields.price): The price after Shopify applied the adjustment.
* [`label`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/AuditTrailAdjustment#field-AuditTrailAdjustment.fields.label): A localized, human-readable description of the adjustment.

Apps should treat `label` as display text. Its value can be localized or changed, so apps should not parse it or use it as a stable identifier.

This first release of the pricing audit trail supports product variant contextual pricing. It does not include audit trails for order line items or draft order line items.

If Shopify cannot return a complete and correct audit trail, [`priceAdjustments`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/PricingAuditTrail#field-PricingAuditTrail.fields.priceAdjustments) returns an empty list instead of a partial result.

## Who's affected

This change applies to apps that use GraphQL Admin API version `2026-10` or later and need to explain how Shopify calculated a contextual product variant price.

The `read_products` access scope allows apps to query [`ProductVariantContextualPricing.auditTrail`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/ProductVariantContextualPricing#field-ProductVariantContextualPricing.fields.auditTrail). Apps using API versions before `2026-10` cannot query the field.

Existing apps are not affected unless they choose to query the new field. The change does not modify the existing [`ProductVariantContextualPricing.price`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/ProductVariantContextualPricing#field-ProductVariantContextualPricing.fields.price) or [`ProductVariantContextualPricing.compareAtPrice`](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/ProductVariantContextualPricing#field-ProductVariantContextualPricing.fields.compareAtPrice) fields.

## Why this matters

Apps can inspect the calculation that produced a contextual price. ERP and B2B integrations can use this information to explain adjustments from price lists, currency conversion, taxes, fees, and rounding.

The audit trail explains the price calculation. It does not identify the market, catalog, or price list that Shopify selected.

## What to do

No action is required for existing apps.

To use the pricing audit trail:

1. Use GraphQL Admin API version `2026-10` or later.
2. Confirm that the app has the `read_products` access scope.
3. Add `auditTrail` and `priceAdjustments` to a contextual pricing query.
4. Test the query with a product variant that has contextual price adjustments.

A successful response returns the applicable adjustments in calculation order. An empty `priceAdjustments` list means that Shopify does not return a complete public audit trail for that price.

## Related docs

* [`ProductVariantContextualPricing` GraphQL Admin API reference](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/ProductVariantContextualPricing)
* [`ProductVariant.contextualPricing` GraphQL Admin API reference](https://shopify.dev/docs/api/admin-graphql/2026-10/objects/ProductVariant#field-ProductVariant.fields.contextualPricing)
* [`ContextualPricingContext` GraphQL Admin API reference](https://shopify.dev/docs/api/admin-graphql/2026-10/input-objects/ContextualPricingContext)
