---
title: >-
  Updating an order's shipping address recalculates taxes as of API version
  2026-10 - 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/posts/updating-an-orders-shipping-address-returns-accurate-financial-data
  md: >-
    https://shopify.dev/changelog/posts/updating-an-orders-shipping-address-returns-accurate-financial-data.md
metadata:
  effectiveApiVersion: 2026-10
  affectedApi:
    - displayName: Admin GraphQL API
      handle: admin-graphql
    - displayName: Admin REST API
      handle: admin-rest
  primaryTag:
    displayName: API
    handle: api
  secondaryTag:
    displayName: Breaking API Change
    handle: breaking-api-change
  indicatesActionRequired: true
  createdAt: '2026-07-02T15:52:30-04:00'
  postedAt: '2026-07-30T12:00:00-04:00'
  updatedAt: '2026-08-18T11:21:54-04:00'
  effectiveAt: '2026-07-03T12:00:00-04:00'
---

July 30, 2026

# Updating an order's shipping address recalculates taxes as of API version 2026-10

DateJuly 30, 2026

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

Flags[Breaking API Change](https://shopify.dev/changelog?filter=breaking-api-change)[Action required](https://shopify.dev/changelog?action_required=true)

SurfacesAPI

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

As of API version **2026-10**, changing the shipping address on an unfulfilled order through the [orderUpdate GraphQL mutation](https://shopify.dev/docs/api/admin-graphql/latest/mutations/orderUpdate) or the [REST Admin API order update endpoint](https://shopify.dev/docs/api/admin-rest/2026-10/resources/order#put-orders-order-id) recalculates the order's taxes against the new destination. Previously, `orderUpdate` saved the new address but left the original tax lines unchanged, so the order's totals no longer matched the destination it was shipping to.

## Why it matters

The order's financial data is now corrected as part of the update, now totals stay accurate to the shipping destination. After updating a shipping address, query the order to read the updated [`taxLines`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order#field-Order.fields.taxLines), [`totalTaxSet`](https://shopify.dev/docs/api/admin-graphql/latest/objects/Order#field-Order.fields.totalTaxSet), and totals, as you would for any other order edit. You don't need to make any changes to adopt this.

## How it works

This change applies to API versions 2026-10 onwards, on both the GraphQL Admin API and the REST Admin API.

Taxes aren't recalculated when:

* **The request uses an API version earlier than 2026-10**: The address is saved and tax lines are left unchanged, matching the behavior on those versions today.
* **The order is partially fulfilled or fully fulfilled**: The address is updated but taxes are left unchanged, because some or all units have already shipped to the original destination, and recalculating the whole order against the new address would apply the new destination's tax to units that didn't ship there, producing totals that don't match what was actually fulfilled.
* **The order can't be edited**: Recalculation runs through order editing, so the same [order-editing considerations](https://help.shopify.com/en/manual/fulfillment/managing-orders/editing-orders/considerations) apply. When an order isn't eligible for editing, the address is saved but taxes aren't recalculated.

Subscribers to the `orders/edited` webhook receive a notification when an address change results in a tax recalculation.

Because recalculation can change the order's total, an already-paid order can be left with an outstanding refundable or payable balance. After the update, compare the order's balance against its pre-update value: if it increased within your app's tolerance, mark the order as paid ([`orderMarkAsPaid`](https://shopify.dev/docs/api/admin-graphql/latest/mutations/orderMarkAsPaid)); for larger increases, merchants can send an invoice ([`orderInvoiceSend`](https://shopify.dev/docs/api/admin-graphql/latest/mutations/orderInvoiceSend)); if it decreased, refund the difference ([`refundCreate`](https://shopify.dev/docs/api/admin-graphql/latest/mutations/refundCreate)).

To learn more, see the [`orderUpdate` mutation](https://shopify.dev/docs/api/admin-graphql/latest/mutations/orderUpdate) and the [developer community discussion](https://community.shopify.dev/t/order-shipping-address-updates-will-start-to-recalculate-tax/36619).
