---
id: change/bcapps/10753
type: change
title: "#10753 Cross-environment Master Data synchronization (same tenant)"
summary: Cross-environment Master Data Management now allows subsidiary environments to synchronize master data from a source environment within the same tenant via an authenticated ODataV4 API, with capability negotiation, resumable streaming, inline media support, and OAuth2 transport.
tier: official
language: en
tags:
  - feature
  - main
  - bc30
  - permissionset mdm cross-env read
  - permissionset master data mgt. - objects
  - codeunit integration master data synch.
  - codeunit mdm contact relation cache
  - codeunit mdm cross-env change detector
  - codeunit mdm cross-env data source
system: integration
review:
  state: reviewed
  by: opus
  at: "2026-10-08T02:05:33.072Z"
  flags: []
generated:
  at: "2026-10-08T01:26:53.141Z"
  pipeline: 0.2.0
  prompts:
    extract-change: 1
  input_hash: 527b9cb5146729f437cb0bccbd9cdaf7a9ad5f31
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/pull/10753
    title: "microsoft/BCApps#10753: Cross-environment Master Data synchronization (same tenant)"
    date: "2026-09-10"
    commit: 527b9cb5146729f437cb0bccbd9cdaf7a9ad5f31
    t: null
    quote: Extends Master Data Management from same-environment, company-to-company sync to cross-environment sync within the same tenant.
links:
  learn: []
  objects:
    - object/permissionset/7242
    - object/permissionset/7230
    - object/codeunit/7231
    - object/codeunit/7234
    - object/codeunit/7245
    - object/codeunit/7249
    - object/codeunit/7241
    - object/codeunit/7247
    - object/codeunit/7232
    - object/codeunit/7240
    - object/codeunit/7242
    - object/codeunit/7246
    - object/codeunit/7244
    - object/codeunit/7248
    - object/codeunit/7239
    - object/codeunit/7233
    - object/codeunit/7243
    - object/codeunit/7230
    - object/codeunit/7237
    - object/codeunit/7235
    - object/codeunit/7236
    - object/codeunit/7238
    - object/enum/7239
    - object/interface/imdm-data-source
    - object/interface/imdm-source-transport
    - object/page/7232
    - object/page/7230
    - object/page/7236
    - object/page/7233
    - object/tableextension/7246
    - object/tableextension/7251
    - object/tableextension/7244
    - object/tableextension/7250
    - object/tableextension/7245
    - object/table/7230
    - object/tableextension/7235
  features: []
  topics: []
  localizations: []
  videos: []
  posts: []
  guidelines: []
  changes: []
number: 10753
repo: microsoft/BCApps
source_id: bcapps-prs
url: https://github.com/microsoft/BCApps/pull/10753
kind: pr
base_branch: main
major: "30"
merged_at: "2026-09-10T08:54:01Z"
author: dcenic
author_type: User
community_contribution: false
labels:
  - "AL: Apps (W1)"
  - "Team: Integrations"
change_class: code
change_kind: feature
behavior_change: true
breaking: false
files:
  count: 48
  additions: 6701
  deletions: 288
  al: 36
apps:
  - MasterDataManagement
objects_touched:
  - key: permissionset/7242
    page: permissionset/7242
    type: permissionset
    id: 7242
    name: MDM Cross-Env Read
    app: MasterDataManagement
    status: added
  - key: permissionset/7230
    page: permissionset/7230
    type: permissionset
    id: 7230
    name: Master Data Mgt. - Objects
    app: MasterDataManagement
    status: modified
  - key: codeunit/7231
    page: codeunit/7231
    type: codeunit
    id: 7231
    name: Integration Master Data Synch.
    app: MasterDataManagement
    status: modified
  - key: codeunit/7234
    page: codeunit/7234
    type: codeunit
    id: 7234
    name: MDM Contact Relation Cache
    app: MasterDataManagement
    status: added
  - key: codeunit/7245
    page: codeunit/7245
    type: codeunit
    id: 7245
    name: MDM Cross-Env Change Detector
    app: MasterDataManagement
    status: added
  - key: codeunit/7249
    page: codeunit/7249
    type: codeunit
    id: 7249
    name: MDM Cross-Env Data Source
    app: MasterDataManagement
    status: added
  - key: codeunit/7241
    page: codeunit/7241
    type: codeunit
    id: 7241
    name: MDM Cross-Env Source API
    app: MasterDataManagement
    status: added
  - key: codeunit/7247
    page: codeunit/7247
    type: codeunit
    id: 7247
    name: MDM Http Source Transport
    app: MasterDataManagement
    status: added
  - key: codeunit/7232
    page: codeunit/7232
    type: codeunit
    id: 7232
    name: MDM Inline Media
    app: MasterDataManagement
    status: added
  - key: codeunit/7240
    page: codeunit/7240
    type: codeunit
    id: 7240
    name: MDM Local Data Source
    app: MasterDataManagement
    status: added
  - key: codeunit/7242
    page: codeunit/7242
    type: codeunit
    id: 7242
    name: MDM Privacy Notice
    app: MasterDataManagement
    status: added
  - key: codeunit/7246
    page: codeunit/7246
    type: codeunit
    id: 7246
    name: MDM Source Capabilities
    app: MasterDataManagement
    status: added
  - key: codeunit/7244
    page: codeunit/7244
    type: codeunit
    id: 7244
    name: MDM Source Connection
    app: MasterDataManagement
    status: added
  - key: codeunit/7248
    page: codeunit/7248
    type: codeunit
    id: 7248
    name: MDM Source Response
    app: MasterDataManagement
    status: added
  - key: codeunit/7239
    page: codeunit/7239
    type: codeunit
    id: 7239
    name: MDM Source Watermark
    app: MasterDataManagement
    status: added
  - key: codeunit/7233
    page: codeunit/7233
    type: codeunit
    id: 7233
    name: Master Data Management
    app: MasterDataManagement
    status: modified
  - key: codeunit/7243
    page: codeunit/7243
    type: codeunit
    id: 7243
    name: Master Data Mgt. Install
    app: MasterDataManagement
    status: added
  - key: codeunit/7230
    page: codeunit/7230
    type: codeunit
    id: 7230
    name: Master Data Mgt. Setup Default
    app: MasterDataManagement
    status: modified
  - key: codeunit/7237
    page: codeunit/7237
    type: codeunit
    id: 7237
    name: Master Data Mgt. Subscribers
    app: MasterDataManagement
    status: modified
  - key: codeunit/7235
    page: codeunit/7235
    type: codeunit
    id: 7235
    name: Master Data Mgt. Table Couple
    app: MasterDataManagement
    status: modified
  - key: codeunit/7236
    page: codeunit/7236
    type: codeunit
    id: 7236
    name: Master Data Mgt. Tbl. Uncouple
    app: MasterDataManagement
    status: modified
  - key: codeunit/7238
    page: codeunit/7238
    type: codeunit
    id: 7238
    name: Master Data Mgt. Upgrade
    app: MasterDataManagement
    status: modified
  - key: enum/7239
    page: enum/7239
    type: enum
    id: 7239
    name: MDM Data Source Type
    app: MasterDataManagement
    status: added
  - key: interface/imdm data source
    page: interface/imdm-data-source
    type: interface
    id: null
    name: IMDM Data Source
    app: MasterDataManagement
    status: added
  - key: interface/imdm source transport
    page: interface/imdm-source-transport
    type: interface
    id: null
    name: IMDM Source Transport
    app: MasterDataManagement
    status: added
  - key: page/7232
    page: page/7232
    type: page
    id: 7232
    name: MDM Connection Details
    app: MasterDataManagement
    status: added
  - key: page/7230
    page: page/7230
    type: page
    id: 7230
    name: Master Data Management Setup
    app: MasterDataManagement
    status: modified
  - key: page/7236
    page: page/7236
    type: page
    id: 7236
    name: Master Data Synch. Fields
    app: MasterDataManagement
    status: modified
  - key: page/7233
    page: page/7233
    type: page
    id: 7233
    name: Master Data Synch. Tables
    app: MasterDataManagement
    status: modified
  - key: tableextension/7246
    page: tableextension/7246
    type: tableextension
    id: 7246
    name: MDM Contact
    app: MasterDataManagement
    status: added
  - key: tableextension/7251
    page: tableextension/7251
    type: tableextension
    id: 7251
    name: MDM Currency Exch. Rate
    app: MasterDataManagement
    status: added
  - key: tableextension/7244
    page: tableextension/7244
    type: tableextension
    id: 7244
    name: MDM Customer
    app: MasterDataManagement
    status: added
  - key: tableextension/7250
    page: tableextension/7250
    type: tableextension
    id: 7250
    name: MDM Post Code
    app: MasterDataManagement
    status: added
  - key: tableextension/7245
    page: tableextension/7245
    type: tableextension
    id: 7245
    name: MDM Vendor
    app: MasterDataManagement
    status: added
  - key: table/7230
    page: table/7230
    type: table
    id: 7230
    name: Master Data Management Setup
    app: MasterDataManagement
    status: modified
  - key: tableextension/7235
    page: tableextension/7235
    type: tableextension
    id: 7235
    name: MasterDataMgtTableMapping
    app: MasterDataManagement
    status: modified
objects_unjoined: []
obsoletions: []
backports:
  - number: 11869
    base: releases/29.x
    url: https://github.com/microsoft/BCApps/pull/11869
fixes_issues: []
work_items:
  - 647660
systems:
  - integration
quote: Extends Master Data Management from same-environment, company-to-company sync to cross-environment sync within the same tenant.
joined_against:
  major: "30"
  commit: ecbc028c25dbe83b61313bc566e6c1d41184bb1c
---

# #10753 Cross-environment Master Data synchronization (same tenant)

> Cross-environment Master Data Management now allows subsidiary environments to synchronize master data from a source environment within the same tenant via an authenticated ODataV4 API, with capability negotiation, resumable streaming, inline media support, and OAuth2 transport.

[Pull request](https://github.com/microsoft/BCApps/pull/10753) · merged into `main` (BC30) on 2026-09-10 by dcenic · 48 files (+6701 -288), 36 AL · feature · tier official · reviewed (checked by Opus)

## What changed

- New IMDM Data Source interface with Local and Cross-Env implementations for flexible data source routing
- Source-side generic API with GetCapabilities, GetRecords (paged change feed), and LastModifiedAtPerTable for change detection
- OAuth2 client-credentials HTTP transport with in-session token cache and 429 backoff handling
- Media and Blob fields sync inline as base64 with per-field 512 KB cap to avoid SystemModifiedAt conflicts
- Connection Details wizard for setup similar to Intercompany, with security audit logging and mandatory privacy consent
- Behaviour changes for users or extensions.

## AL objects touched

- [Permission set 7242 "MDM Cross-Env Read"](../../objects/permissionset/7242.md), MasterDataManagement: added
- [Permission set 7230 "Master Data Mgt. - Objects"](../../objects/permissionset/7230.md), MasterDataManagement: modified
- [Codeunit 7231 "Integration Master Data Synch."](../../objects/codeunit/7231.md), MasterDataManagement: modified
- [Codeunit 7234 "MDM Contact Relation Cache"](../../objects/codeunit/7234.md), MasterDataManagement: added
- [Codeunit 7245 "MDM Cross-Env Change Detector"](../../objects/codeunit/7245.md), MasterDataManagement: added
- [Codeunit 7249 "MDM Cross-Env Data Source"](../../objects/codeunit/7249.md), MasterDataManagement: added
- [Codeunit 7241 "MDM Cross-Env Source API"](../../objects/codeunit/7241.md), MasterDataManagement: added
- [Codeunit 7247 "MDM Http Source Transport"](../../objects/codeunit/7247.md), MasterDataManagement: added
- [Codeunit 7232 "MDM Inline Media"](../../objects/codeunit/7232.md), MasterDataManagement: added
- [Codeunit 7240 "MDM Local Data Source"](../../objects/codeunit/7240.md), MasterDataManagement: added
- [Codeunit 7242 "MDM Privacy Notice"](../../objects/codeunit/7242.md), MasterDataManagement: added
- [Codeunit 7246 "MDM Source Capabilities"](../../objects/codeunit/7246.md), MasterDataManagement: added
- [Codeunit 7244 "MDM Source Connection"](../../objects/codeunit/7244.md), MasterDataManagement: added
- [Codeunit 7248 "MDM Source Response"](../../objects/codeunit/7248.md), MasterDataManagement: added
- [Codeunit 7239 "MDM Source Watermark"](../../objects/codeunit/7239.md), MasterDataManagement: added
- [Codeunit 7233 "Master Data Management"](../../objects/codeunit/7233.md), MasterDataManagement: modified
- [Codeunit 7243 "Master Data Mgt. Install"](../../objects/codeunit/7243.md), MasterDataManagement: added
- [Codeunit 7230 "Master Data Mgt. Setup Default"](../../objects/codeunit/7230.md), MasterDataManagement: modified
- [Codeunit 7237 "Master Data Mgt. Subscribers"](../../objects/codeunit/7237.md), MasterDataManagement: modified
- [Codeunit 7235 "Master Data Mgt. Table Couple"](../../objects/codeunit/7235.md), MasterDataManagement: modified
- [Codeunit 7236 "Master Data Mgt. Tbl. Uncouple"](../../objects/codeunit/7236.md), MasterDataManagement: modified
- [Codeunit 7238 "Master Data Mgt. Upgrade"](../../objects/codeunit/7238.md), MasterDataManagement: modified
- [Enum 7239 "MDM Data Source Type"](../../objects/enum/7239.md), MasterDataManagement: added
- [Interface "IMDM Data Source"](../../objects/interface/imdm-data-source.md), MasterDataManagement: added
- [Interface "IMDM Source Transport"](../../objects/interface/imdm-source-transport.md), MasterDataManagement: added
- [Page 7232 "MDM Connection Details"](../../objects/page/7232.md), MasterDataManagement: added
- [Page 7230 "Master Data Management Setup"](../../objects/page/7230.md), MasterDataManagement: modified
- [Page 7236 "Master Data Synch. Fields"](../../objects/page/7236.md), MasterDataManagement: modified
- [Page 7233 "Master Data Synch. Tables"](../../objects/page/7233.md), MasterDataManagement: modified
- [Table extension 7246 "MDM Contact"](../../objects/tableextension/7246.md), MasterDataManagement: added
- [Table extension 7251 "MDM Currency Exch. Rate"](../../objects/tableextension/7251.md), MasterDataManagement: added
- [Table extension 7244 "MDM Customer"](../../objects/tableextension/7244.md), MasterDataManagement: added
- [Table extension 7250 "MDM Post Code"](../../objects/tableextension/7250.md), MasterDataManagement: added
- [Table extension 7245 "MDM Vendor"](../../objects/tableextension/7245.md), MasterDataManagement: added
- [Table 7230 "Master Data Management Setup"](../../objects/table/7230.md), MasterDataManagement: modified
- [Table extension 7235 "MasterDataMgtTableMapping"](../../objects/tableextension/7235.md), MasterDataManagement: modified

## Also merged into

- [#11869](https://github.com/microsoft/BCApps/pull/11869) into `releases/29.x` on 2026-09-28

## Context

- Work items: AB#647660
- Labels: AL: Apps (W1), Team: Integrations
- Systems: integration
- From the description: "Extends Master Data Management from same-environment, company-to-company sync to cross-environment sync within the same tenant."

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).
