---
id: change/bcapps/9126
type: change
title: "#9126 [Shopify] Base price-sync bulk threshold on changed price count"
summary: Product price synchronization with Shopify now triggers bulk operations based on the count of changed variants rather than total mapped products, improving efficiency when few prices change in large catalogs.
tier: official
language: en
tags:
  - fix
  - main
  - bc30
  - codeunit shpfy product export
  - codeunit shpfy variant api
system: integration
review:
  state: reviewed
  by: opus
  at: "2026-10-08T02:13:17.141Z"
  flags: []
generated:
  at: "2026-10-08T01:26:53.141Z"
  pipeline: 0.2.0
  prompts:
    extract-change: 1
  input_hash: 237399c6c299e244b8e0915c8f83f78c4a2cde63
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/pull/9126
    title: "microsoft/BCApps#9126: [Shopify] Base price-sync bulk threshold on changed price count"
    date: "2026-07-09"
    commit: 237399c6c299e244b8e0915c8f83f78c4a2cde63
    t: null
    quote: Decide based on the actual number of changed variants instead
links:
  learn: []
  objects:
    - object/codeunit/30178
    - object/codeunit/30189
  features: []
  topics: []
  localizations: []
  videos: []
  posts: []
  guidelines: []
  changes: []
number: 9126
repo: microsoft/BCApps
source_id: bcapps-prs
url: https://github.com/microsoft/BCApps/pull/9126
kind: pr
base_branch: main
major: "30"
merged_at: "2026-07-09T12:27:45Z"
author: onbuyuka
author_type: User
community_contribution: false
labels:
  - "AL: Apps (W1)"
change_class: code
change_kind: fix
behavior_change: true
breaking: false
files:
  count: 4
  additions: 118
  deletions: 63
  al: 2
apps:
  - Shopify
objects_touched:
  - key: codeunit/30178
    page: codeunit/30178
    type: codeunit
    id: 30178
    name: Shpfy Product Export
    app: Shopify
    status: modified
  - key: codeunit/30189
    page: codeunit/30189
    type: codeunit
    id: 30189
    name: Shpfy Variant API
    app: Shopify
    status: modified
objects_unjoined: []
obsoletions: []
backports: []
fixes_issues: []
work_items:
  - 640288
systems:
  - integration
quote: Decide based on the actual number of changed variants instead
joined_against:
  major: "30"
  commit: ecbc028c25dbe83b61313bc566e6c1d41184bb1c
---

# #9126 [Shopify] Base price-sync bulk threshold on changed price count

> Product price synchronization with Shopify now triggers bulk operations based on the count of changed variants rather than total mapped products, improving efficiency when few prices change in large catalogs.

[Pull request](https://github.com/microsoft/BCApps/pull/9126) · merged into `main` (BC30) on 2026-07-09 by onbuyuka · 4 files (+118 -63), 2 AL · fix · tier official · reviewed (checked by Opus)

## What changed

- Price sync bulk operation threshold now counts actual changed variants instead of total mapped products
- UpdateProductPrice accumulates per-variant mutations and uses GraphQueryList.Count() to determine real change count
- Individual synchronous mutations are sent when changes are below the 100-variant threshold instead of bulk operations
- Synchronous send removed from TryFunction to enable request logging and authoritative updatedAt tracking
- New unit test validates that few price changes use individual synchronous mutations without bulk operations
- Behaviour changes for users or extensions.

## AL objects touched

- [Codeunit 30178 "Shpfy Product Export"](../../objects/codeunit/30178.md), Shopify: modified
- [Codeunit 30189 "Shpfy Variant API"](../../objects/codeunit/30189.md), Shopify: modified

## Context

- Work items: AB#640288
- Labels: AL: Apps (W1)
- Systems: integration
- From the description: "Decide based on the actual number of changed variants instead"

Source: metadata of a merged pull request in microsoft/BCApps (bcapps): title, labels, changed paths and counts, with a summary in our words. No source text and no description beyond one short quote (D10, D61).
