Now accepting guest editorial from SAP, Oracle, Workday and ServiceNow practitioners.Pitch a guide
The Sign-Off Table

Lesson 4 of 5

Aligning SAP BTP with the ERP landscape

11 min

Listen to this lesson

0:00 / 16:49

Most SAP S/4HANA programs now include work on SAP Business Technology Platform: side-by-side apps, integration flows, workflows, launchpad content. That work has its own landscape, and it must line up with the ERP landscape. A BTP app tested against the wrong ERP system proves nothing, and a BTP change that reaches production before the ERP change it depends on breaks production.

Subaccounts per stage

On SAP BTP, apps and services run in subaccounts inside a global account, optionally grouped in directories. SAP Learning recommends separate subaccounts per stage because each subaccount has its own configuration: trust to identity providers, destinations, connectivity and access. That lets you connect the development subaccount to developer identities and development systems, and keep production locked down. Labels such as owner, cost center or stage add metadata for cost and governance.

Global accountContoso's BTP contract; administers, hosts no apps
Directory: extensionsGroups the stage subaccounts and their entitlements
Stage subaccountscmc-ext-dev, cmc-ext-test, cmc-ext-preprod, cmc-ext-prod
Shared services subaccountcmc-central-services: transport management and alerting
Sandbox subaccountcmc-sandbox: experiments on free plans, never connected to production data
Contoso's BTP account model.
The Sign-Off Table · thesignofftable.com/academy/sap-arc-202

Pairing each stage with an ERP tier

BTP subaccountERP system and clientIdentityPromotion
cmc-ext-devCMD 300 (unit test client)Developer usersDevelopers deploy from their tools
cmc-ext-testCMQ 100Test users mirroring business rolesBy transport from development
cmc-ext-preprodCMR 100Test users; performance usersSame transport as production, rehearsed (added with CMR after go-live)
cmc-ext-prodCMP 100Business users from the corporate identity providerApproved transport only

Each BTP stage points to the ERP tier at the same stage. Destinations make the pairing explicit.

The pairing is implemented through destinations in each subaccount (and, for systems not exposed to the internet, the Cloud Connector). Contoso names destinations identically in every subaccount, for example CMC_S4HANA, so the app code never changes between stages; only the destination's target differs. A destination in the test subaccount that points to CMP is a defect, and Priya's entry criteria for a test cycle include a destination check.

Each BTP stage points to the ERP tier at the same stage through an identically named destination, so app code never changes between stages.
The Sign-Off Table · thesignofftable.com/academy/sap-arc-202

Shared services and transports

SAP's DevOps reference architecture for BTP recommends running services such as SAP Cloud Transport Management in their own subaccount, alongside other shared services, to separate concerns. Contoso follows that: cmc-central-services hosts transport management and alerting. A CI/CD pipeline builds and tests the app, then hands the tested archive to Cloud Transport Management, which moves it through test, pre-production and production nodes. ERP transports and BTP transports are tied to the same release in SAP Cloud ALM so they are deployed in the right order.

One release in SAP Cloud ALM ties the ABAP transports and the BTP archive together, so production receives them in the right order.
The Sign-Off Table · thesignofftable.com/academy/sap-arc-202
  1. BuildPipeline builds the fleet order status app and runs its automated tests
  2. Test nodeArchive deployed to cmc-ext-test; integration tests against CMQ
  3. Pre-production nodeSame archive to cmc-ext-preprod; rehearsal against CMR
  4. Production nodeSame archive to cmc-ext-prod after approval, after the ABAP transports it needs
One tested archive travels through all BTP stages, in step with the ERP release.
The Sign-Off Table · thesignofftable.com/academy/sap-arc-202
Ad hocApps deployed by hand to whatever subaccount, pointing anywhere. Tests prove nothing
Aligned but looseStages match, but developers deploy straight to production. Hard to audit
Controlled but crossedTransports are managed, but destinations point to the wrong tiers
Aligned and controlledEach stage pairs with its ERP tier, and one tested archive is promoted
Where a BTP landscape stands. Aim for the top right.
The Sign-Off Table · thesignofftable.com/academy/sap-arc-202

Identity and integration content per stage

Trust is configured per subaccount, which lets each stage use the right identities. Contoso's production subaccount trusts the corporate identity provider so business users sign in with their normal accounts and are assigned role collections by group. The test and pre-production subaccounts use test users that mirror business roles, so authorization tests mean something, and developers never hold production role collections. The same staging applies to integration content: Cloud Integration flows such as the ASN to Great Lakes Fleet Services are promoted through test, pre-production and production tenants with transport management, never edited directly in production. Each tenant's endpoints and credentials are configured for its own stage and kept out of the deployable content.

Two common mistakes are worth naming. The first is a single "non-production" subaccount shared by development and testing: developers redeploy during a test cycle and results become meaningless. The second is a test subaccount whose identity provider is the production one with broad groups: testers then carry real business authorizations into tests, and negative authorization tests cannot fail the way they should.

What would you do?

The fleet order status app shows correct data in cmc-ext-test, but Priya notices some test orders appear in CMP. What is the most likely cause and the right response?

Key points
  • Use separate BTP subaccounts per stage; each has its own trust, destinations and access.
  • Pair each BTP stage with the ERP tier at the same stage, using identically named destinations.
  • Run shared services such as Cloud Transport Management in their own subaccount.
  • Promote one tested archive through the stages, in step with the ERP release.

Check your understanding · not graded

Lesson check

  1. 1. Why does SAP recommend separate BTP subaccounts per stage?

  2. 2. Which ERP tier should the cmc-ext-test subaccount point to?

  3. 3. Where does Contoso run SAP Cloud Transport Management?

  4. 4. Why name destinations identically in every subaccount?