Connect

Elevate, May 20-22-2025, Miami Beach, Florida

.

After completing this page, you should be able to:

  • List the new features and changes in Connect.
  • Demonstrate the use of templates in Connect.
  • Create and use a common module.
  • Install and use Connect CLI.

Time to complete page: 20 minutes

In 2024, Connect has introduced several exciting features and updates aimed at enhancing integration capabilities and improving user experience. Some of the important releases include:

Updates for Custom Applications

The applicationType for the Merchant Center Custom Applications has been changed for better clarity. You must now use merchant-center-custom-application instead of mc-app as the applicationType for Custom Applications.
Moreover, for better flexibility, the environment variables ENTRY_POINT_URI_PATH and CUSTOM_APPLICATION_ID in connect.yaml are now required and reserved for the application entry point URI path and application ID.

Version Field in ConnectorReference Deprecated

The version field of ConnectorReference is now optional. It will be completely removed in a future release. This change eases the deployment of Connectors because you can now deploy a Connector without needing to specify its version, as the latest version is used by default.

Integration Types Field

The integrationTypes field is now available to categorize Connectors based on their integration type. It allows you to filter the results of queries and searches for ConnectorStaged, Connectors, and Deployments based on their integration type, for example, psp, oms, tax etc.
The integrationType is also added as a query parameter in Query Deployments along with deploymentType. The integrationType and deploymentType can be used to filter deployments based on their integration type and deployment type, production or preview.

Redeploy with Updated Connector

You can now update a Connector when redeploying a Deployment. By setting the updateConnector property to true on the redeploy update action, you can ensure that the Connector is updated to its latest state.
{
  "action": "redeploy",
  "skipScripts": true,
  "configurationValues": [
    {
      "applicationName": "app-1",
      "standardConfiguration": [
        {
          "key": "CONFIG_KEY",
          "value": "config-key-value"
        }
      ],
      "securedConfiguration": [
        {
          "key": "CONFIG_SECRET_KEY",
          "value": "config-secret-key-value"
        }
      ]
    }
  ],
  "updateConnector": true
}

Assets Application Type

With this release, an application of Assets applicationType can be created to host static assets with CDN capabilities.

Application Templates

Four new application templates have been created to help you reduce the implementation time when working with these common use cases:

  1. Payment integration
  2. Product export
  3. Tax integration
  4. Transactional emails
  5. Fulfillment Integration

Working with templates not only saves you implementation time by providing a robust starting point but also helps you follow the best practices for third party integrations.

Please note that these templates are provided for development purposes. They require further customization before being used in production projects.

Sharing Code between Applications

With the introduction of Common modules, code can be shared between multiple applications. This helps improve code efficiency, reduce implementation and maintenance time, and decrease potential bugs and inconsistencies. To create and use a common module:
  1. Create your directory structure as below.
.
├── README.md
├── common-connect # The common module you want to share
│   ├── package.json
│   ├── src
│   ├── tsconfig.json
│   └── tsconfig.tsbuildinfo
├── connect.yaml
└── service
    ├── jest.config.cjs
    ├── package.json
    ├── src
    ├── tests
    ├── tsconfig.json
    └── tsconfig.tsbuildinfo

  1. Install the common module using npm or yarn.
  2. In the package.json file, add a build script that includes building local common modules and includes your test scripts, for example:
"scripts": {
  ...
  "build": "yarn --cwd ../common-connect install &&
  yarn --cwd ../common-connect run build && rimraf ./build && tsc",
  "test": "yarn run build && jest --config jest.config.cjs"
}
  1. You don’t need to change anything in connect.yaml as the common modules are directly referenced by the applications in the same project.

Connect CLI

Managing your Connectors is now easier and faster with Connect's CLI. To use the Connect CLI, you must utilize the following:

Install and Verify Connect CLI

npm install -g @commercetools/cli

commercetools --version

With the Connect CLI, you can:

  • Log in to and authenticate with commercetools.
  • Bootstrap a new Connector from a starter template or from one of our application templates.
  • Update and manage ConnectorStaged.
  • Create, test, build, bundle, and locally validate Connect applications.
You can find the full list of commands in the CLI section of the Connect documentation.

Global Configuration

One of the frustrations you shared with us was having to re-enter the same configuration in each application. We've listened to your feedback and introduced global configuration to ensure consistency and reduce redundancy. You can add global configuration under the inheritAs property in connect.yaml.
deployAs:
  - name: merchant-center-custom-application
    applicationType: merchant-center-custom-application
    configuration:
      standardConfiguration:
        - key: CUSTOM_APPLICATION_ID
          description: The Custom Application ID
          required: true
        - key: CLOUD_IDENTIFIER
          description: The cloud identifier
          default: 'gcp-eu'
        - key: ENTRY_POINT_URI_PATH
          description: The Application entry point URI path
          required: true
  - name: assets
    applicationType: assets
inheritAs:
  configuration:
    securedConfiguration:
      - key: GLOBAL_SECURED_CONFIGURATION
        description: Secured configuration that is applied to all applications
        required: true
    standardConfiguration:
      - key: GLOBAL_STANDARD_CONFIGURATION
        description: Standard configuration that is applied to all applications
        required: true

Global configuration can contain secured and standard configuration and is shared with all the applications.

Test your knowledge