A warehouse is any place you hold stock: a main store, a shop, a vehicle in transit or a virtual location. Inside a warehouse you can add zones (areas) and bins (exact shelf locations), print bin labels, upload a banner photo and see a live floor map.
Warehouses are also the unit of access in SolaStock: scoped team members only see the warehouses assigned to them, so every stock figure, document and report follows the warehouse list.
Where to find it
- Sidebar: Catalog → Warehouses. URL
/inventory/warehouses. - New warehouse: New warehouse (top-right) —
/inventory/warehouses/new. - A warehouse: click its Code —
/inventory/warehouses/{id}; edit at/inventory/warehouses/{id}/edit. - Breadcrumbs: Warehouses → warehouse name.
| Action | Permission | Who has it by default |
|---|---|---|
| View warehouses, zones, bins | View warehouses, zones, bins | Owner, SolaStock Administrator, all scoped roles, organization Managers/Members/Viewers. Not Accountants. |
| Create / edit warehouses, banner images | Create / edit warehouses, zones, bins | Owner, SolaStock Administrator, organization Managers/Members |
| Add zones and bins | Manage zones and bins in assigned warehouses (included in the permission above) | Also Inventory Manager and Warehouse Manager, in their assigned warehouses |
Without manage rights, New warehouse and Edit warehouse are greyed out ("You do not have permission for this action." / "You do not have permission to manage this warehouse.").
Structure
| Level | What it is | Rules | Example |
|---|---|---|---|
| Warehouse | A stock-holding location. | Code up to 50 characters, unique in your organization. | Dubai Main (DXB-MAIN) |
| Zone | An area inside the warehouse. | Code unique within the warehouse. | A — Fast movers |
| Bin | An exact location inside a zone. | Code unique within the warehouse; belongs to one zone. | A-01 (Storage) |
Stock balances are kept per item, warehouse and, when used, bin. Bins are optional.
Warehouse types: Warehouse (standard), Retail, Transit, Virtual. The type is a label for your own use.
Bin types: Receiving, Storage (default), Picking, Packing, Shipping, Quarantine, Damaged. Stock in a Quarantine or Damaged bin counts as on hand but not sellable (see Current Stock).
Screen tour — the warehouse list
Header: Warehouses and New warehouse (right).
| Column | Meaning |
|---|---|
| (banner) | Thumbnail of the primary banner image, or 🏬. |
| Code | Link to the warehouse page. |
| Name | Warehouse name. Rows are sorted by name. |
| Type | warehouse, retail, transit or virtual. |
| Status | Active or Inactive. |
Scoped members see only their assigned warehouses. With none: No warehouses — "Create your first warehouse."
Create a warehouse
-
Catalog → Warehouses → New warehouse.
-
Basic information — "What this location is and where it sits."
Field Required Rules / defaults Notes Name Yes Up to 191 characters. e.g. Main Warehouse Code Yes Up to 50 characters; "Warehouse code must be unique within the organization." Short code, e.g. WH-MAIN. Used on bin labels. Type Yes Defaults to Warehouse. Status — Active ticked. Address line No Street / building City, Country No -
Operations — "Capacity and structure." Optional Capacity (units) (0 or more). "Zones and bins are managed from the warehouse detail page after it is created."
-
Click Create warehouse (top-right; Cancel returns to the list). You see "Warehouse created." and the warehouse page opens. Errors show under Please fix the following:; a general failure shows "Could not save the warehouse."
Right-hand panel: Warehouse banner ("Save the warehouse first, then add a private banner photo from its Media tab."), Setup checklist (Name & code, Type selected, Ready to save) and Preview (name, code, Type, Status, City, Capacity).
A new warehouse is not added to anyone's scope automatically. Assign it on Team access.
Your default warehouse
When SolaStock is set up for a new organization it creates one warehouse for you, Main Warehouse (code MAIN, type Warehouse, active), and remembers it as the organization's default warehouse. If you create the very first warehouse yourself, that one becomes the default. An organization that already has warehouses is never given an extra one, and a warehouse that was deliberately deactivated or deleted is not recreated.
The default warehouse is only a convenience: the Warehouse field on new purchase orders, goods receipts, receiving-request approvals, fulfillment approvals, cash-dispatch approvals and internal consumption issues is pre-selected with it, but only when you are allowed to use it (your assigned warehouses, active only). If you are not assigned to it, or no default exists, the field stays empty and you choose. A default that you are not allowed to use is not even revealed to you. The default does not give anybody access; that is still done on Team access.
Plan limits: past your plan's warehouse limit you see "Your plan limit for this resource has been reached. Upgrade to add more." Existing warehouses stay usable.
Edit or deactivate a warehouse
- Open the warehouse and click Edit warehouse (top-right).
- Change fields and click Save changes — "Warehouse updated."
- To retire a location, untick Active. Keep it rather than deleting: its history stays intact. Warehouses cannot be deleted from the screen.
The warehouse page
Banner: the primary image (or No warehouse image) with name, code and type over it. Header: name, Active/Inactive badge, Edit warehouse.
| Tab | What it shows / does |
|---|---|
| Overview | Code, Type, Capacity, Low-stock items — the number of stock rows in this warehouse with 0 or less available. |
| Zones (n) | Add form and table Code, Name, Status. Empty: No zones — "Create a zone to organize this warehouse into operational areas." |
| Bins (n) | Add form, Print bin labels, table Code, Zone (shown as the zone's internal number, e.g. #3), Bin type, Capacity, Status. Empty: No bins — "Add bins to track stock at a precise warehouse location." |
| Stock | Every stock row held here: Item, On hand, Available, Value. Empty: No stock — "Stock received into this warehouse will appear here." |
| Movements | The last 20 movements: Date, Item, Direction (Inbound / Outbound), Quantity. Empty: No recent movements. |
| Media | Banner images. |
| Floor map | Bins by zone, coloured by status. |
| Audit | Placeholder Audit timeline — "Warehouse change events will appear here." |
Not found or outside your scope: Warehouse unavailable — "This warehouse could not be loaded. It may not exist or you may not have access to it."
Add a zone
- Open Zones. (The form only shows if you can manage zones and bins.)
- Enter Zone code and Zone name (both required).
- Click Add zone — "Zone created." Duplicate code: "Zone code must be unique within the warehouse." Other failures: "The zone could not be created."
Add a bin
- Create at least one zone first.
- Open Bins and fill: Select a zone… (required), Bin code (required), Bin type (default Storage), Capacity (optional).
- Click Add bin — "Bin created." Duplicate code: "Bin code must be unique within the warehouse." Other failures: "The bin could not be created."
A zone or bin that still holds stock cannot be deactivated ("Cannot deactivate a zone that still holds stock." / "Cannot deactivate a bin that still holds stock.").
Print bin labels
- On Bins, click Print bin labels. You see "Bin labels generated." (or "Bin labels could not be generated.").
- A label sheet appears under the table, one card per bin: WAREHOUSE / BIN code, zone and bin type, the barcode text and a QR code.
- Print the page from your browser.
The label barcode text is warehouse code-bin code (for example DXB-MAIN-A-01). The Scanner finds bins by their bin code (A-01), so if scanning the label returns No match, type the bin code instead.
Banner images (Media tab)
- Click Upload banner. "JPG, PNG, or WEBP · up to 5 MB each · stored privately · ★ sets the banner image."
- Results: "Image uploaded." / ":count images uploaded."; rejected: ":file: only JPG, PNG, or WEBP files are allowed.", ":file: the image must be 5 MB or smaller.", ":file could not be uploaded."
- ★ sets the banner ("The primary warehouse image could not be changed." on failure).
- Delete image asks for confirmation ("The warehouse image could not be removed." on failure).
Images are only shown to people who can see the warehouse. Without manage rights you see "No image has been added for this warehouse."
Floor map
Zones are drawn as groups of bin tiles; bins without a zone appear under Without a zone. Colours:
| Status | Rule |
|---|---|
| Blocked | Bin type Quarantine or Damaged. |
| Empty | Nothing on hand. |
| Full | On hand reaches the bin's capacity. |
| Near capacity | On hand at 80% of capacity or more. |
| Occupied | Holds stock (or no capacity set). |
Click a tile to see Bin code, Status, Type and Capacity. With no bins: No bins defined yet — "Add zones and bins to see the live floor map."
Statuses
| Status | Meaning | What you can do |
|---|---|---|
| Active | In use. | Choose it on documents, receive, ship, transfer. |
| Inactive | Retired. | History stays; reactivate by editing. |
Warehouse scope
- Owner and SolaStock Administrator: every warehouse, always.
- Everyone else (Inventory Manager, Warehouse Manager, Warehouse Operator, Inventory Viewer, and organization Managers/Members/Viewers/Accountants): only warehouses assigned on Team access. With none, they see no warehouses, no stock and no documents.
- Scope applies everywhere: this list, Current Stock, Stock Ledger, documents, Dashboard, reports, lots and serials, and images.
- A transfer is only visible and allowed when both warehouses are assigned to you.
- Opening or posting anything elsewhere fails with "You are not assigned to this warehouse."
Permissions
| Action | Owner / Admin | Org Manager / Member | Inventory Manager, Warehouse Manager | Warehouse Operator, Inventory Viewer, Org Viewer |
|---|---|---|---|---|
| View list and pages | All | Assigned | Assigned | Assigned |
| Create / edit warehouse | Yes | Yes | No | No |
| Add zones and bins | Yes | Yes | Yes (assigned) | No |
| Upload banner | Yes | Yes | No | No |
| Print bin labels, floor map | Yes | Yes | Yes | Yes |
Worked examples
Example 1 — A small shop (quick)
Omar Haddad creates Al Barsha Shop (BRS-01, type Retail, city Dubai, country UAE), no zones. Create warehouse → "Warehouse created." On Team access he assigns it to Sara Khan.
Example 2 — Structuring Dubai Main (full)
- Omar creates Dubai Main (
DXB-MAIN, Warehouse, capacity 50,000). - Zones:
AFast movers,RReceiving,QQuarantine. - Bins:
A-01…A-20(Storage, capacity 200 each),R-01(Receiving),Q-01(Quarantine). - Print bin labels produces 22 labels, e.g.
DXB-MAIN / A-01. - He assigns Dubai Main to Khalid (Warehouse Manager), who can now add bin
A-21himself. - After opening stock, the Floor map shows
A-01Near capacity (170 of 200),A-02Occupied,Q-01Blocked, the rest Empty. Three damaged phones moved toQ-01show in Current Stock as Quarantined with Sellable 0.
How it connects
- Every stock document chooses a warehouse (and optional bin) — see Opening Stock, Adjustments, Transfers, Purchasing.
- Balances by warehouse: Current Stock; history: Stock Ledger.
- Access: Team access. Reorder rules per warehouse: Settings.
Tips & common problems
| Problem | Cause | Fix |
|---|---|---|
| Zone/bin code already used. | Codes are unique within the warehouse. | Pick another code. |
| "Selected bin does not belong to the movement warehouse." | Bin from another warehouse on a document. | Pick a bin of the document's warehouse. |
| Add bin form missing. | No permission to manage zones and bins. | Ask an administrator. |
| Can't add a bin. | No zone exists yet. | Add a zone first. |
| A teammate can't see the new warehouse. | New warehouses aren't assigned automatically. | Assign it on Team access. |
| Scanning a bin label finds nothing. | The label text includes the warehouse code. | Type the bin code in the Scanner. |