id
id: string
code
code: string
name
name: string
description
description: string | null
productType
productType: string
billingPolicy
billingPolicy: string
unitOfMeasureId
unitOfMeasureId: string | null
unitOfPurchaseId
unitOfPurchaseId: string | null
unitOfStockId
unitOfStockId: string | null
conversionFactor
conversionFactor: number
sellingPrice
sellingPrice: number
cost
cost: number
costPerUnit
costPerUnit: string | null
salesTaxId
salesTaxId: string | null
density
density: number | null
color
color: string | null
thickness
thickness: number | null
width
width: number | null
length
length: number | null
weight
weight: number | null
internalReference
internalReference: string | null
barcode
barcode: string | null
minStockLevel
minStockLevel: number
maxStockLevel
maxStockLevel: number | null
reorderPoint
reorderPoint: number
imageUrl
imageUrl: string | null
imageKey
imageKey: string | null
internalNotes
internalNotes: string | null
tags: string | null
isActive
isActive: boolean
createdAt
createdAt: string
updatedAt
updatedAt: string
createdByUserId
createdByUserId: string | null
categoryId
categoryId: string | null
Optionalcategory
category?: { id: string; name: string; code: string } | null
OptionalunitOfMeasure
unitOfMeasure?:
| { id: string; name: string; code: string; symbol: string
| null }
| null
OptionalunitOfPurchase
unitOfPurchase?:
| { id: string; name: string; code: string; symbol: string
| null }
| null
OptionalunitOfStock
unitOfStock?:
| { id: string; name: string; code: string; symbol: string
| null }
| null
OptionalsalesTax
salesTax?: { id: string; name: string; rate: number } | null
Optionalfiles
files?: {
id: string;
filename: string;
url: string;
mimetype: string;
size: number;
}[]
Optionalsuppliers