Skip to content
CPQ DevKit™ for SAP
CPQ DevKit™ for SAP

Ship SAP CPQ global scripts faster

Configure tenants, pull and push global scripts, track local changes, and validate Python from one VS Code workspace.

macOS • Windows • Linux

CPQ DevKit™ for SAP helps you configure a tenant, pull SAP CPQ global scripts into your workspace, edit them with validation, then push ready changes back.

Quick Start

  1. Install the extension from the VS Code Marketplace
  2. Open a folder and run CPQ DevKit™ for SAP: Configure Environment
  3. Enter the tenant name, URL, and OAuth client id. Store the client secret (and optional password) when prompted — they stay in VS Code secret storage
  4. Run Pull Global Scripts from Tenant to download scripts into the workspace
  5. Edit a script, mark it ready in the Changes view, then Push Ready Changes to Tenant

You can also create scripts locally with Create Global Script and work offline. Local change tracking and push bundles still work without a tenant connection.

What's New in 2.7.1

  • New Marketplace icon: the CPQ DevKit™ wordmark on the SAP color plate
  • Ask @cpq-sap in chat, or use #sapEnv, to see the connected tenant
  • Install Chat Skills adds guidance for global-script sync
  • Requires VS Code 1.109 or later

See full release notes in the changelog.

How to use it

Connect a tenant

Run Configure Environment to add, edit, switch, or delete tenants. Each environment stores:

  • tenant name
  • tenant URL
  • OAuth client id
  • optional username if password-grant fallback is needed

Client secrets and passwords are never written to workspace files.

Use Export Environment Configuration / Import Environment Configuration to move tenant settings (without secrets) between machines.

Pull and edit scripts

Pull Global Scripts from Tenant downloads scripts and their property files into:

  • sap-cpq/global-scripts
  • sap-cpq/global-script-properties

Both folders are configurable. Open a Python script and use Open Script Properties to edit the matching JSON sidecar (name, system id, dates, events, and related metadata).

Validate Script checks empty files, tab indentation, trailing whitespace, missing functions, and invalid property data. The shortcut is Shift+Alt+V in a Python editor (Shift+Alt+P opens properties).

Review and push changes

The CPQ DevKit™ for SAP sidebar has a Changes view:

  1. Changed scripts and property files appear after you edit or after Refresh Changes
  2. Check the items you want to include
  3. Push Ready Changes to Tenant updates the connected tenant
  4. Or run Build Push Bundle to export the selected changes as JSON and advance the local baseline

Open Change Diff compares a changed file with the last pulled version.

Commands

All commands are in the Command Palette (Ctrl+Shift+P / Cmd+Shift+P) under CPQ DevKit™ for SAP.

CommandDescription
Configure EnvironmentAdd, edit, switch, or delete a tenant
Import Environment ConfigurationImport tenant settings (secrets are not included)
Export Environment ConfigurationExport tenant settings (secrets are not included)
Pull Global Scripts from TenantDownload scripts from the active tenant
Push Ready Changes to TenantPush checked changes to the active tenant
Create Global ScriptScaffold a new script and property file
Open Script PropertiesOpen or create the property file for a script
Validate ScriptCheck the current script and its properties
Refresh ChangesRefresh the Changes view
Open Change DiffDiff a change against the last pulled version
Build Push BundleExport checked changes as a JSON bundle
Clear Local CacheReset the local change baseline
Show Local CacheInspect the local change baseline
Convert to JSON / XML / CSVConvert the current data file
Install Chat SkillsAdd SAP sync guidance for chat

Settings

Configure the extension under sapCpq.* in VS Code Settings.

SettingDefaultDescription
sapCpq.workspace.globalScriptsPathsap-cpq/global-scriptsFolder for Python global scripts
sapCpq.workspace.propertiesPathsap-cpq/global-script-propertiesFolder for script property JSON files
sapCpq.validation.requireSystemIdtrueRequire a system id when validating properties

Requirements

  • VS Code 1.109 or later
  • An SAP CPQ tenant with API access for global scripts
  • An OAuth client (client-credentials). Username/password is optional fallback

Security & Privacy

  • Client secrets and passwords are stored in VS Code secret storage, not in the workspace
  • Tenant name, URL, and client id are stored locally so you can switch environments
  • Chat tools report the active tenant without secrets

Support

License

See LICENSE.md for details.

Frequently Asked Questions

What is CPQ DevKit™ for SAP?

A VS Code extension for SAP CPQ global script work: tenant pull/push, local change tracking, validation, and push bundles.

How do I connect to a tenant?

Run Configure Environment. Secrets stay in VS Code secret storage.

Can I work offline?

Yes. Create and validate scripts locally, then use Build Push Bundle. Pull and push need a configured tenant.

Which operating systems are supported?

macOS, Windows, and Linux.

Trademarks

SAP is a trademark of SAP SE. This extension is not affiliated with or endorsed by SAP SE.