For the complete documentation index, see llms.txt. This page is also available as Markdown.

ProductProperties

ProductProperties

Get list of variants for a product

get
/tenants/{tenantUid}/products/{productUid}/variants

Get list of variants for a product

Authorizations
AuthorizationstringRequired

Access token recevied after user login with a deviceToken

Path parameters
productUidstringRequired

Reference to a Product.

Pattern: ^[A-Za-z0-9-_]+
tenantUidstringRequired

Reference to a tenant.

Pattern: ^[A-Za-z0-9-_]+
Query parameters
pageNumberintegerOptional

Reference to a specific page in a result set.

pageSizeintegerOptional

The number of items per page in a result set.

sortBystringOptional

Defines which field the resource list is sorted by.

sortDirectionstring · enumOptional
ENUMDescription
ASCSort in ascending order
DESCSort in descending order
Possible values:
Responses
200

Example response

application/json
get/tenants/{tenantUid}/products/{productUid}/variants
GET /v2/tenants/{tenantUid}/products/{productUid}/variants HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200

Example response

{
  "items": [
    {
      "productVariantUid": "text",
      "allowAddon": true,
      "allowCredit": true,
      "allowNegativePrice": true,
      "allowPurchase": true,
      "allowQuantity": true,
      "allowSale": "YES",
      "allowSaleDate": "2026-01-01T00:00:00.000Z",
      "allowDelivery": "YES",
      "allowDeliveryDate": "2026-01-01T00:00:00.000Z",
      "allowOrderSpecificCost": true,
      "allowOrderSpecificName": true,
      "allowDiscount": true,
      "availableForWeb": true,
      "brandUid": "text",
      "brandName": "text",
      "calculationFactor": 1,
      "categoryUids": [
        "text"
      ],
      "createdAt": "2026-01-01T00:00:00.000Z",
      "customerAgeRestriction": 1,
      "description": "text",
      "discontinuedFrom": "2026-01-01T00:00:00.000Z",
      "externalId": "text",
      "externalInfo": "text",
      "externalUrl": "text",
      "gtins": [
        {
          "gtin": "text",
          "primary": true,
          "type": "text"
        }
      ],
      "height": 1,
      "internalInfo": "text",
      "lastModifiedAt": "2026-01-01T00:00:00.000Z",
      "ledgerNumber": "text",
      "length": 1,
      "name": "text",
      "optionProperties": [
        {
          "productPropertyUid": "text",
          "propertyName": "text",
          "propertyOptionName": "text",
          "propertyType": "TEXT",
          "propertyText": "text",
          "propertyUid": "text",
          "propertyOptionUid": "text",
          "required": true
        }
      ],
      "priceOverride": true,
      "productGroupUid": "text",
      "productGroupPath": [
        {
          "name": "text",
          "parentUid": "text",
          "productGroupUid": "text"
        }
      ],
      "productUid": "text",
      "productType": "STOCK",
      "recommendedRetailPrice": 1,
      "requiredVariantPropertyUids": [
        "text"
      ],
      "serialNoRequired": "NO",
      "sellOnlyAsAddon": true,
      "shortDescription": "text",
      "sku": "text",
      "manufacturerSku": "text",
      "suppliers": [
        {
          "name": "text",
          "supplierUid": "text",
          "supplierProductUid": "text",
          "purchasePrice": 1,
          "currency": "text",
          "supplierSku": "text"
        }
      ],
      "textProperties": [
        {
          "productPropertyUid": "text",
          "propertyName": "text",
          "propertyOptionName": "text",
          "propertyType": "TEXT",
          "propertyText": "text",
          "propertyUid": "text",
          "propertyOptionUid": "text",
          "required": true
        }
      ],
      "unitLabel": "text",
      "variantProductUids": [
        "text"
      ],
      "variantParentProductUid": "text",
      "vatCodeUid": "text",
      "weight": 1,
      "width": 1,
      "links": [
        {
          "productLinkUid": "text",
          "linkType": "INSURANCE",
          "productUid": "text"
        }
      ],
      "parents": [
        {
          "productLinkUid": "text",
          "linkType": "INSURANCE",
          "productUid": "text"
        }
      ],
      "requirements": {
        "requireCustomer": true,
        "requireCustomerMobile": true,
        "requireCustomerEmail": true,
        "requireCustomerDeliveryAddress": true,
        "orderItemReference": "text"
      },
      "coverImage": {
        "productMediaUid": "text",
        "mainUrl": "text",
        "thumbnailUrl": "text"
      },
      "imageCount": 1,
      "relevance": 1,
      "visibility": "ALWAYS_VISIBLE",
      "commission": 1,
      "productWarrantyUid": "text",
      "excludeFromStatistics": true,
      "purchasePrice": 1,
      "numberOfPieces": 1,
      "limitToStoreUids": [
        "text"
      ],
      "tradeUnit": 1
    }
  ],
  "paging": {
    "pageNumber": 1,
    "pageSize": 1,
    "totalCount": 1
  }
}

Add a product as variant on a configurable product

post
/tenants/{tenantUid}/products/{productUid}/variants

Add a product as variant on a configurable product

The productUid in the path should be the configurable product. The productUid in the request body is the product that you want to add as a variant

Required permissions: PRODUCT

Authorizations
AuthorizationstringRequired

Access token recevied after user login with a deviceToken

Path parameters
productUidstringRequired

Reference to a Product.

Pattern: ^[A-Za-z0-9-_]+
tenantUidstringRequired

Reference to a tenant.

Pattern: ^[A-Za-z0-9-_]+
Body
productUidstringRequiredPattern: ^[A-Za-z0-9-_]+
productVariantUidstringOptionalPattern: ^[A-Za-z0-9-_]+
Responses
200

Example response

application/json
productVariantUidstringRequiredPattern: ^[A-Za-z0-9-_]+
allowAddonbooleanRequired

This product has addons

allowCreditbooleanRequired

The product is allowed to credit

allowNegativePricebooleanRequired

There can be set a negative price

allowPurchasebooleanRequired

The product is allowed to be purchased from a supplier

allowQuantitybooleanRequired

It is allowed to change quantity

allowSalestring · enumRequired
ENUMDescription
YESAllow the product to be sold
NODo not allow the product to be sold
NOT_BEFORE_DATEDo not allow the product to be sold before a specified date
Possible values:
allowSaleDatestring · date-timeRequired
allowDeliverystring · enumRequired
ENUMDescription
YESAllow the product to be delivered
NODo not allow the product to be delivered
NOT_BEFORE_DATEDo not allow the product to be delivered before a specified date
Possible values:
allowDeliveryDatestring · date-timeRequired
allowOrderSpecificCostbooleanRequired

Allow to set costPrice on product when adding or updating the product to an order

allowOrderSpecificNamebooleanRequired

Allow to set name on product when adding or updating the product to an order

allowDiscountbooleanRequired

Allow to add discount to this product.

availableForWebbooleanRequired

The product is available for web sale

brandUidstringRequiredPattern: ^[A-Za-z0-9-_]+
brandNamestringRequired
calculationFactorintegerRequired
categoryUidsstring[]Required
createdAtstring · date-timeRequired
customerAgeRestrictionintegerRequired

Age restriction for the customer. 0 = no restriction

descriptionstringRequired
discontinuedFromstring · date-time · nullableRequired
externalIdstringRequired
externalInfostringRequired
externalUrlstringRequired
heightintegerRequired
internalInfostringRequired
lastModifiedAtstring · date-timeRequired
ledgerNumberstringRequired

Ledger number must be a valid number with possible leading zeros

lengthintegerRequired
namestringRequired
priceOverridebooleanRequired

Allow to override the price without setting a discount.

productGroupUidstringRequiredPattern: ^[A-Za-z0-9-_]+
productUidstringRequiredPattern: ^[A-Za-z0-9-_]+
productTypestring · enum · min: 1Required
ENUMDescription
STOCKPrice*quantity
NO_STOCKNo quantity
CONFIGURABLEMaster configurable product
FLOWGIFTCARDFlow Giftcard product
PAYEX_GIFTCARDPayex Giftcard product
NON_PHYSICALNon physical product
PACKAGE_FIXEDPackaged product with fixed content
PACKAGE_DYNAMICPackaged product with dynamic content
Possible values:
recommendedRetailPriceintegerRequired
requiredVariantPropertyUidsstring[]Required

A list of propertyUids that are required for each variant of this product.

serialNoRequiredstring · enumRequired
ENUMDescription
NONo Serial number required
ON_SALECan register serial number when selling a product (Serial number is optional)
ON_RECEIVEMust register serial number when receiving and selling product (Serial number is required)
Possible values:
sellOnlyAsAddonbooleanRequired

Can only be sold as an addon product

shortDescriptionstringRequired
skustringRequired
manufacturerSkustringRequired
unitLabelstringRequired
variantProductUidsstring[]Required
variantParentProductUidstringRequiredPattern: ^[A-Za-z0-9-_]+
variantsstring[]RequiredDeprecated

A list of productUids that make up variants of this product.

vatCodeUidstringRequiredPattern: ^[A-Za-z0-9-_]+
weightintegerRequired
widthintegerRequired
imageCountintegerRequired
relevancenumberRequired
visibilitystring · enumRequiredPossible values:
commissionintegerRequired

A commission to be paid to the supplier after delivery.

productWarrantyUidstringRequiredPattern: ^[A-Za-z0-9-_]+
excludeFromStatisticsbooleanRequired
purchasePriceintegerRequired
numberOfPiecesintegerRequired

Indicates how many packages/parts the product consists of.

limitToStoreUidsstring[]Required

Limit the product to be used for a list of storeUids.

tradeUnitintegerRequired
post/tenants/{tenantUid}/products/{productUid}/variants
POST /v2/tenants/{tenantUid}/products/{productUid}/variants HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 48

{
  "productUid": "text",
  "productVariantUid": "text"
}
200

Example response

{
  "productVariantUid": "text",
  "allowAddon": true,
  "allowCredit": true,
  "allowNegativePrice": true,
  "allowPurchase": true,
  "allowQuantity": true,
  "allowSale": "YES",
  "allowSaleDate": "2026-01-01T00:00:00.000Z",
  "allowDelivery": "YES",
  "allowDeliveryDate": "2026-01-01T00:00:00.000Z",
  "allowOrderSpecificCost": true,
  "allowOrderSpecificName": true,
  "allowDiscount": true,
  "availableForWeb": true,
  "brandUid": "text",
  "brandName": "text",
  "calculationFactor": 1,
  "categoryUids": [
    "text"
  ],
  "createdAt": "2026-01-01T00:00:00.000Z",
  "customerAgeRestriction": 1,
  "description": "text",
  "discontinuedFrom": "2026-01-01T00:00:00.000Z",
  "externalId": "text",
  "externalInfo": "text",
  "externalUrl": "text",
  "gtins": [
    {
      "gtin": "text",
      "primary": true,
      "type": "text"
    }
  ],
  "height": 1,
  "internalInfo": "text",
  "lastModifiedAt": "2026-01-01T00:00:00.000Z",
  "ledgerNumber": "text",
  "length": 1,
  "name": "text",
  "optionProperties": [
    {
      "productPropertyUid": "text",
      "propertyName": "text",
      "propertyOptionName": "text",
      "propertyType": "TEXT",
      "propertyText": "text",
      "propertyUid": "text",
      "propertyOptionUid": "text",
      "required": true
    }
  ],
  "priceOverride": true,
  "productGroupUid": "text",
  "productGroupPath": [
    {
      "name": "text",
      "parentUid": "text",
      "productGroupUid": "text"
    }
  ],
  "productUid": "text",
  "productType": "STOCK",
  "recommendedRetailPrice": 1,
  "requiredVariantPropertyUids": [
    "text"
  ],
  "serialNoRequired": "NO",
  "sellOnlyAsAddon": true,
  "shortDescription": "text",
  "sku": "text",
  "manufacturerSku": "text",
  "suppliers": [
    {
      "name": "text",
      "supplierUid": "text",
      "supplierProductUid": "text",
      "purchasePrice": 1,
      "currency": "text",
      "supplierSku": "text"
    }
  ],
  "textProperties": [
    {
      "productPropertyUid": "text",
      "propertyName": "text",
      "propertyOptionName": "text",
      "propertyType": "TEXT",
      "propertyText": "text",
      "propertyUid": "text",
      "propertyOptionUid": "text",
      "required": true
    }
  ],
  "unitLabel": "text",
  "variantProductUids": [
    "text"
  ],
  "variantParentProductUid": "text",
  "vatCodeUid": "text",
  "weight": 1,
  "width": 1,
  "links": [
    {
      "productLinkUid": "text",
      "linkType": "INSURANCE",
      "productUid": "text"
    }
  ],
  "parents": [
    {
      "productLinkUid": "text",
      "linkType": "INSURANCE",
      "productUid": "text"
    }
  ],
  "requirements": {
    "requireCustomer": true,
    "requireCustomerMobile": true,
    "requireCustomerEmail": true,
    "requireCustomerDeliveryAddress": true,
    "orderItemReference": "text"
  },
  "coverImage": {
    "productMediaUid": "text",
    "mainUrl": "text",
    "thumbnailUrl": "text"
  },
  "imageCount": 1,
  "relevance": 1,
  "visibility": "ALWAYS_VISIBLE",
  "commission": 1,
  "productWarrantyUid": "text",
  "excludeFromStatistics": true,
  "purchasePrice": 1,
  "numberOfPieces": 1,
  "limitToStoreUids": [
    "text"
  ],
  "tradeUnit": 1
}

Delete a product variant

delete
/tenants/{tenantUid}/products/{productUid}/variants/{productVariantUid}

Deletes a product variant.

Required permissions: PRODUCT

Authorizations
AuthorizationstringRequired

Access token recevied after user login with a deviceToken

Path parameters
productUidstringRequired

Reference to a Product.

Pattern: ^[A-Za-z0-9-_]+
tenantUidstringRequired

Reference to a tenant.

Pattern: ^[A-Za-z0-9-_]+
productVariantUidstringRequired

Reference to a Product variant.

Pattern: ^[A-Za-z0-9-_]+
Responses
204

No Content

No content

delete/tenants/{tenantUid}/products/{productUid}/variants/{productVariantUid}
DELETE /v2/tenants/{tenantUid}/products/{productUid}/variants/{productVariantUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
204

No Content

No content

Get list of properties for a product

get
/tenants/{tenantUid}/products/{productUid}/properties

Get list of properties for a product

Authorizations
AuthorizationstringRequired

Access token recevied after user login with a deviceToken

Path parameters
productUidstringRequired

Reference to a Product.

Pattern: ^[A-Za-z0-9-_]+
tenantUidstringRequired

Reference to a tenant.

Pattern: ^[A-Za-z0-9-_]+
Query parameters
pageNumberintegerOptional

Reference to a specific page in a result set.

pageSizeintegerOptional

The number of items per page in a result set.

sortBystringOptional

Defines which field the resource list is sorted by.

sortDirectionstring · enumOptional
ENUMDescription
ASCSort in ascending order
DESCSort in descending order
Possible values:
Responses
200

Example response

application/json
get/tenants/{tenantUid}/products/{productUid}/properties
GET /v2/tenants/{tenantUid}/products/{productUid}/properties HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
200

Example response

{
  "items": [
    {
      "productPropertyUid": "text",
      "propertyName": "text",
      "propertyOptionName": "text",
      "propertyType": "TEXT",
      "propertyText": "text",
      "propertyUid": "text",
      "propertyOptionUid": "text",
      "required": true
    }
  ],
  "paging": {
    "pageNumber": 1,
    "pageSize": 1,
    "totalCount": 1
  }
}

Set a property to a product

post
/tenants/{tenantUid}/products/{productUid}/properties

Set a property to a product

Required permissions: PRODUCT

Authorizations
AuthorizationstringRequired

Access token recevied after user login with a deviceToken

Path parameters
productUidstringRequired

Reference to a Product.

Pattern: ^[A-Za-z0-9-_]+
tenantUidstringRequired

Reference to a tenant.

Pattern: ^[A-Za-z0-9-_]+
Body

Add a new product option to a product. If a property is of type TEXT, propertyText is mandatory, else propertyOptionUid is mandatory

propertyUidstringRequiredPattern: ^[A-Za-z0-9-_]+
propertyOptionUidstringOptionalPattern: ^[A-Za-z0-9-_]+
propertyTextstringOptional
productPropertyUidstringOptionalPattern: ^[A-Za-z0-9-_]+
Responses
200

Example response

application/json
productPropertyUidstringRequiredPattern: ^[A-Za-z0-9-_]+
propertyNamestringRequired
propertyOptionNamestringRequired
propertyTypestring · enumRequired

Describes the type of property a product can have.

ENUMDescription
TEXTA single text line such as an URL to a product manual or a reminder to the cashier/salesperson.
SINGLESELECTA list of values where a product can only have one at any given time.
MULTISELECTA list of values where a product can have none or several at any given time.
Possible values:
propertyTextstringOptional

Only in use with TEXT properties.

propertyUidstringRequiredPattern: ^[A-Za-z0-9-_]+
propertyOptionUidstringRequiredPattern: ^[A-Za-z0-9-_]+
requiredbooleanRequired
post/tenants/{tenantUid}/products/{productUid}/properties
POST /v2/tenants/{tenantUid}/products/{productUid}/properties HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 99

{
  "propertyUid": "text",
  "propertyOptionUid": "text",
  "propertyText": "text",
  "productPropertyUid": "text"
}
200

Example response

{
  "productPropertyUid": "text",
  "propertyName": "text",
  "propertyOptionName": "text",
  "propertyType": "TEXT",
  "propertyText": "text",
  "propertyUid": "text",
  "propertyOptionUid": "text",
  "required": true
}

Remove a product property from a product

delete
/tenants/{tenantUid}/products/{productUid}/properties/{productPropertyUid}

Deletes a property from a product.

Required permissions: PRODUCT

Authorizations
AuthorizationstringRequired

Access token recevied after user login with a deviceToken

Path parameters
productUidstringRequired

Reference to a Product.

Pattern: ^[A-Za-z0-9-_]+
tenantUidstringRequired

Reference to a tenant.

Pattern: ^[A-Za-z0-9-_]+
productPropertyUidstringRequired

Reference to a Product property.

Pattern: ^[A-Za-z0-9-_]+
Responses
204

No Content

No content

delete/tenants/{tenantUid}/products/{productUid}/properties/{productPropertyUid}
DELETE /v2/tenants/{tenantUid}/products/{productUid}/properties/{productPropertyUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
204

No Content

No content

Update a text property for a product

put
/tenants/{tenantUid}/products/{productUid}/text-properties/{propertyUid}

Update a text property for a product

Required permissions: PRODUCT

Authorizations
AuthorizationstringRequired

Access token recevied after user login with a deviceToken

Path parameters
productUidstringRequired

Reference to a Product.

Pattern: ^[A-Za-z0-9-_]+
tenantUidstringRequired

Reference to a tenant.

Pattern: ^[A-Za-z0-9-_]+
propertyUidstringRequired

Reference to a product property definition

Pattern: ^[A-Za-z0-9-_]+
Body

Update a new text option to a product

propertyTextstringRequired
Responses
200

Example response

application/json
productPropertyUidstringRequiredPattern: ^[A-Za-z0-9-_]+
propertyNamestringRequired
propertyOptionNamestringRequired
propertyTypestring · enumRequired

Describes the type of property a product can have.

ENUMDescription
TEXTA single text line such as an URL to a product manual or a reminder to the cashier/salesperson.
SINGLESELECTA list of values where a product can only have one at any given time.
MULTISELECTA list of values where a product can have none or several at any given time.
Possible values:
propertyTextstringOptional

Only in use with TEXT properties.

propertyUidstringRequiredPattern: ^[A-Za-z0-9-_]+
propertyOptionUidstringRequiredPattern: ^[A-Za-z0-9-_]+
requiredbooleanRequired
put/tenants/{tenantUid}/products/{productUid}/text-properties/{propertyUid}
PUT /v2/tenants/{tenantUid}/products/{productUid}/text-properties/{propertyUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 23

{
  "propertyText": "text"
}
200

Example response

{
  "productPropertyUid": "text",
  "propertyName": "text",
  "propertyOptionName": "text",
  "propertyType": "TEXT",
  "propertyText": "text",
  "propertyUid": "text",
  "propertyOptionUid": "text",
  "required": true
}

Last updated