customerSAX Docs
Service Documentation

commerce / commercetools

The implemented commerce adapter — wrapping the real commercetools API behind the neutral contract.

At a glance

Package@csa/commerce-commercetools
Port4310
FrameworkApollo subgraph
Contract@csa/commerce-contract (built dist/)
Backendcommercetools SaaS GraphQL API

Responsibilities

  • The one live adapter. Implements the platform-neutral commerce contract against the real commercetools API. (shopify / bigcommerce / sfcc exist only as schema-only placeholders.)
  • Resolver allowlist. src/http/graphql/resolvers.ts is a manual allowlist — every Query/Mutation field is named there explicitly. A resolver that isn't listed silently never binds.
  • Contract consumption. Imports the contract's built dist/, so schema changes require a contract rebuild to take effect.

commercetools API quirks worth knowing

  • Update actions are { actionName: { ...params } } — never { action: "actionName", ... }.
  • where predicates do exact, case-sensitive matches on plain String fields; substring/contains needs all()/any() on Set fields.

Operations

The commercetools subgraph contributes the bulk of the supergraph's commerce operations — orders, carts, customers, products and shipping. The full list is in the GraphQL BFF reference.

Adding a field here is a five-step propagation (contract → rebuild → resolver → allowlist → BFF poll). The Add a GraphQL field guide walks it.

On this page