October 9, 2026 · Ahmed · More by Ahmed
Shopify Carrier Services No Longer Auto-Link to Shipping Profile
Shopify's 2026-10 API stopped auto-adding new carrier services to the General shipping profile — here's the silent failure mode and the fix.
Starting with API version 2026-10, stable since October 1, 2026, creating a carrier service through carrierServiceCreate or the REST carrier_services.json endpoint no longer automatically adds it to the shop's General shipping profile. For anyone building or maintaining freight, carrier, or multi-carrier shipping integrations, this is the kind of breaking change that doesn't throw an error anywhere — it just stops working quietly.
What used to happen, and what changed
Before 2026-10, an active API-created carrier service was automatically added to eligible shipping zones in the shop's General shipping profile — rates went live at checkout the moment the integration finished running. Shopify's changelog is explicit about the new behavior: "creating a carrier service only registers the carrier service. Shopify no longer adds that carrier service to the General shipping profile or any of its shipping zones by default." This affects carrier services created through carrierServiceCreate on the GraphQL Admin API and POST /admin/api/{version}/carrier_services.json on the REST Admin API.
Why this fails silently
The call itself still succeeds, and the carrier service is still registered — it's simply not wired into any shipping profile. Nothing in the request or response flags this. The only symptom, per Shopify's own wording, is that "merchants won't see rates from newly created carrier services at checkout." An integration that hasn't been updated for this change will look like it ran correctly while quietly producing no visible rates at all.
The two documented fixes
Shopify documents two ways to close the gap after creating a carrier service: directing merchants to manually add the carrier-calculated rate to the appropriate shipping profile in the Shopify admin (Shopify's recommended path), or adding that rate programmatically through the shipping profile APIs. Either way, the step is now required — it's no longer something the platform does for you as a side effect of creation.
Who this hits, and when
This only bites an integration the moment it targets API version 2026-10 or later: older, already-supported API versions keep the existing automatic-add behavior until those versions are sunset. Shopify's changelog names only carrierServiceCreate and the REST create endpoint as affected — if your integration also calls carrierServiceUpdate, check your own behavior there rather than assuming the same change applies. Before moving a shipping integration onto 2026-10, add an explicit step that confirms the carrier service's rate actually landed in a shipping profile, rather than trusting that creation alone made it checkout-visible.