External Webhook Integration Architecture - commercetools Connector
Essential knowledge
Intended Audience:
Technical User
Author:
Fluent Commerce
Changed on:
17 June 2026
Overview
Enables the system to receive and process payloads from external webhooks, integrating them into the Fluent Commerce ecosystem.Key points
- Sync Type: Automatic, based on incoming webhook events.
- Payload Handling: External systems push data to the connector, which acts as the ingestion point.
- CT Queue Listener: Reads messages from the queue and facilitates the routing of the payload.
- Event Queue: Holds event messages for processing by the appropriate handlers.
Data Pipeline Execution
1. Ingestion (Webhook/Batch Job)
- CT Queue: Webhook notifications are pushed to the
`ct-queue`. - CT Queue Listener: This class reads the message from the
`ct-queue`and pushes it to the Event Queue. - Event Queue: This queue is responsible for holding the event message until it is processed.
2. Processing & Payload Extraction
- Message Router: The router reads the message name from the Event Queue and passes it to the corresponding handler.
- Message Handling: The handler reads the message data, fetches additional information via the SDK, maps it to the Fluent data model, and pushes the resulting data to the Fluent OMS.
3. Execution & Customization
- Extensibility: Handlers are fully extensible, allowing partners to modify the logic as required for their specific implementation.
- Route Configuration: Partners can manage message names and override handler classes via the
`application-connector.yml`.
Data Storage & Schema Mapping
The following mapping framework is applied to webhook payload routing:| Component | Description |
| CT-Queue | Entry point for incoming webhook events. |
| Message Router | Maps message names to specific handlers. |
| Fluent OMS | Destination for transformed/mapped data. |
Developer Extension Points
Implementation Patterns
- Overriding Handlers: Partners can override existing handlers by updating the
`application-connector.yml`file to point to a new handler class. - New Handlers: New handlers can be added by extending the
`MessageHandler`class and ensuring the package is within`com.fluentcommerce.connect`.