fulfillmenttools
API documentationIncident ManagementFeedback
Developer Docs
Developer Docs
  • Developer docs
  • Getting Started
    • Quickstart
    • Integration tutorial
      • Adding facilities
      • Adding listings to facilities
      • Configuring stocks
      • Carrier configuration
      • Placing orders
      • Checkout options
      • Distributed Order Management System (Routing)
      • Local fulfillment configuration
    • Free trial
  • Technical Basics
    • Access to fulfillmenttools
    • Feature status
    • Available regions
    • Backup policies
  • Connecting to fulfillmenttools
    • Client SDKs
    • commercetools connect
    • OpenID connect
      • Configure Microsoft Entra ID / Azure Active Directory
      • Configure Keycloak
  • API
    • Core concepts
      • Authentication & authorization
      • API Versioning & lifecycle
      • Assign user to jobs
      • Localization
      • Resource timestamps
      • Custom attributes
      • Article attributes
      • Recordable attributes
      • Data update guarantees
      • Rate limits & scaling
      • Retries
      • Performance on test vs. production systems
      • Load testing
    • API calls
      • Postman
      • cURL
      • GraphQL Explorer
    • GraphQL API
    • RESTful API
      • Pagination interface
      • RapiDoc
      • OpenAPI 3.0 Spec
    • Eventing
      • Structure of an event
      • Available events
        • Event flows
      • Eventing example
      • Event export
  • Integration Guides
    • Address formats for specific carriers
    • Basics
      • Article categories
      • Audits
      • Custom services & bundled line items
      • Facilities
      • Facility groups
      • GDPR configuration
      • Listings
      • Orders
        • Order types
        • Order status
      • Remote configuration
      • Receipts
      • Search
      • Subscribe to events
      • Sticker
      • Stocks
      • Storage locations
      • Tags
      • Users
    • Channel inventory
    • Facility discounts
    • Inbound process
    • Outbound stocks
    • Purchase order
    • Receipt
    • Routing strategy
    • Show sticker to clients
    • Stow jobs
  • More Integration Guides
    • Carrier management
      • Introduction to carrier configuration
      • Required data when operating carriers
      • Adding & connecting carriers to facilities
      • Custom carrier
    • Configurations for order fulfillment
      • Picking configuration
      • Packing configuration
      • Handover configuration
      • Printing and document configuration
      • Packing container types
      • Parcel tag configuration
      • Headless order fulfillment
      • Short-pick reasons
      • External documents in order fulfillment
      • Service jobs
      • Load units
      • Running sequence
    • External actions
    • Notifications
    • Returns
Powered by GitBook
On this page
  • Create a channel
  • Create an allocation group under a channel
  • Create a channel allocation under a group
Edit on GitHub
  1. Integration Guides

Channel inventory

Last updated 2 months ago

More channel inventory API information can be found here:

Channel inventory allows reserving stock for specific sales channels or other purposes. The below steps must be followed when introducing channel inventory:

  1. Create

  2. Create

  3. Create

Create a channel

A channel can be created by performing the following POST call with the JSON body:

POST https://{YOUR-TENANT-NAME}.fulfillmenttools.com/api/availabilitychannels
{
  "name": "CHANNEL_NAME",
  "strategy": "REGULAR" 
}

Depending on the priority of the (sales) channel, different strategies can be defined for stock reduction. For more information please refer to "".

If the request was successful, a 200 CREATED response is received with a body like this:

{
    "created": "2025-01-01T15:00:00.000Z",
    "id": "e892b0b2-6a10-4d84-81d4-848dd4b78334",
    "lastModified": "2025-01-01T15:00:00.000Z",
    "name": "CHANNEL_NAME",
    "strategy": "REGULAR",
    "version": 1
}

Create an allocation group under a channel

Each allocation must belong to a group. Groups are used to organize allocations in facilities for a specific article and channel.

A channel allocation group can be created by performing the following POST call with the JSON body:

POST https://{YOUR-TENANT-NAME}.fulfillmenttools.com/api/availabilitychannels/{availabilityChannelId}/groups
{
  "active": true,
  "activePeriod": {
    "end": "2025-08-01T15:00:00.000Z",
    "start": "2025-06-01T15:00:00.000Z"
  },
  "tenantArticleIds": [
    "12345"
  ]
}

If the request was successful, a HTTP 200 CREATED response is received with a body like this:

{
    "id": "a8768f84-3a50-4298-be36-e587989c7971",
    "active": true,
    "activePeriod": {
        "end": "2025-08-01T15:00:00.000Z",
        "start": "2025-06-01T15:00:00.000Z"
    },
    "channelRef": "e892b0b2-6a10-4d84-81d4-848dd4b78334",
    "created": "2025-01-01T15:00:00.000Z",
    "lastModified": "2025-01-01T15:00:00.000Z",
    "tenantArticleIds": [
        "12345"
    ],
    "version": 1
}

Create a channel allocation under a group

The core functionality of channels is realized through availabilityAllocation entities. These entities link channels to specific products (identified by tenantArticleIds) and assign a predetermined quantity of stock to each channel.

A channel allocation can be created by performing the following POST call with the JSON body:

POST https://{YOUR-TENANT-NAME}.fulfillmenttools.com/api/availabilitychannels/{availabilityChannelId}/groups/{groupId}/allocations
{
  "facilityRef": "CGN_01",
  "initialStockQuantity": 100
}

If the request was successful, a HTTP 200 CREATED response is received with a body like this:

{
    "channelRef": "e892b0b2-6a10-4d84-81d4-848dd4b78334",
    "created": "2025-01-01T15:00:00.000Z",
    "facilityRef": "CGN_01",
    "groupRef": "a8768f84-3a50-4298-be36-e587989c7971",
    "id": "3e3412bf-9181-42e2-9300-b9f68dcc5f5c",
    "initialStockQuantity": 100,
    "lastModified": "2025-01-01T15:00:00.000Z",
    "version": 1
}
REST API documentation - Channel Availability
availability channels
allocation groups
allocations for channels
Products – Channel inventory