# Product

class Product extends DataModel

Product properties.

## Properties

protected array | $fields |  | from DataModel
protected boolean | $isEncrypted |  | from DataModel
protected Identity | $basePriceUnitId |  |
protected Identity | $id |  |
protected Identity | $manufacturerId |  |
protected Identity | $masterProductId |  |
protected Identity | $measurementUnitId |  |
protected Identity | $partsListId |  |
protected Identity | $productTypeId |  |
protected Identity | $shippingClassId |  |
protected Identity | $unitId |  |
protected string | $asin |  |
protected DateTime | $availableFrom |  |
protected double | $basePriceDivisor |  |
protected double | $basePriceFactor |  |
protected double | $basePriceQuantity |  |
protected string | $basePriceUnitCode |  |
protected string | $basePriceUnitName |  |
protected boolean | $considerBasePrice |  |
protected boolean | $considerStock |  |
protected boolean | $considerVariationStock |  |
protected DateTime | $creationDate |  |
protected string | $ean |  |
protected string | $epid |  |
protected string | $hazardIdNumber |  |
protected double | $height |  |
protected boolean | $isActive |  |
protected boolean | $isBatch |  |
protected boolean | $isBestBefore |  |
protected string | $isbn |  |
protected boolean | $isDivisible |  |
protected boolean | $isMasterProduct |  |
protected boolean | $isNewProduct |  |
protected boolean | $isSerialNumber |  |
protected boolean | $isTopProduct |  |
protected string | $keywords |  |
protected double | $length |  |
protected string | $manufacturerNumber |  |
protected double | $measurementQuantity |  |
protected string | $measurementUnitCode |  |
protected DateTime | $minBestBeforeDate |  |
protected double | $minimumOrderQuantity |  |
protected double | $minimumQuantity |  |
protected DateTime | $modified |  |
protected DateTime | $newReleaseDate |  |
protected DateTime | $nextAvailableInflowDate |  |
protected double | $nextAvailableInflowQuantity |  |
protected string | $note |  |
protected string | $originCountry |  |
protected double | $packagingQuantity |  |
protected boolean | $permitNegativeStock |  |
protected double | $productWeight |  |
protected double | $purchasePrice |  |
protected double | $recommendedRetailPrice |  |
protected string | $serialNumber |  |
protected double | $shippingWeight |  |
protected string | $sku |  |
protected integer | $sort |  |
protected ProductStockLevel | $stockLevel |  |
protected integer | $supplierDeliveryTime |  |
protected double | $supplierStockLevel |  |
protected string | $taric |  |
protected string | $unNumber |  |
protected string | $upc |  |
protected double | $vat |  |
protected double | $width |  |
protected ProductAttr[] | $attributes |  |
protected Product2Category[] | $categories |  |
protected ProductChecksum[] | $checksums |  |
protected ProductConfigGroup[] | $configGroups |  |
protected CustomerGroupPackagingQuantity[] | $customerGroupPackagingQuantities |  |
protected ProductFileDownload[] | $fileDownloads |  |
protected ProductI18n[] | $i18ns |  |
protected ProductInvisibility[] | $invisibilities |  |
protected ProductMediaFile[] | $mediaFiles |  |
protected ProductPartsList[] | $partsLists |  |
protected ProductPrice[] | $prices |  |
protected ProductSpecialPrice[] | $specialPrices |  |
protected ProductSpecific[] | $specifics |  |
protected ProductVarCombination[] | $varCombinations |  |
protected ProductVariation[] | $variations |  |
protected ProductWarehouseInfo[] | $warehouseInfo |  |

## Methods

__construct()

Constructor

multitype:
getProperties()

Get the Model Properties

from Model
Model
setOptions(stdClass $object = null, array $options = null)

Sets Properties with matching Array Values

from DataModel
stdClass
getPublic(array $publics = array('fields', 'isEncrypted', 'identities', '_type'))

Convert the Model into stdClass Object

from DataModel
toJson()

No description

from Model
mixed:string
getFields()

Fields Getter

from DataModel
validate()

Object Validation

from DataModel
mixed:string|NULL
getField(boolean $toWawi = false, string $key)

Get a Model Member Name

from DataModel
map(boolean $toWawi = false, stdClass $obj = null)

Object Mapping

from DataModel
DataType
getModelType()

No description

from DataModel
boolean
isEncrypted()

Encrypted Status

from DataModel
setIdentity(string $propertyName, string|null $endpoint = null, int|null $host = null)

No description

from DataModel
setProperty($name, $value, $type)

No description

from DataModel
validateType($value, $type)

No description

from DataModel
Product
setBasePriceUnitId(Identity $basePriceUnitId)

No description

Identity
getBasePriceUnitId()

No description

Product
setId(Identity $id)

No description

Identity
getId()

No description

Product
setManufacturerId(Identity $manufacturerId)

No description

Identity
getManufacturerId()

No description

Product
setMasterProductId(Identity $masterProductId)

No description

Identity
getMasterProductId()

No description

Product
setMeasurementUnitId(Identity $measurementUnitId)

No description

Identity
getMeasurementUnitId()

No description

Product
setPartsListId(Identity $partsListId)

No description

Identity
getPartsListId()

No description

Product
setProductTypeId(Identity $productTypeId)

No description

Identity
getProductTypeId()

No description

Product
setShippingClassId(Identity $shippingClassId)

No description

Identity
getShippingClassId()

No description

Product
setUnitId(Identity $unitId)

No description

Identity
getUnitId()

No description

Product
setAsin(string $asin)

No description

string
getAsin()

No description

Product
setAvailableFrom(DateTime $availableFrom = null)

No description

DateTime
getAvailableFrom()

No description

Product
setBasePriceDivisor(double $basePriceDivisor)

No description

double
getBasePriceDivisor()

No description

Product
setBasePriceFactor(double $basePriceFactor)

No description

double
getBasePriceFactor()

No description

Product
setBasePriceQuantity(double $basePriceQuantity)

No description

double
getBasePriceQuantity()

No description

Product
setBasePriceUnitCode(string $basePriceUnitCode)

No description

string
getBasePriceUnitCode()

No description

Product
setBasePriceUnitName(string $basePriceUnitName)

No description

string
getBasePriceUnitName()

No description

Product
setConsiderBasePrice(boolean $considerBasePrice)

No description

boolean
getConsiderBasePrice()

No description

Product
setConsiderStock(boolean $considerStock)

No description

boolean
getConsiderStock()

No description

Product
setConsiderVariationStock(boolean $considerVariationStock)

No description

boolean
getConsiderVariationStock()

No description

Product
setCreationDate(DateTime $creationDate = null)

No description

DateTime
getCreationDate()

No description

Product
setEan(string $ean)

No description

string
getEan()

No description

Product
setEpid(string $epid)

No description

string
getEpid()

No description

Product
setHazardIdNumber(string $hazardIdNumber)

No description

string
getHazardIdNumber()

No description

Product
setHeight(double $height)

No description

double
getHeight()

No description

Product
setIsActive(boolean $isActive)

No description

boolean
getIsActive()

No description

Product
setIsBatch(boolean $isBatch)

No description

boolean
getIsBatch()

No description

Product
setIsBestBefore(boolean $isBestBefore)

No description

boolean
getIsBestBefore()

No description

Product
setIsbn(string $isbn)

No description

string
getIsbn()

No description

Product
setIsDivisible(boolean $isDivisible)

No description

boolean
getIsDivisible()

No description

Product
setIsMasterProduct(boolean $isMasterProduct)

No description

boolean
getIsMasterProduct()

No description

Product
setisNewProduct(boolean $isNewProduct)

No description

boolean
getisNewProduct()

No description

Product
setIsSerialNumber(boolean $isSerialNumber)

No description

boolean
getIsSerialNumber()

No description

Product
setIsTopProduct(boolean $isTopProduct)

No description

boolean
getIsTopProduct()

No description

Product
setKeywords(string $keywords)

No description

string
getKeywords()

No description

Product
setLength(double $length)

No description

double
getLength()

No description

Product
setManufacturerNumber(string $manufacturerNumber)

No description

string
getManufacturerNumber()

No description

Product
setMeasurementQuantity(double $measurementQuantity)

No description

double
getMeasurementQuantity()

No description

Product
setMeasurementUnitCode(string $measurementUnitCode)

No description

string
getMeasurementUnitCode()

No description

Product
setMinBestBeforeDate(DateTime $minBestBeforeDate = null)

No description

DateTime
getMinBestBeforeDate()

No description

Product
setMinimumOrderQuantity(double $minimumOrderQuantity)

No description

double
getMinimumOrderQuantity()

No description

Product
setMinimumQuantity(double $minimumQuantity)

No description

double
getMinimumQuantity()

No description

Product
setModified(DateTime $modified = null)

No description

DateTime
getModified()

No description

Product
setNewReleaseDate(DateTime $newReleaseDate = null)

No description

DateTime
getNewReleaseDate()

No description

Product
setNextAvailableInflowDate(DateTime $nextAvailableInflowDate = null)

No description

DateTime
getNextAvailableInflowDate()

No description

Product
setNextAvailableInflowQuantity(double $nextAvailableInflowQuantity)

No description

double
getNextAvailableInflowQuantity()

No description

Product
setNote(string $note)

No description

string
getNote()

No description

Product
setOriginCountry(string $originCountry)

No description

string
getOriginCountry()

No description

Product
setPackagingQuantity(double $packagingQuantity)

No description

double
getPackagingQuantity()

No description

Product
setPermitNegativeStock(boolean $permitNegativeStock)

No description

boolean
getPermitNegativeStock()

No description

Product
setProductWeight(double $productWeight)

No description

double
getProductWeight()

No description

Product
setPurchasePrice(double $purchasePrice)

No description

double
getPurchasePrice()

No description

Product
setRecommendedRetailPrice(double $recommendedRetailPrice)

No description

double
getRecommendedRetailPrice()

No description

Product
setSerialNumber(string $serialNumber)

No description

string
getSerialNumber()

No description

Product
setShippingWeight(double $shippingWeight)

No description

double
getShippingWeight()

No description

Product
setSku(string $sku)

No description

string
getSku()

No description

Product
setSort(integer $sort)

No description

integer
getSort()

No description

Product
setStockLevel(ProductStockLevel $stockLevel = null)

No description

ProductStockLevel
getStockLevel()

No description

Product
setSupplierDeliveryTime(integer $supplierDeliveryTime)

No description

integer
getSupplierDeliveryTime()

No description

Product
setSupplierStockLevel(double $supplierStockLevel)

No description

double
getSupplierStockLevel()

No description

Product
setTaric(string $taric)

No description

string
getTaric()

No description

Product
setUnNumber(string $unNumber)

No description

string
getUnNumber()

No description

Product
setUpc(string $upc)

No description

string
getUpc()

No description

Product
setVat(double $vat)

No description

double
getVat()

No description

Product
setWidth(double $width)

No description

double
getWidth()

No description

Product
addAttribute(ProductAttr $attribute)

No description

Product
setAttributes(array $attributes)

No description

ProductAttr[]
getAttributes()

No description

Product
clearAttributes()

No description

Product
addCategory(Product2Category $category)

No description

Product
setCategories(array $categories)

No description

Product2Category[]
getCategories()

No description

Product
clearCategories()

No description

Product
addChecksum(ProductChecksum $checksum)

No description

Product
setChecksums(array $checksums)

No description

ProductChecksum[]
getChecksums()

No description

Product
clearChecksums()

No description

Product
addConfigGroup(ProductConfigGroup $configGroup)

No description

Product
setConfigGroups(array $configGroups)

No description

ProductConfigGroup[]
getConfigGroups()

No description

Product
clearConfigGroups()

No description

Product
addCustomerGroupPackagingQuantity(CustomerGroupPackagingQuantity $customerGroupPackagingQuantity)

No description

Product
setCustomerGroupPackagingQuantities(array $customerGroupPackagingQuantities)

No description

CustomerGroupPackagingQuantity[]
getCustomerGroupPackagingQuantities()

No description

Product
clearCustomerGroupPackagingQuantities()

No description

Product
addFileDownload(ProductFileDownload $fileDownload)

No description

Product
setFileDownloads(array $fileDownloads)

No description

ProductFileDownload[]
getFileDownloads()

No description

Product
clearFileDownloads()

No description

Product
addI18n(ProductI18n $i18n)

No description

Product
setI18ns(array $i18ns)

No description

ProductI18n[]
getI18ns()

No description

Product
clearI18ns()

No description

Product
addInvisibility(ProductInvisibility $invisibility)

No description

Product
setInvisibilities(array $invisibilities)

No description

ProductInvisibility[]
getInvisibilities()

No description

Product
clearInvisibilities()

No description

Product
addMediaFile(ProductMediaFile $mediaFile)

No description

Product
setMediaFiles(array $mediaFiles)

No description

ProductMediaFile[]
getMediaFiles()

No description

Product
clearMediaFiles()

No description

Product
addPartsList(ProductPartsList $partsList)

No description

Product
setPartsLists(array $partsLists)

No description

ProductPartsList[]
getPartsLists()

No description

Product
clearPartsLists()

No description

Product
addPrice(ProductPrice $price)

No description

Product
setPrices(array $prices)

No description

ProductPrice[]
getPrices()

No description

Product
clearPrices()

No description

Product
addSpecialPrice(ProductSpecialPrice $specialPrice)

No description

Product
setSpecialPrices(array $specialPrices)

No description

ProductSpecialPrice[]
getSpecialPrices()

No description

Product
clearSpecialPrices()

No description

Product
addSpecific(ProductSpecific $specific)

No description

Product
setSpecifics(array $specifics)

No description

ProductSpecific[]
getSpecifics()

No description

Product
clearSpecifics()

No description

Product
addVarCombination(ProductVarCombination $varCombination)

No description

Product
setVarCombinations(array $varCombinations)

No description

ProductVarCombination[]
getVarCombinations()

No description

Product
clearVarCombinations()

No description

Product
addVariation(ProductVariation $variation)

No description

Product
setVariations(array $variations)

No description

ProductVariation[]
getVariations()

No description

Product
clearVariations()

No description

Product
addWarehouseInfo(ProductWarehouseInfo $warehouseInfo)

No description

Product
setWarehouseInfo(array $warehouseInfo)

No description

ProductWarehouseInfo[]
getWarehouseInfo()

No description

Product
clearWarehouseInfo()

No description

## Details

###
at line 667
`__construct()`

Constructor

###
in Model at line 33
`multitype: getProperties()`

Get the Model Properties

#### Return Value

multitype: | string

###
in DataModel at line 172
`Model setOptions(stdClass $object = null, array $options = null)`

Sets Properties with matching Array Values

#### Parameters

stdClass | $object |
array | $options |

#### Return Value

Model |

###
in DataModel at line 70
`stdClass getPublic(array $publics = array('fields', 'isEncrypted', 'identities', '_type'))`

Convert the Model into stdClass Object

#### Parameters

array | $publics |

#### Return Value

stdClass | $object

###
in Model at line 115
`toJson()`

###
in DataModel at line 35
`mixed:string getFields()`

Fields Getter

#### Return Value

mixed:string |

###
in DataModel at line 45
`validate()`

Object Validation

#### Exceptions

SchemaException |

###
in DataModel at line 59
`mixed:string|NULL getField(boolean $toWawi = false, string $key)`

Get a Model Member Name

#### Parameters

boolean | $toWawi |
string | $key |

#### Return Value

mixed:string|NULL |

###
in DataModel at line 81
`map(boolean $toWawi = false, stdClass $obj = null)`

Object Mapping

#### Parameters

boolean | $toWawi |
stdClass | $obj | Object to map

###
in DataModel at line 42
`DataType getModelType()`

#### Return Value

DataType |

###
in DataModel at line 59
`boolean isEncrypted()`

Encrypted Status

#### Return Value

boolean |

###
in DataModel at line 123
`setIdentity(string $propertyName, string|null $endpoint = null, int|null $host = null)`

#### Parameters

string | $propertyName |
string|null | $endpoint |
int|null | $host |

###
in DataModel at line 179
`protected setProperty($name, $value, $type)`

#### Parameters

| $name |
| $value |
| $type |

###
in DataModel at line 190
`protected validateType($value, $type)`

#### Parameters

| $value |
| $type |

###
at line 685
`Product setBasePriceUnitId(Identity $basePriceUnitId)`

#### Parameters

Identity | $basePriceUnitId | Optional reference to basePriceUnit

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'Identity'.

###
at line 693
`Identity getBasePriceUnitId()`

#### Return Value

Identity | Optional reference to basePriceUnit

###
at line 703
`Product setId(Identity $id)`

#### Parameters

Identity | $id | Unique product id

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'Identity'.

###
at line 711
`Identity getId()`

#### Return Value

Identity | Unique product id

###
at line 721
`Product setManufacturerId(Identity $manufacturerId)`

#### Parameters

Identity | $manufacturerId | Reference to manufacturer

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'Identity'.

###
at line 729
`Identity getManufacturerId()`

#### Return Value

Identity | Reference to manufacturer

###
at line 739
`Product setMasterProductId(Identity $masterProductId)`

#### Parameters

Identity | $masterProductId | Reference to master product

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'Identity'.

###
at line 747
`Identity getMasterProductId()`

#### Return Value

Identity | Reference to master product

###
at line 757
`Product setMeasurementUnitId(Identity $measurementUnitId)`

#### Parameters

Identity | $measurementUnitId | Optional reference to measurement unit id

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'Identity'.

###
at line 765
`Identity getMeasurementUnitId()`

#### Return Value

Identity | Optional reference to measurement unit id

###
at line 775
`Product setPartsListId(Identity $partsListId)`

#### Parameters

Identity | $partsListId | Optional reference to partsList

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'Identity'.

###
at line 783
`Identity getPartsListId()`

#### Return Value

Identity | Optional reference to partsList

###
at line 793
`Product setProductTypeId(Identity $productTypeId)`

#### Parameters

Identity | $productTypeId | Optional reference to productType

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'Identity'.

###
at line 801
`Identity getProductTypeId()`

#### Return Value

Identity | Optional reference to productType

###
at line 811
`Product setShippingClassId(Identity $shippingClassId)`

#### Parameters

Identity | $shippingClassId | Reference to shippingClass

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'Identity'.

###
at line 819
`Identity getShippingClassId()`

#### Return Value

Identity | Reference to shippingClass

###
at line 829
`Product setUnitId(Identity $unitId)`

#### Parameters

Identity | $unitId | Reference to unit

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'Identity'.

###
at line 837
`Identity getUnitId()`

#### Return Value

Identity | Reference to unit

###
at line 846
`Product setAsin(string $asin)`

#### Parameters

string | $asin | Optional Amazon Standard Identification Number

#### Return Value

Product |

###
at line 854
`string getAsin()`

#### Return Value

string | Optional Amazon Standard Identification Number

###
at line 864
`Product setAvailableFrom(DateTime $availableFrom = null)`

#### Parameters

DateTime | $availableFrom | Optional available from date. Specify a date, upon when product can be purchased.

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'DateTime'.

###
at line 872
`DateTime getAvailableFrom()`

#### Return Value

DateTime | Optional available from date. Specify a date, upon when product can be purchased.

###
at line 881
`Product setBasePriceDivisor(double $basePriceDivisor)`

#### Parameters

double | $basePriceDivisor | Optional base price divisor. Calculate basePriceDivisor by dividing product filling quantity through unit pricing base measure. E.g. 75ml / 100ml = 0.75

#### Return Value

Product |

###
at line 889
`double getBasePriceDivisor()`

#### Return Value

double | Optional base price divisor. Calculate basePriceDivisor by dividing product filling quantity through unit pricing base measure. E.g. 75ml / 100ml = 0.75

###
at line 898
`Product setBasePriceFactor(double $basePriceFactor)`

#### Parameters

double | $basePriceFactor |

#### Return Value

Product |

###
at line 906
`double getBasePriceFactor()`

#### Return Value

double |

###
at line 915
`Product setBasePriceQuantity(double $basePriceQuantity)`

#### Parameters

double | $basePriceQuantity | Optional base price quantity

#### Return Value

Product |

###
at line 923
`double getBasePriceQuantity()`

#### Return Value

double | Optional base price quantity

###
at line 932
`Product setBasePriceUnitCode(string $basePriceUnitCode)`

#### Parameters

string | $basePriceUnitCode |

#### Return Value

Product |

###
at line 940
`string getBasePriceUnitCode()`

#### Return Value

string |

###
at line 949
`Product setBasePriceUnitName(string $basePriceUnitName)`

#### Parameters

string | $basePriceUnitName |

#### Return Value

Product |

###
at line 957
`string getBasePriceUnitName()`

#### Return Value

string |

###
at line 966
`Product setConsiderBasePrice(boolean $considerBasePrice)`

#### Parameters

boolean | $considerBasePrice | Optional: Set to true to display base price / unit pricing measure

#### Return Value

Product |

###
at line 974
`boolean getConsiderBasePrice()`

#### Return Value

boolean | Optional: Set to true to display base price / unit pricing measure

###
at line 983
`Product setConsiderStock(boolean $considerStock)`

#### Parameters

boolean | $considerStock | Consider stock level? If true, product can only be purchased with a positive stockLevel or when permitNegativeStock is set to true

#### Return Value

Product |

###
at line 991
`boolean getConsiderStock()`

#### Return Value

boolean | Consider stock level? If true, product can only be purchased with a positive stockLevel or when permitNegativeStock is set to true

###
at line 1000
`Product setConsiderVariationStock(boolean $considerVariationStock)`

#### Parameters

boolean | $considerVariationStock | Optional: Consider stock levels of productVariations. Same as considerStock but for variations.

#### Return Value

Product |

###
at line 1008
`boolean getConsiderVariationStock()`

#### Return Value

boolean | Optional: Consider stock levels of productVariations. Same as considerStock but for variations.

###
at line 1018
`Product setCreationDate(DateTime $creationDate = null)`

#### Parameters

DateTime | $creationDate | Creation date

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'DateTime'.

###
at line 1026
`DateTime getCreationDate()`

#### Return Value

DateTime | Creation date

###
at line 1035
`Product setEan(string $ean)`

#### Parameters

string | $ean | Optional European Article Number (EAN)

#### Return Value

Product |

###
at line 1043
`string getEan()`

#### Return Value

string | Optional European Article Number (EAN)

###
at line 1052
`Product setEpid(string $epid)`

#### Parameters

string | $epid | Optional Ebay product ID

#### Return Value

Product |

###
at line 1060
`string getEpid()`

#### Return Value

string | Optional Ebay product ID

###
at line 1069
`Product setHazardIdNumber(string $hazardIdNumber)`

#### Parameters

string | $hazardIdNumber | Optional Hazard identifier, encodes general hazard class und subdivision

#### Return Value

Product |

###
at line 1077
`string getHazardIdNumber()`

#### Return Value

string | Optional Hazard identifier, encodes general hazard class und subdivision

###
at line 1086
`Product setHeight(double $height)`

#### Parameters

double | $height | Optional product height

#### Return Value

Product |

###
at line 1094
`double getHeight()`

#### Return Value

double | Optional product height

###
at line 1103
`Product setIsActive(boolean $isActive)`

#### Parameters

boolean | $isActive |

#### Return Value

Product |

###
at line 1111
`boolean getIsActive()`

#### Return Value

boolean |

###
at line 1120
`Product setIsBatch(boolean $isBatch)`

#### Parameters

boolean | $isBatch |

#### Return Value

Product |

###
at line 1128
`boolean getIsBatch()`

#### Return Value

boolean |

###
at line 1137
`Product setIsBestBefore(boolean $isBestBefore)`

#### Parameters

boolean | $isBestBefore |

#### Return Value

Product |

###
at line 1145
`boolean getIsBestBefore()`

#### Return Value

boolean |

###
at line 1154
`Product setIsbn(string $isbn)`

#### Parameters

string | $isbn | Optional International Standard Book Number

#### Return Value

Product |

###
at line 1162
`string getIsbn()`

#### Return Value

string | Optional International Standard Book Number

###
at line 1171
`Product setIsDivisible(boolean $isDivisible)`

#### Parameters

boolean | $isDivisible | Optional: Set to true to allow non-integer quantites for purchase

#### Return Value

Product |

###
at line 1179
`boolean getIsDivisible()`

#### Return Value

boolean | Optional: Set to true to allow non-integer quantites for purchase

###
at line 1188
`Product setIsMasterProduct(boolean $isMasterProduct)`

#### Parameters

boolean | $isMasterProduct | Optional flag if product is master product

#### Return Value

Product |

###
at line 1196
`boolean getIsMasterProduct()`

#### Return Value

boolean | Optional flag if product is master product

###
at line 1205
`Product setisNewProduct(boolean $isNewProduct)`

#### Parameters

boolean | $isNewProduct | Optional flag new product. If true, product will be highlighted as new (creation date may also be considered)

#### Return Value

Product |

###
at line 1213
`boolean getisNewProduct()`

#### Return Value

boolean | Optional flag new product. If true, product will be highlighted as new (creation date may also be considered)

###
at line 1222
`Product setIsSerialNumber(boolean $isSerialNumber)`

#### Parameters

boolean | $isSerialNumber |

#### Return Value

Product |

###
at line 1230
`boolean getIsSerialNumber()`

#### Return Value

boolean |

###
at line 1239
`Product setIsTopProduct(boolean $isTopProduct)`

#### Parameters

boolean | $isTopProduct | Optional flag top product. If true, product will be highlighted as top product (e.g. in product lists or in special boxes)

#### Return Value

Product |

###
at line 1247
`boolean getIsTopProduct()`

#### Return Value

boolean | Optional flag top product. If true, product will be highlighted as top product (e.g. in product lists or in special boxes)

###
at line 1256
`Product setKeywords(string $keywords)`

#### Parameters

string | $keywords | Optional internal keywords and synonyms for product

#### Return Value

Product |

###
at line 1264
`string getKeywords()`

#### Return Value

string | Optional internal keywords and synonyms for product

###
at line 1273
`Product setLength(double $length)`

#### Parameters

double | $length | Optional product length

#### Return Value

Product |

###
at line 1281
`double getLength()`

#### Return Value

double | Optional product length

###
at line 1290
`Product setManufacturerNumber(string $manufacturerNumber)`

#### Parameters

string | $manufacturerNumber | Optional manufacturer number

#### Return Value

Product |

###
at line 1298
`string getManufacturerNumber()`

#### Return Value

string | Optional manufacturer number

###
at line 1307
`Product setMeasurementQuantity(double $measurementQuantity)`

#### Parameters

double | $measurementQuantity | Optional measurement quantity

#### Return Value

Product |

###
at line 1315
`double getMeasurementQuantity()`

#### Return Value

double | Optional measurement quantity

###
at line 1324
`Product setMeasurementUnitCode(string $measurementUnitCode)`

#### Parameters

string | $measurementUnitCode |

#### Return Value

Product |

###
at line 1332
`string getMeasurementUnitCode()`

#### Return Value

string |

###
at line 1342
`Product setMinBestBeforeDate(DateTime $minBestBeforeDate = null)`

#### Parameters

DateTime | $minBestBeforeDate |

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'DateTime'.

###
at line 1350
`DateTime getMinBestBeforeDate()`

#### Return Value

DateTime |

###
at line 1359
`Product setMinimumOrderQuantity(double $minimumOrderQuantity)`

#### Parameters

double | $minimumOrderQuantity |

#### Return Value

Product |

###
at line 1367
`double getMinimumOrderQuantity()`

#### Return Value

double |

###
at line 1376
`Product setMinimumQuantity(double $minimumQuantity)`

#### Parameters

double | $minimumQuantity |

#### Return Value

Product |

###
at line 1384
`double getMinimumQuantity()`

#### Return Value

double |

###
at line 1394
`Product setModified(DateTime $modified = null)`

#### Parameters

DateTime | $modified |

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'DateTime'.

###
at line 1402
`DateTime getModified()`

#### Return Value

DateTime |

###
at line 1412
`Product setNewReleaseDate(DateTime $newReleaseDate = null)`

#### Parameters

DateTime | $newReleaseDate |

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'DateTime'.

###
at line 1420
`DateTime getNewReleaseDate()`

#### Return Value

DateTime |

###
at line 1430
`Product setNextAvailableInflowDate(DateTime $nextAvailableInflowDate = null)`

#### Parameters

DateTime | $nextAvailableInflowDate | Contains the date of the next available inflow.

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'DateTime'.

###
at line 1438
`DateTime getNextAvailableInflowDate()`

#### Return Value

DateTime | Contains the date of the next available inflow.

###
at line 1447
`Product setNextAvailableInflowQuantity(double $nextAvailableInflowQuantity)`

#### Parameters

double | $nextAvailableInflowQuantity | Contains the quantity of the next available inflow.

#### Return Value

Product |

###
at line 1455
`double getNextAvailableInflowQuantity()`

#### Return Value

double | Contains the quantity of the next available inflow.

###
at line 1464
`Product setNote(string $note)`

#### Parameters

string | $note | Optional internal product note

#### Return Value

Product |

###
at line 1472
`string getNote()`

#### Return Value

string | Optional internal product note

###
at line 1481
`Product setOriginCountry(string $originCountry)`

#### Parameters

string | $originCountry | Optional Origin country

#### Return Value

Product |

###
at line 1489
`string getOriginCountry()`

#### Return Value

string | Optional Origin country

###
at line 1498
`Product setPackagingQuantity(double $packagingQuantity)`

#### Parameters

double | $packagingQuantity | Optional: Product can only be purchased in multiples of takeOffQuantity e.g. 5,10,15...

#### Return Value

Product |

###
at line 1506
`double getPackagingQuantity()`

#### Return Value

double | Optional: Product can only be purchased in multiples of takeOffQuantity e.g. 5,10,15...

###
at line 1515
`Product setPermitNegativeStock(boolean $permitNegativeStock)`

#### Parameters

boolean | $permitNegativeStock | Optional Permit negative stock / allow overselling. If true, product can be purchased even if stockLevel is less or equal 0 and considerStock is true.

#### Return Value

Product |

###
at line 1523
`boolean getPermitNegativeStock()`

#### Return Value

boolean | Optional Permit negative stock / allow overselling. If true, product can be purchased even if stockLevel is less or equal 0 and considerStock is true.

###
at line 1532
`Product setProductWeight(double $productWeight)`

#### Parameters

double | $productWeight | Productweight exclusive packaging

#### Return Value

Product |

###
at line 1540
`double getProductWeight()`

#### Return Value

double | Productweight exclusive packaging

###
at line 1549
`Product setPurchasePrice(double $purchasePrice)`

#### Parameters

double | $purchasePrice |

#### Return Value

Product |

###
at line 1557
`double getPurchasePrice()`

#### Return Value

double |

###
at line 1566
`Product setRecommendedRetailPrice(double $recommendedRetailPrice)`

#### Parameters

double | $recommendedRetailPrice | Optional recommended retail price (gross)

#### Return Value

Product |

###
at line 1574
`double getRecommendedRetailPrice()`

#### Return Value

double | Optional recommended retail price (gross)

###
at line 1583
`Product setSerialNumber(string $serialNumber)`

#### Parameters

string | $serialNumber | Optional serial number

#### Return Value

Product |

###
at line 1591
`string getSerialNumber()`

#### Return Value

string | Optional serial number

###
at line 1600
`Product setShippingWeight(double $shippingWeight)`

#### Parameters

double | $shippingWeight | Productweight inclusive packaging

#### Return Value

Product |

###
at line 1608
`double getShippingWeight()`

#### Return Value

double | Productweight inclusive packaging

###
at line 1617
`Product setSku(string $sku)`

#### Parameters

string | $sku | Optional stock keeping unit identifier

#### Return Value

Product |

###
at line 1625
`string getSku()`

#### Return Value

string | Optional stock keeping unit identifier

###
at line 1634
`Product setSort(integer $sort)`

#### Parameters

integer | $sort | Optional sort number for product sorting in lists

#### Return Value

Product |

###
at line 1642
`integer getSort()`

#### Return Value

integer | Optional sort number for product sorting in lists

###
at line 1652
`Product setStockLevel(ProductStockLevel $stockLevel = null)`

#### Parameters

ProductStockLevel | $stockLevel |

#### Return Value

Product |

#### Exceptions

InvalidArgumentException | if the provided argument is not of type 'ProductStockLevel'.

###
at line 1660
`ProductStockLevel getStockLevel()`

#### Return Value

ProductStockLevel |

###
at line 1669
`Product setSupplierDeliveryTime(integer $supplierDeliveryTime)`

#### Parameters

integer | $supplierDeliveryTime |

#### Return Value

Product |

###
at line 1677
`integer getSupplierDeliveryTime()`

#### Return Value

integer |

###
at line 1686
`Product setSupplierStockLevel(double $supplierStockLevel)`

#### Parameters

double | $supplierStockLevel |

#### Return Value

Product |

###
at line 1694
`double getSupplierStockLevel()`

#### Return Value

double |

###
at line 1703
`Product setTaric(string $taric)`

#### Parameters

string | $taric | Optional TARIC

#### Return Value

Product |

###
at line 1711
`string getTaric()`

#### Return Value

string | Optional TARIC

###
at line 1720
`Product setUnNumber(string $unNumber)`

#### Parameters

string | $unNumber | Optional UN number, used to define hazardous properties

#### Return Value

Product |

###
at line 1728
`string getUnNumber()`

#### Return Value

string | Optional UN number, used to define hazardous properties

###
at line 1737
`Product setUpc(string $upc)`

#### Parameters

string | $upc | Optional Universal Product Code

#### Return Value

Product |

###
at line 1745
`string getUpc()`

#### Return Value

string | Optional Universal Product Code

###
at line 1754
`Product setVat(double $vat)`

#### Parameters

double | $vat |

#### Return Value

Product |

###
at line 1762
`double getVat()`

#### Return Value

double |

###
at line 1771
`Product setWidth(double $width)`

#### Parameters

double | $width | Optional product width

#### Return Value

Product |

###
at line 1779
`double getWidth()`

#### Return Value

double | Optional product width

###
at line 1788
`Product addAttribute(ProductAttr $attribute)`

#### Parameters

ProductAttr | $attribute |

#### Return Value

Product |

###
at line 1798
`Product setAttributes(array $attributes)`

#### Parameters

array | $attributes |

#### Return Value

Product |

###
at line 1807
`ProductAttr[] getAttributes()`

#### Return Value

ProductAttr[] |

###
at line 1815
`Product clearAttributes()`

#### Return Value

Product |

###
at line 1825
`Product addCategory(Product2Category $category)`

#### Parameters

Product2Category | $category |

#### Return Value

Product |

###
at line 1835
`Product setCategories(array $categories)`

#### Parameters

array | $categories |

#### Return Value

Product |

###
at line 1844
`Product2Category[] getCategories()`

#### Return Value

Product2Category[] |

###
at line 1852
`Product clearCategories()`

#### Return Value

Product |

###
at line 1862
`Product addChecksum(ProductChecksum $checksum)`

#### Parameters

ProductChecksum | $checksum |

#### Return Value

Product |

###
at line 1872
`Product setChecksums(array $checksums)`

#### Parameters

array | $checksums |

#### Return Value

Product |

###
at line 1881
`ProductChecksum[] getChecksums()`

#### Return Value

ProductChecksum[] |

###
at line 1889
`Product clearChecksums()`

#### Return Value

Product |

###
at line 1899
`Product addConfigGroup(ProductConfigGroup $configGroup)`

#### Parameters

ProductConfigGroup | $configGroup |

#### Return Value

Product |

###
at line 1909
`Product setConfigGroups(array $configGroups)`

#### Parameters

array | $configGroups |

#### Return Value

Product |

###
at line 1918
`ProductConfigGroup[] getConfigGroups()`

#### Return Value

ProductConfigGroup[] |

###
at line 1926
`Product clearConfigGroups()`

#### Return Value

Product |

###
at line 1936
`Product addCustomerGroupPackagingQuantity(CustomerGroupPackagingQuantity $customerGroupPackagingQuantity)`

#### Parameters

CustomerGroupPackagingQuantity | $customerGroupPackagingQuantity |

#### Return Value

Product |

###
at line 1946
`Product setCustomerGroupPackagingQuantities(array $customerGroupPackagingQuantities)`

#### Parameters

array | $customerGroupPackagingQuantities |

#### Return Value

Product |

###
at line 1955
`CustomerGroupPackagingQuantity[] getCustomerGroupPackagingQuantities()`

#### Return Value

CustomerGroupPackagingQuantity[] |

###
at line 1963
`Product clearCustomerGroupPackagingQuantities()`

#### Return Value

Product |

###
at line 1973
`Product addFileDownload(ProductFileDownload $fileDownload)`

#### Parameters

ProductFileDownload | $fileDownload |

#### Return Value

Product |

###
at line 1983
`Product setFileDownloads(array $fileDownloads)`

#### Parameters

array | $fileDownloads |

#### Return Value

Product |

###
at line 1992
`ProductFileDownload[] getFileDownloads()`

#### Return Value

ProductFileDownload[] |

###
at line 2000
`Product clearFileDownloads()`

#### Return Value

Product |

###
at line 2010
`Product addI18n(ProductI18n $i18n)`

#### Parameters

ProductI18n | $i18n |

#### Return Value

Product |

###
at line 2020
`Product setI18ns(array $i18ns)`

#### Parameters

array | $i18ns |

#### Return Value

Product |

###
at line 2029
`ProductI18n[] getI18ns()`

#### Return Value

ProductI18n[] |

###
at line 2037
`Product clearI18ns()`

#### Return Value

Product |

###
at line 2047
`Product addInvisibility(ProductInvisibility $invisibility)`

#### Parameters

ProductInvisibility | $invisibility |

#### Return Value

Product |

###
at line 2057
`Product setInvisibilities(array $invisibilities)`

#### Parameters

array | $invisibilities |

#### Return Value

Product |

###
at line 2066
`ProductInvisibility[] getInvisibilities()`

#### Return Value

ProductInvisibility[] |

###
at line 2074
`Product clearInvisibilities()`

#### Return Value

Product |

###
at line 2084
`Product addMediaFile(ProductMediaFile $mediaFile)`

#### Parameters

ProductMediaFile | $mediaFile |

#### Return Value

Product |

###
at line 2094
`Product setMediaFiles(array $mediaFiles)`

#### Parameters

array | $mediaFiles |

#### Return Value

Product |

###
at line 2103
`ProductMediaFile[] getMediaFiles()`

#### Return Value

ProductMediaFile[] |

###
at line 2111
`Product clearMediaFiles()`

#### Return Value

Product |

###
at line 2121
`Product addPartsList(ProductPartsList $partsList)`

#### Parameters

ProductPartsList | $partsList |

#### Return Value

Product |

###
at line 2131
`Product setPartsLists(array $partsLists)`

#### Parameters

array | $partsLists |

#### Return Value

Product |

###
at line 2140
`ProductPartsList[] getPartsLists()`

#### Return Value

ProductPartsList[] |

###
at line 2148
`Product clearPartsLists()`

#### Return Value

Product |

###
at line 2158
`Product addPrice(ProductPrice $price)`

#### Parameters

ProductPrice | $price |

#### Return Value

Product |

###
at line 2168
`Product setPrices(array $prices)`

#### Parameters

array | $prices |

#### Return Value

Product |

###
at line 2177
`ProductPrice[] getPrices()`

#### Return Value

ProductPrice[] |

###
at line 2185
`Product clearPrices()`

#### Return Value

Product |

###
at line 2195
`Product addSpecialPrice(ProductSpecialPrice $specialPrice)`

#### Parameters

ProductSpecialPrice | $specialPrice |

#### Return Value

Product |

###
at line 2205
`Product setSpecialPrices(array $specialPrices)`

#### Parameters

array | $specialPrices |

#### Return Value

Product |

###
at line 2214
`ProductSpecialPrice[] getSpecialPrices()`

#### Return Value

ProductSpecialPrice[] |

###
at line 2222
`Product clearSpecialPrices()`

#### Return Value

Product |

###
at line 2232
`Product addSpecific(ProductSpecific $specific)`

#### Parameters

ProductSpecific | $specific |

#### Return Value

Product |

###
at line 2242
`Product setSpecifics(array $specifics)`

#### Parameters

array | $specifics |

#### Return Value

Product |

###
at line 2251
`ProductSpecific[] getSpecifics()`

#### Return Value

ProductSpecific[] |

###
at line 2259
`Product clearSpecifics()`

#### Return Value

Product |

###
at line 2269
`Product addVarCombination(ProductVarCombination $varCombination)`

#### Parameters

ProductVarCombination | $varCombination |

#### Return Value

Product |

###
at line 2279
`Product setVarCombinations(array $varCombinations)`

#### Parameters

array | $varCombinations |

#### Return Value

Product |

###
at line 2288
`ProductVarCombination[] getVarCombinations()`

#### Return Value

ProductVarCombination[] |

###
at line 2296
`Product clearVarCombinations()`

#### Return Value

Product |

###
at line 2306
`Product addVariation(ProductVariation $variation)`

#### Parameters

ProductVariation | $variation |

#### Return Value

Product |

###
at line 2316
`Product setVariations(array $variations)`

#### Parameters

array | $variations |

#### Return Value

Product |

###
at line 2325
`ProductVariation[] getVariations()`

#### Return Value

ProductVariation[] |

###
at line 2333
`Product clearVariations()`

#### Return Value

Product |

###
at line 2343
`Product addWarehouseInfo(ProductWarehouseInfo $warehouseInfo)`

#### Parameters

ProductWarehouseInfo | $warehouseInfo |

#### Return Value

Product |

###
at line 2353
`Product setWarehouseInfo(array $warehouseInfo)`

#### Parameters

array | $warehouseInfo |

#### Return Value

Product |

###
at line 2362
`ProductWarehouseInfo[] getWarehouseInfo()`

#### Return Value

ProductWarehouseInfo[] |

###
at line 2370
`Product clearWarehouseInfo()`

#### Return Value

Product |