Requirements - eoperez/toyoXpress GitHub Wiki
User Stories
- As an owner I should be able to configure my store branding, add new users, associate roles, manage payment methods and review all available reports.
- As store manager I should be able to manage my inventory, apply prices based, generate barcode labels, and locate any item in the store using a shelf label.
- As store employee I should be able to find an item to an order and complete a sales operation, including store closing.
High level requirements
- System must authenticate users and authorized based on: A) owner B) store manager C) store employee. Users could have more than one role.
- System should have a settings page to configure as minimum: languages, store branding and payment methods.
- Store manager must be able to manage "categories" to classify inventory items. Categories must have a name and visible id.
- Store manager must be able to manage
- Store manager must be able to manage inventory items. Items must have:
- Number (Unique/indexed - Required)
- Name (text - Required)
- Description (long text)
- Category (from categories)
- Cost (currency - Required)
- Price table: A) Discount % (number), B) Suggested price (currency) C) Margin (number) D) Default Price? (boolean) - only one price line can be selected as default.
- Tax Table:
-
Store manager should be able to import items using a tab delimited flat file like:
NUMBER NAME DESC CAT COST
-
Store manager should be able list all items and search by number, name or category.
-
Store manager should be able to generate barcode label for selected item.
-
Store employee must be able to scan or find an item using a number or name - if item has no price table it should not appear in search results
-
Store employee should be able to select price from price list if item's price table has more than one price listed.
- if user is also the owner, he/she should be able to edit the price for that sales instance but price can't be lower to cost at any given point.
- Order/Sales total and taxes will be updated automatically.
- Store employee must be able to enter payment amount (currency) and select payment method from an option list
- if payment method is cash it should present "amount given" and the difference between amount given and Order/Sales. Order should not be processed if the there is a negative difference.
- Store employee should be able to find existing orders/sales. If the order exists: he/she should be able to mark it as refundable or print the receipt again.
Use Cases
Any System User
All Users must be authenticated before seen any DMS option:
Wireframe 1 - Login / Welcome Page
Owner
Wireframe 2 - Management Menu
Will have all menu options within management tab from there he/she will have access to User:
- 0.1 Add User
Precondition: User is already logged with Owner permissions
- Owner clicks Users form management menu.
- Owner sees a list of existing users
- Clicks add User
- Owner fills all necessary data in the form.
- Owner clicks save
- 0.2 Apply permissions
Precondition: User is logged and completed 1-3 from Add User workflow.
- From edit or add user screen, owners select one or more defined roles.
- Owner clicks save
- 0.3 Edit System Settings
Precondition: User is already logged with Owner permissions
- Owner clicks System Settings form management menu.
- Owner sees all available settings in a form
- Owner can change or review any setting.
- Owner clicks save
(see wireframe 2)
Store manager
Store Manager will have access to the management from there he/she will have access to different management capabilities:
Working with Items categories:
- 1.1 View all items categories
- 1.2 Add a category
- 1.3 Edit a category
- 1.4 Delete one or more categories
- 1.5 Find categories
Working with inventory items:
- 2.1 View all items in inventory
- 2.2 Import items to inventory
- 2.3 Add an item to inventory
- 2.4 Edit an item in inventory
- 2.5 Delete one or more items in inventory
- 2.6 Find items in inventory
Store Employee
Store employee will be able to perform sales, owners and store managers will also have access to POS module.
Wireframe 3 - Point Of Sales
- 3.1 Find/Add items to sale
- 3.2 Update Item Sales Price
- 3.3 Add items to sale
- 3.4 Payment