Item bundles

It is possible to bundle items. By doing this you ensure that those bundles items are not split when the DOMS would normally performing an ordersplit affecting those items.

This can be done by our custom-service concept (see: here). Adding items to a customservice and defining it as "bundled" within the order is all you have to do. The line items you want to bundle have to be a part of the orderLineItems within the order.

To define a bundle, you need to add all the information there is with usual bundles and a customServices list containing the information.

Example on how a bundling customService list might look like within an order
"customServices": [
      {
          "customServiceDefinition": {
              "isBundled": true
          },
          "articleItems": [
              {
                  "tenantArticleRef": "32168",
                  "quantity": 1
              },
              {
                  "tenantArticleRef": "31851",
                  "quantity": 1
              }
          ],
          "customServiceItems": []
      }
  ]
Example how an order might look like when it contains item bundles

Let's imagine you want to send two buquets of flowers to your friend Peter Parker. One with tulips and one with red roses, bundled with a bottle of champagne. Then your order might look like this:

{
  "orderDate": "2024-06-11T08:16:07.000+02:00",
  "consumer": {
      "email": "peter.parker@example.com",
      "addresses": [
          {
              "street": "Tunisstr.",
              "houseNumber": "13",
              "postalCode": "50667",
              "city": "Köln",
              "country": "DE",
              "salutation": "Herr",
              "firstName": "Peter",
              "lastName": "Partker"
          }
      ]
  },
  "tenantOrderId": "SOME-COOL-ORDER-ID",
  "status": "OPEN",
  "orderLineItems": [
      {
          "article": {
              "tenantArticleId": "32168",
              "title": "Flower Buquet - Red Roses"
          },
          "quantity": 1
      },
      {
          "article": {
              "tenantArticleId": "32169",
              "title": "Flower Buquet - Tulip Mix"
          },
          "quantity": 1
      },
      {
          "article": {
              "tenantArticleId": "31851",
              "title": "Champagne Bottle"
          },
          "quantity": 1
      }
  ],
  "paymentInfo": {
      "currency": "EUR"
  },
  "deliveryPreferences": {
      "targetTime": "2024-07-25T00:00:01.000Z",
      "shipping": {
          "serviceLevel": "DELIVERY"
      }
  },
  "customServices": [
      {
          "customServiceDefinition": {
              "isBundled": true
          },
          "articleItems": [
              {
                  "tenantArticleRef": "32168",
                  "quantity": 1
              },
              {
                  "tenantArticleRef": "31851",
                  "quantity": 1
              }
          ],
          "customServiceItems": []
      }
  ]
}

How bundles items are "viewed" while routing

Orderlines that are connected via a “non-splittable” customService within an order will be interpreted as 1 item an thus never be split in the routing decision.

Last updated