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

Create a new product

CONFIGURABLEproducts must have at least one required variant property UID.

Required permissions: PRODUCT

post
/tenants/{tenantUid}/products
Authorizations
AuthorizationstringRequired

Access token recevied after user login with a deviceToken

Path parameters
tenantUidstringRequired

Reference to a tenant.

Pattern: ^[A-Za-z0-9-_]+
Body
allowCreditbooleanOptional
allowPurchasebooleanOptional
allowQuantitybooleanOptional
allowNegativePricebooleanOptional
allowSalestring · enumOptional
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-timeOptional
allowDeliverystring · enumOptional
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-timeOptional
allowOrderSpecificCostbooleanOptional

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

allowOrderSpecificNamebooleanOptional

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

allowDiscountbooleanOptional

Allow to set a discount on this product

availableForWebbooleanOptional

The product is available for web sale

brandUidstringRequiredPattern: ^[A-Za-z0-9-_]+
calculationFactorintegerOptional
customerAgeRestrictionintegerOptional

Age restriction for the customer. 0 = no restriction

categoryUidsstring[]Optional
descriptionstringOptional
discontinuedFromstring · date-timeOptional
externalIdstringOptional
externalInfostringOptional
externalUrlstringOptional
heightintegerOptional
internalInfostringOptional
ledgerNumberstringOptional

Ledger number must be a valid number with possible leading zeros

lengthintegerOptional
namestringRequired
priceOverridebooleanOptional

The price can be set on the orderline without adding it as a discount

productUidstringOptionalPattern: ^[A-Za-z0-9-_]+
productGroupUidstringRequiredPattern: ^[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:
recommendedRetailPriceintegerOptional
requiredVariantPropertyUidsstring[]Optional

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

serialNoRequiredstring · enumOptional
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:
sellOnlyAsAddonbooleanOptional
shortDescriptionstringOptional
skustringRequired
manufacturerSkustringOptional
unitLabelstringOptional
vatCodeUidstringRequiredPattern: ^[A-Za-z0-9-_]+
usesVatMarginSchemebooleanOptional

When true, VAT on this product is calculated under the margin scheme — on the profit margin (sales price minus purchase price) instead of the full sales price. Used for second-hand goods.

Default: false
weightintegerOptional
widthintegerOptional
commissionintegerOptional

A commission to be paid to the supplier after delivery.

visibilitystring · enumOptionalPossible values:
productWarrantyUidstringOptionalPattern: ^[A-Za-z0-9-_]*
excludeFromStatisticsbooleanOptionalDefault: false
purchasePriceintegerOptional
numberOfPiecesintegerOptional

Indicates how many packages/parts the product consists of.

limitToStoreUidsstring[]Optional

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

tradeUnitintegerOptional
Responses
200

Example response

application/json
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-_]+
usesVatMarginSchemebooleanRequired

When true, VAT on this product is calculated under the margin scheme — on the profit margin (sales price minus purchase price) instead of the full sales price. Used for second-hand goods.

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
POST /v2/tenants/{tenantUid}/products HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 1798

{
  "allowCredit": true,
  "allowPurchase": true,
  "allowQuantity": true,
  "allowNegativePrice": 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",
  "calculationFactor": 1,
  "customerAgeRestriction": 1,
  "categoryUids": [
    "text"
  ],
  "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",
  "ledgerNumber": "text",
  "length": 1,
  "media": [
    {
      "mainUrl": "text",
      "thumbnailUrl": "text",
      "position": 1,
      "setAsCoverImage": true,
      "productMediaUid": "text"
    }
  ],
  "name": "text",
  "priceOverride": true,
  "productUid": "text",
  "productGroupUid": "text",
  "productType": "STOCK",
  "optionProperties": [
    {
      "propertyUid": "text",
      "propertyOptionUid": "text",
      "productPropertyUid": "text"
    }
  ],
  "textProperties": [
    {
      "propertyUid": "text",
      "propertyText": "text",
      "productPropertyUid": "text"
    }
  ],
  "recommendedRetailPrice": 1,
  "requiredVariantPropertyUids": [
    "text"
  ],
  "serialNoRequired": "NO",
  "sellOnlyAsAddon": true,
  "shortDescription": "text",
  "sku": "text",
  "manufacturerSku": "text",
  "unitLabel": "text",
  "vatCodeUid": "text",
  "usesVatMarginScheme": false,
  "weight": 1,
  "width": 1,
  "requirements": {
    "requireCustomer": true,
    "requireCustomerMobile": true,
    "requireCustomerEmail": true,
    "requireCustomerDeliveryAddress": true,
    "orderItemReference": "text"
  },
  "commission": 1,
  "visibility": "ALWAYS_VISIBLE",
  "productWarrantyUid": "text",
  "excludeFromStatistics": false,
  "purchasePrice": 1,
  "currencyPurchasePrice": {
    "purchasePrice": 1,
    "currencyCode": "text"
  },
  "numberOfPieces": 1,
  "limitToStoreUids": [
    "text"
  ],
  "tradeUnit": 1,
  "properties": [
    {
      "propertyUid": "text",
      "value": "text"
    }
  ]
}
200

Example response

{
  "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",
  "usesVatMarginScheme": true,
  "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
}

Last updated

Was this helpful?