Skip to content

Outbound - TreazurePromoInfo (formerly known as RosPriceInfo)

This document outlines the structure and specifications for the export of promotions configured in the central system. Includes XML and JSON example.

Example

XML:

<?xml version="1.0" encoding="utf-8"?>
<TreazurePromoInfo xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ReferenceDate="2025-05-23T00:00:00+02:00" ChainId="01"
  xmlns="http://cowhills.nl/RosPriceInfo-1-0">
  <ConditionalPromotions>
    <Promotion Code="Opbergbox 5%" Type="FinancialPromotion" From="2019-07-31T00:00:00" To="2099-01-01T23:59:00" CardHolder="false">
      <ActivePeriod Days="Mo Tu We Th Fr Sa Su" StartTime="00:00:00.0000000+02:00" EndTime="23:59:59.0000000+02:00" />
      <Description LanCode="nl-NL">Stapelkorting op alle opbergboxen 5%</Description>
      <Description LanCode="fr-FR">Reduction op alle opbergboxen 5%</Description>
      <TreazureInfo>
        <LongTerm>false</LongTerm>
      </TreazureInfo>
      <FilterGroups>
        <FilterGroup Id="7040 Opbergboxen stapelkorting">
          <Article Id="70401404" />
          <Article Id="70401405" />
          <Article Id="70401409" PluRule="NotAllowed" />
          <Article Id="70401410" PluRule="NotAllowed" />
          <Article Id="70401411" PluRule="NotAllowed" />
          <Article Id="70401412" PluRule="NotAllowed" />
          <Article Id="70401650" PluRule="NotAllowed" />
          <Article Id="70401651" PluRule="NotAllowed" />
          <Article Id="70401652" PluRule="NotAllowed" />
          <Article Id="70401653" PluRule="NotAllowed" />
        </FilterGroup>
      </FilterGroups>
    </Promotion>
    <Promotion Code="Test_Bossflex_20231128" Type="FinancialPromotion" From="2023-11-28T00:00:00" To="2099-12-29T23:59:00" CardHolder="false">
      <ActivePeriod Days="Mo Tu We Th Fr Sa Su" StartTime="00:00:00.0000000+02:00" EndTime="23:59:59.0000000+02:00" />
      <Description LanCode="nl-NL">1+1 gratis</Description>
      <TreazureInfo>
        <Sticker LanCode="nl-NL">
          <StickerTitle />
          <StickerText>1+1 gratis</StickerText>
        </Sticker>
        <LongTerm>false</LongTerm>
      </TreazureInfo>
      <FilterGroups>
        <FilterGroup Id="Test_Bossflex">
          <Article Id="8796441706497" />
          <Article Id="8796441739265" />
          <Article Id="8796441673729" />
          <Article Id="P100659845" />
          <Article Id="P100068373" />
          <Article Id="P100659844" />
        </FilterGroup>
      </FilterGroups>
      <AssignedStores>
        <Store Id="0002" />
        <Store Id="0003" />
        <Store Id="0004" />
        <Store Id="0005" />
        <Store Id="0006" />
        <Store Id="0007" />
        <Store Id="0008" />
      </AssignedStores>
    </Promotion>
  </ConditionalPromotions>
</TreazurePromoInfo>

JSON:

{
  "ConditionalPromotions": [
    {
      "ActivePeriod": {
        "Days": "Mo, Tu, We, Th, Fr, Sa, Su",
        "StartTime": "00:00:00.0000000",
        "EndTime": "23:59:59.0000000"
      },
      "Description": [
        {
          "LanCode": "nl-NL",
          "Value": "Stapelkorting op alle opbergboxen 5%"
        },
        {
          "LanCode": "fr-FR",
          "Value": "Reduction op alle opbergboxen 5%"
        }
      ],
      "TreazureInfo": {
        "Sticker": [],
        "LongTerm": false
      },
      "FilterGroups": [
        {
          "Article": [
            {
              "Id": "70401404"
            },
            {
              "Id": "70401405"
            },
            {
              "Id": "70401409",
              "PluRule": "NotAllowed"
            },
            {
              "Id": "70401410",
              "PluRule": "NotAllowed"
            },
            {
              "Id": "70401411",
              "PluRule": "NotAllowed"
            },
            {
              "Id": "70401412",
              "PluRule": "NotAllowed"
            },
            {
              "Id": "70401650",
              "PluRule": "NotAllowed"
            },
            {
              "Id": "70401651",
              "PluRule": "NotAllowed"
            },
            {
              "Id": "70401652",
              "PluRule": "NotAllowed"
            },
            {
              "Id": "70401653",
              "PluRule": "NotAllowed"
            }
          ],
          "Id": "7040 Opbergboxen stapelkorting"
        }
      ],
      "Code": "Opbergbox 5%",
      "Type": "FinancialPromotion",
      "From": "2019-07-31T00:00:00",
      "To": "2099-01-01T23:59:00",
      "CardHolder": false
    },
    {
      "ActivePeriod": {
        "Days": "Mo, Tu, We, Th, Fr, Sa, Su",
        "StartTime": "00:00:00.0000000",
        "EndTime": "23:59:59.0000000"
      },
      "Description": [
        {
          "LanCode": "nl-NL",
          "Value": "1+1 gratis"
        }
      ],
      "TreazureInfo": {
        "Sticker": [
          {
            "StickerTitle": "",
            "StickerText": "1+1 gratis",
            "LanCode": "nl-NL"
          }
        ],
        "LongTerm": false
      },
      "FilterGroups": [
        {
          "Article": [
            {
              "Id": "8796441706497"
            },
            {
              "Id": "8796441739265"
            },
            {
              "Id": "8796441673729"
            },
            {
              "Id": "P100659845"
            },
            {
              "Id": "P100068373"
            },
            {
              "Id": "P100659844"
            }
          ],
          "Id": "Test_Bossflex"
        }
      ],
      "AssignedStoresNew": {
        "Store": [
          {
            "Id": "0002"
          },
          {
            "Id": "0003"
          },
          {
            "Id": "0004"
          },
          {
            "Id": "0005"
          },
          {
            "Id": "0006"
          },
          {
            "Id": "0007"
          },
          {
            "Id": "0008"
          }
        ]
      },
      "Code": "Test_Bossflex_20231128",
      "Type": "FinancialPromotion",
      "From": "2023-11-28T00:00:00",
      "To": "2099-12-29T23:59:00",
      "CardHolder": false
    }
  ],
  "ReferenceDate": "2025-05-23T00:00:00+02:00",
  "ChainId": "01"
}

TreazurePromoInfo Definition

Field Type Optional Comment
@ReferenceDate datetime Date and time reference for the promotion information
@ChainId string
ConditionalPromotions Promotion[]

Promotion Definition

Field Type Optional Comment
@Code string
@Type string (enum) Identifies the type of promotion, see further down in this document a list of possible values.
@From datetime The date and time when the promotion starts
@To datetime The date and time when the promotion ends
@CardHolder boolean Indicates whether the promotion is only valid when a customer card is registered on the transaction / basket
ActivePeriod ActivePeriod Information about the moments during which the promotion is active within the period designated by the 'from' and 'to' attributes above
Description Description[] The description of the promotion
TreazureInfo TreazureInfo Information used to display supplementary details (e.g., banners). This information is maintained in rCOS
FilterGroups FilterGroup[]
AssignedStores StoreAttributes X
LayerInfo LayerInfo Information about the configured promotion layer

Possible Promotion Types

PromotionType Comment
FinancialPromotion Financial benefit
ShippingCosts Discount on shipping cost
IssueCoupon Coupon issuance
Loyalty Saving Points (Loyalty Program)
DiscountVoucher Discount voucher issuance
Notification Product notification
TypeValue Generic type for custom behavior

ActivePeriod Definition

Field Type Optional Comment
@Days string The days of the week when the promotion is active. (Format: 'Mo Tu We Th Fr Sa Su' days are separated by a space)
@StartTime time The time of day the promotion becomes active
@EndTime time The time of day the promotion becomes inactive

Description Definition

Field Type Optional Comment
@LanCode string Language Code, Culture name (nl-NL, en-GB, fr-FR)
Description string

TreazureInfo Definition

Field Type Optional Comment
Sticker Sticker[] X
LongTerm boolean Indicates whether it is a long-term (permanent) promotion

Sticker Definition

Field Type Optional Comment
@LanCode string Language Code, Culture name (nl-NL, en-GB, fr-FR)
StickerTitle string
StickerText string

FilterGroup Definition

Field Type Optional Comment
@Id string
Article ArticleOrGroup X Defines a article included in, or excluded from this filter group
Group ArticleOrGroup X Defines a product group included in, or excluded from this filter group
TransactionAttribute TransactionAttribute X Defines a transaction attribute (usually a voucher) included in this filter group
CouponDefinition CouponDefinition X Defines a coupon definition included in this filter group

ArticleOrGroup Definition

Field Type Optional Comment
@Id string The ID of the article or group (or a '*' when all article or groups are included)
@Exclude boolean X The ID of the article or group (or a '*' when all article or groups are included). False if omitted
@ColorId string X The ID of the color of the article that is included or excluded. Or '*' when all colors of the product are included or excluded
@SizeId string X The ID of the size of the article that is included or excluded. Or '*' when all sizes of the product are included or excluded
@PluRule string (enum) X Required, NotAllowed
Attribute Attribute X

Attribute Definition

Field Type Optional Comment
Type string
Value string

TransactionAttribute Definition

Field Type Optional Comment
@Id string The ID of the transaction attribute (= Voucher)
Attribute Attribute X

CouponDefinition Definition

Field Type Optional Comment
@Id string The ID of the coupon definition
@Type string (enum) X Indicates the type of the coupon (Generic or Unique). Generic if omitted
Attribute Attribute X

StoreAttributes Definition

Field Type Optional Comment
Id string
Type string X
Value string X

LayerInfo Definition

Field Type Optional Comment
Name string
Description Description[]
Order integer Calculation order

Schema

XSD
Legacy XSD (RosPriceInfo)
JSON

Version History

Version Available from ROS Version Author Comment
1.0 Ed de Jong Initial document
1.1 Stephan Geissler Updated documentation with new values from XSD
1.2 Stephan Geissler Added layer info