| Term | Definition |
|---|---|
| App Store | The marketplace where JTL merchants discover and install Cloud Apps. Reachable at apps.jtl-cloud.com. Apps submitted through the Partner Portal are published here after review. |
| AppBridge | The messaging layer between your app’s frontend and the host it renders in, either Cloud ERP or JTL Hub. Built on iframe postMessage. Provides the app token, exposes host methods, and publishes entity-context events. Scoped to iframe surfaces (ERP-iFrame and Panel). Packaged as @jtl-software/cloud-apps-core. See App Shell & UI Integration. |
| Client credentials | The clientId and clientSecret pair issued by the Partner Portal when you create an app. Used by your backend to obtain access tokens via OAuth 2.0. The secret is shown only once at creation and can be recreated if lost. |
| Cloud App | An app built on the JTL Platform that integrates with JTL-Wawi. Consists of a manifest, a backend that calls the API, and optionally a frontend rendered in Cloud ERP. Distinct from OnPremise Wawi apps, which use a different registration flow. |
| Cloud ERP | The browser-based runtime where installed Cloud Apps render as iframes for merchants. Reachable at erp.jtl-cloud.com. Not to be confused with JTL Cloud (the install surface). |
| ERP-iFrame | A Cloud App integration type. Your frontend renders inside the main content area of Cloud ERP, reached from the ERP sidebar. Declared in the manifest under capabilities.erp.menuItems. See Cloud Apps Architecture. |
| Hub-Link | A Cloud App integration type. Adds a card to JTL Hub; clicking redirects the merchant to a URL you specify. No iframe and no AppBridge, just a redirect. Declared under capabilities.hub.appLauncher.redirectUrl. |
| JTL Cloud | The overall install surface that includes JTL Hub. “JTL Hub” is the specific merchant-facing page; “JTL Cloud” is the broader platform namespace (e.g., partner.jtl-cloud.com, hub.jtl-cloud.com, apps.jtl-cloud.com). Not to be confused with Cloud ERP. |
| JTL Hub | The merchant-facing surface for discovering, launching, and managing installed apps. Reachable at hub.jtl-cloud.com. Developers also use Hub to install and test their own apps during development. |
| JTL-Wawi | JTL’s ERP, the system at the centre of the merchant’s business. Available as OnPremise (installed on the merchant’s own server) or as JTL-Wawi Cloud (hosted by ecomData). Holds products, stock, orders, customers, and invoices. |
| App Manifest | An app.json file that declares your app’s identity, lifecycle URLs, requirements, and capabilities. Uploaded to the Partner Portal at registration. Defines which surfaces your app integrates with (Hub-Link, ERP-iFrame, and Panel). See App Manifest. |
| Listing Manifest | A listing.json file that declares your app is distributed, the content shown in the App Store, the JTL products it supports, its pricing, and its legal URLs. See Listing Manifest. |
| Panel | A Cloud App integration type. Your frontend renders as a resizable sidebar on specific Cloud ERP views. Context-aware: the panel receives information about the current view (customer, order, product) and can react to navigation. Declared under capabilities.erp.pane. |
| Public client | An OAuth client with no secret, used to sign merchants in through a browser with authorization code and PKCE. Declared in the manifest under authentication.publicClient. See App Manifest. |
| Partner Portal | The portal where developers register apps, manage client credentials, and submit listings to the App Store. Reachable at partner.jtl-cloud.com. Currently requires email registration; SSO with JTL ID is planned. |
| Scope | A permission that gates access to a specific API resource or action. Declared in the manifest under capabilities.erp.api.scopes (Cloud Apps) or under mandatoryApiScopes / optionalApiScopes (OnPremise). Format: resource.action (e.g., items.read, items.write). |
| Service account | A machine user your backend authenticates as, with no merchant signed in. Declared in the manifest under authentication.serviceAccount. Its credentials are the clientId and clientSecret used for the client credentials grant. See Service Account Authentication. |
| App token | A short-lived JWT issued by the platform identity provider that identifies the signed-in merchant and their tenant. An app running inside Cloud ERP or JTL Hub obtains one with appBridge.method.call('getAppToken'). An app on its own domain obtains one by signing the merchant in. Your backend verifies it before trusting any claim. See App Token Authentication. |
| Access token | A JWT your backend obtains with the client credentials grant, used to authenticate its own API calls. Valid for approximately 1 hour. Bound by the scopes declared in your manifest. See Service Account Authentication. |
| Tenant | A merchant’s isolated workspace in JTL Cloud. Each merchant has one tenant, and all their data (products, orders, customers) belongs to it. Identified by a stable UUID, carried in the urn:jtl:tenant_id claim of an app token and sent as the X-Tenant-ID header on backend API calls. |
What’s Next
Platform Overview
How the platform is structured and how the pieces relate.
Cloud Apps Architecture
The four integration types in detail, with manifest fields.
Essentials
Auth, errors, pagination, webhooks, versioning.
API Reference
OpenAPI reference for the Cloud API.