Store data model for Inventory Management database design
Help Docs → Inventory Management →
Inventory Management Store database design for the best Inventory Management Store database schema. Store table for Inventory Management example.
Subject area: STORE
Overview
The Logical Data Model of the STORE Subject Area includes the following entities:
Entity: STORE
This entity records information about Stores. The same database can manage many Stores.
Attributes | |
---|---|
ID | PRIMARY KEY |
City_ID | Lookup for the City where the Store is located. NOT NULL |
Language_ID | Lookup for the main language. NOT NULL |
Currency_ID | Lookup for the main currency. NOT NULL |
Admin_User_ID | Lookup for the Admin who created the Store. NOT NULL |
Code | Store code. UNIQUE identifies the Store. Cannot register two Stores with the same code. |
Name | Store name. UNIQUE identifies the Store. Cannot register two Stores with the same Name. NOT NULL UNIQUE |
Is_Active | Flag attribute to indicate if the Store is still operational at location or it is closed permanently. NOT NULL |
Legal_Entity_Name | Legal Entity Name of the company who owns the Store. NOT NULL |
Tax_Code | Tax Code of the company who owns the Store (VAT code). NOT NULL |
Address | Store Address. NOT NULL |
Registration_Number | Registration Number of the company who owns the Store. NOT NULL |
GPS_Location | Store GPS location. Can be used for delivery pick-up location etc |
Postal_Code | Store postal code. |
Phone | Store phone number. |
Fax | Store fax number. |
Store email. | |
Website | Store website http address. |
Logo | Store logo (image, etc). |
Bank_Branch | Branch of the bank where the company who owns the Store has the bank account. |
Bank_Code | Bank code of the bank where the company who owns the Store has the bank account. |
Bank_Account | Bank Account of the company who owns the Store. |
Comments | Internal notes used for clarifications on record content. Can be seen and edited only by Store Employees. |
Entity: SETTING
This entity records the Settings (parameters) defined at Store level.
Attributes | |
---|---|
ID | PRIMARY KEY |
Store_ID | Lookup for the Store for which the Setting was defined. NOT NULL | Default_Payment_Method_ID | Lookup for the Default Payment Method assigned to Store. |
Default_Tax_Type_ID | Lookup for the Default Tax Type assigned to Store. |
Default_Quantity | Default quantity for the Item added to an Order. Example: ⦁ If Default_Quantity is set to 1 then each time an Item is added to an Order the Item Quantity is set to 1 and can be edited (if necessary) before submitting the Order. |
In_Stock_Check | Flag attribute to indicate if a stock check is done before an Item is added to Order. ⦁ If In_Stock_Check attribute is set TRUE then the system will check if there is enough quantity on stock before Item is added to the Order. ⦁ If there is not enough quantity on stock and the Negative_Stock_Allowed is ⦁ If there is not enough quantity on stock and the Negative_Stock_Allowed is |
Negative_Stock_Allowed | Flag attribute to indicate if negative stock is allowed. Example: ⦁ If Negative_Stock_Allowed attribute is set FALSE then an warning message will be displayed to prevent negative stock . NOT NULL |
Price_Includes_Tax | Flag attribute to indicate how the price is displayed and printed (on screen, receipts, invoices etc). Example: ⦁ If Price_Includes_Tax attribute is set TRUE then prices will be displayed and printed after tax. ⦁ If Price_Includes_Tax attribute is set FALSE then prices will be displayed and printed before tax. NOT NULL |
Negative_Price_Allowed | Flag attribute to indicate if negatives prices can be assigned to items and can be used in sales. NOT NULL |
Moving_Average_Price | Flag attribute that specifies whether the Moving Average Price method is applied. ⦁ If Moving_Average_Price attribute is set TRUE then the Moving Average Price method is applied. When the Moving Average Price method is applied , the cost price is recalculated after each purchase (items acquisition) as follows: Current_Item_Cost = ( Initial_Stock_Quantity * Initial_Item_Cost + Purchased Item Quantity * Purchased Item Cost ) / ( Initial_Stock_Quantity + Purchased Item Quantity ) See Subject Area: INVENTORY AND STOCK, Entity: STOCK_HISTORY for more information. . NOT NULL |
Discount_Before_Tax | Flag attribute that specifies whether discount is applied before or after taxes are applied. This flag is very important as applying fixed discounts before or after taxes results in different totals. Example: ⦁ If Discount_Before_Tax attribute is set TRUE then discounts are applied before taxes. ⦁ If Discount_Before_Tax attribute is set FALSEthen discounts are applied after taxes. NOT NULL |
Decimal_Places | Number of Decimal Places displayed and printed |
Default_Due_Days | Default due days for an unpaid Order. Example: ⦁ If Default_Due_Days is set to 1 then the payment must be done in 1 day (maximum 24 hours) after the Order is delivered (if credit payments are allowed). ⦁ If Default_Due_Days is NULL then the Order must be paid before the Order is delivered to Customer (credit payments are not allowed). |
Public_Reviews_Allowed | Flag attribute to indicate if the Customer order reviews are public and displayed on the Store website. NOT NULL. Example: ⦁ If Public_Reviews_Allowed attribute is set TRUE then the Customer reviews are public and can be viewed by other Customers on Store website ⦁ If Public_Reviews_Allowed attribute is set FALSE then the Customer reviews are private and cannot be viewed by other Customers on Store website. See Subject Area: ORDER, Entity: ORDER_REVIEW for more information. |
Created_Time | Timestamp when the Setting record was created. NOT NULL |
Start_Time | The start timestamp from which the Setting is applicable. NOT NULL |
End_Time | The end timestamp after which the Setting is not applicable. When the End_Time is NULL the Setting is still applicable. NULL |
Is_Active | Flag attribute to indicate if the Setting is still active. NOT NULL |
Comments | Internal notes used for clarifications on record content. |
Entity: TAX_TYPE
List of Tax types assigned to a Store.
Attributes | |
---|---|
ID | PRIMARY KEY |
Store_ID | Lookup for the Store for which the Tax Type record was defined. NOT NULL |
Name | Tax Type name. Example: 'Value Added Tax' etc. NOT NULL |
Code | Tax Type code. Example: 'VAT' etc. NOT NULL |
Description | Tax Type description |
Is_Percentage | Flag to indicate if the tax value is a percentage or a flat amount. Example: ⦁ If Is_Percentage is TRUE and Value is '40' then it means a 40% Tax ⦁ If Is_Percentage is FALSE and Value is '40' then it means 40 money amount expressed in Store default currency. See Entity: STORE, Attribute: Currency_ID for more information. NOT NULL |
Value | Value of Tax. Example: ⦁ If Is_Percentage is TRUE then the Value is the Tax percentage. For example a value of '14.50' means 14.50% Tax. ⦁ If Is_Percentage is FALSE then the Value is the money amount fix Tax. For example a Tax Value of '14.50' means a Tax of 14.50 expressed in Store default currency. See Entity: STORE, Attribute: Currency_ID for more information. NOT NULL |
Created_Time | Timestamp when the Tax type record was created. NOT NULL |
Start_Time | The start timestamp from which the Tax type is applicable. NOT NULL |
End_Time | The end timestamp after which the Tax type is not applicable. When the End_Time is NULL the Tax type is still applicable. NULL |
Is_Active | Flag attribute to indicate if the Tax_Type is still active. NOT NULL |
Comments | Internal notes used for clarifications on record content. |
Entity: LANGUAGE
Languages list
Attributes | |
---|---|
ID | PRIMARY KEY |
Name | Language name. NOT NULL UNIQUE |
Description | Language description |
Entity: CURRENCY
Currencies list
Attributes | |
---|---|
ID | PRIMARY KEY |
Name | Currency name NOT NULL UNIQUE |
Description | Currency description |
Accelerate every database schema design with powerful data models
We have already designed the data model and prepared the SQL scripts for creating the database schema objects.
© 2025 Data Model Pack · Terms of Use · Privacy