CRMconnect Azuvio · Docs

Warehouse & Logistics Department

Roles covered: Warehouse Operator · Stock Manager · Logistics Supervisor · Warehouse Manager
Primary modules: Warehouse (Goods Receipt · Goods Issue · Delivery Notes · Packing Lists · Internal Transfers · Physical Inventory · Loss & Adjustments · Returns · Reports)


Who this guide is for

Role What they do in CRMConnect
Warehouse Operator Receives goods, logs lot/serial, prepares orders for delivery
Picker / Packer Picks items from shelves, packs, measures, prepares AWB
Stock Manager Monitors balances, makes internal transfers, processes adjustments
Warehouse Manager Approves documents, configures workflows, supervises physical inventory

Warehouse operations map

INBOUND                              OUTBOUND
───────                              ────────
Goods Receipt Note (GRN)             Goods Issue Note
  ← from Purchase Order              Delivery Note
  ← manual                             → Packing List → Innoship AWB
  ← client return                   Purchase Return (to vendor)

INTERNAL MOVEMENTS                   CORRECTIONS
──────────────────                   ───────────
Internal Transfer                    Physical Inventory (Stock Take)
  from Warehouse A → Warehouse B     Loss & Adjustments

MONITORING
──────────
Warehouse History (transaction log)
Stock reports (value, movements, expiry)
Minimum stock alert

Warehouse Operator — Morning

1. Receipt orders expected today
/admin/purchase/purchase_order?delivery_status=0 — undelivered POs with today's deadline
Prepare the receiving area, check if vendor has announced the delivery.

2. Delivery notes to process
/admin/warehouse/manage_delivery — filter approval = 0 (draft/pending)
Deliveries prepared by the sales team awaiting picking and packing.

3. Packing lists to complete
/admin/warehouse/manage_packing_list — unapproved packing lists
Weighed and dimensioned parcels awaiting AWB.

Warehouse Operator — During the day

Goods arrive → Scan barcode → Open Receipt Note
  → Fill in quantities, lot, expiry → Send for approval

Sales order ready → Open Delivery Note
  → Pick from shelf → Fill in picked quantities
  → Create Packing List → Weigh + measure parcel
  → Generate AWB → Hand to courier

Warehouse Manager — Daily

  • Pending approvals — receipt notes, delivery notes, adjustments, transfers
  • Stock below minimum — products needing urgent replenishment
  • Blocked deliveries — delivery notes with insufficient stock (flag_export_warehouse = 0)
  • New returns — return requests from clients or for vendors

Commodities — catalogue management

Where: /admin/warehouse/commodity_list

Structure of a warehouse product

Field Notes
commodity_code Internal code (own SKU)
commodity_barcode Barcode for scanning
commodity_name Full name
unit_id Primary unit of measure
purchase_price Purchase price (basis for stock valuation)
warehouse_id Default warehouse for the product
guarantee Warranty in months (automatically calculates warranty expiry on receipt)
without_checking_warehouse Flag: if 1, system allows delivery even without stock

Operational flags:

Flag Meaning
can_be_sold Appears in invoices and proposals
can_be_purchased Appears in purchase orders
can_be_manufacturing Can be a component or finished product in production
can_be_inventory Tracked in stock (if 0 = service, not stocked)

Product organisation

Hierarchy: Group → Sub-group → Product → Variant (attribute)

Level Where configured Examples
Product type ware_commodity_type Raw material, Goods, Finished product
Group items_groups Electronics, Textiles, Consumables
Sub-group wh_sub_group Phones, T-shirts, Office paper
Attributes Colour, Size, Model, Serial Red/M/iPhone 15

Minimum and maximum stock per product

Where: From product record → inventory_number_min / inventory_number_max fields

Field Meaning
inventory_number_min Alert threshold — when stock falls below this value, system flags it
inventory_number_max Target level on replenishment (how much you order to get back to max)

Important: Minimum stock is informational — it doesn't automatically trigger orders. The procurement agent must check the below-minimum stock report and create RFQs manually.


Goods Receipt Note (GRN)

Where: /admin/warehouse/manage_purchase

Complete receipt flow

1. Goods physically arrive in warehouse
   ↓
2. Operator opens Receipt Note (auto-created from PO or manual)
   ↓
3. Fill in line by line:
   - Quantity received (can be < PO quantity → partial receipt)
   - Lot number (if product is lot-tracked)
   - Manufacturing date + Expiry date (for perishables)
   - Serial number (for serialised products)
   - Unit purchase price
   ↓
4. Send for approval (if approval flow is configured)
   ↓
5. Manager approves → stock increases automatically in inventory_manage
   Transaction recorded: goods_transaction_detail.status = 1 (Receipt)

Key fields on receipt line

Field Notes
commodity_code Scan barcode or select from catalogue
quantities Quantity actually received
unit_price Price from vendor invoice (basis for stock valuation)
lot_number Batch/lot number — essential for FIFO and traceability
date_manufacture Manufacturing date — mandatory for perishables
expiry_date Expiry date — appears in expiry report
serial_number Individual serial or multiple separated by comma
warehouse_id Specific warehouse (if you have multiple)
note Quality observations (e.g. "5 units damaged packaging")

Partial receipt

If vendor delivers less than the order:

  • Fill in actual quantities received (less than the PO)
  • PO remains open (delivery_status ≠ Completed)
  • Create a second receipt note when the remainder is delivered
  • System sums quantities from both notes

Goods Issue Note

Where: /admin/warehouse/goods_issue_note

When to use it

Goods Issue Note = internal stock outflow without going to an external client:

  • Production: raw materials consumed on a Manufacturing Order
  • Internal use: office consumables, departmental own use
  • CAPEX/OPEX: asset purchases or operational expenditure

Key fields

Field Notes
warehouse_id Source warehouse
project Project to which the consumption is allocated
type CAPEX (investment) or OPEX (operational expense)
department Department consuming the materials
requester Who requested the materials
description Reason for consumption

Delivery Note

Where: /admin/warehouse/manage_delivery

Creation

Method When
Automatic from client invoice If auto_create_goods_delivery = 1 in settings
Manual Add button from Warehouse module
From OmniSales On confirming an e-commerce channel order

Stock check on creation

When adding lines to the delivery note, the system automatically checks inventory_manage.inventory_number:

  • Sufficient stock → line added normally
  • Insufficient stockflag_export_warehouse = 0 → delivery note cannot be approved

The note stays in approval = 0 until stock is replenished. Procurement creates RFQ → PO → Receipt → stock increases → return to delivery note and approve.

Delivery types

type_of_delivery Use
total All items in delivery note delivered simultaneously
partial Deliver some now; a second delivery note for the rest

Packing List — Packing and shipment preparation

Where: /admin/warehouse/manage_packing_list

Packing flow

Delivery Note approved
  ↓
Picker collects items from shelf
  ↓
Create Packing List from Delivery Note:
  - Select quantities to pack per item
  - Fill in: length (cm), width (cm), height (cm), weight (kg)
  - Delivery address (pulled from order, editable)
  - Client notes (e.g. "fragile", "do not tip")
  ↓
Send for approval (if configured)
Manager approves → status → wh_ready_to_deliver
  ↓
Generate Innoship AWB
  ↓
Print AWB and label → affix to parcel
  ↓
Hand to courier → status → wh_in_transit
  ↓
Delivery confirmed → status → wh_delivered

Mandatory fields for AWB generation

Field Notes
weight Parcel weight in kg — mandatory for courier
lenght Length in cm
width Width in cm
height Height in cm
Complete delivery address Street, city, county, postcode, country

Without all dimensions filled in, the Innoship AWB generation button does not become active.

Packing statuses

Status Description
wh_ready_to_deliver Created, awaiting AWB
wh_in_transit AWB generated, handed to courier
wh_delivered Confirmed delivered by courier/Innoship

Internal Transfer

Where: /admin/warehouse/manage_internal_delivery

When to use it

  • Moving stock from central warehouse → work location
  • Relocation from WIP (Work In Progress) zone → finished goods zone
  • Rebalancing stock between two physical locations

Key fields

Field Notes
internal_delivery_code Document code (prefix ID)
from_stock_name Source warehouse ID
to_stock_name Destination warehouse ID
available_quantity Available stock in source — automatically checked
quantities Quantity to transfer

On approval:

  • Source warehouse: inventory_number -= quantity (transaction code 4)
  • Destination warehouse: inventory_number += quantity (transaction code 4)

Physical Inventory (Stock Take)

Where: /admin/warehouse/physical_inventory

Complete process

1. PLANNING
   Manager sets inventory date
   Assigns stock managers per zone/category
   Temporarily stops stock movements (recommended)

2. COUNTING
   Each stock manager opens inventory session
   Per item: scan barcode → enter physically counted quantity
   System automatically shows: book stock vs. physical stock → difference

3. REVIEW DIFFERENCES
   Manager views difference report:
   - Surplus (+ positive): more physically than in system
   - Deficit (- negative): less physically than in system
   Per line: `reason` field — explain cause (theft, damage, entry error, etc.)

4. APPROVAL
   Manager approves the inventory session
   System automatically creates adjustments for each difference
   Stock corrected to physically counted quantities

5. FINAL REPORT
   Excel export with: item, book stock, physical stock, difference, reason

Inventory session fields

Field Notes
stock_take_code Session document code
warehouse_id Inventoried warehouse
date_stock_take Physical count date
staff_id Involved stock manager(s)
quantity_stock_take Quantity counted on shelf
quantity_accounting_book Book stock in system at time of inventory
quantity_change Difference = physical − book
reason Explanation of difference

Multiple stock managers simultaneously

The system allows assigning multiple staff to the same inventory session — each can be responsible for an area or product category. Counts are aggregated in the same session.


Loss & Adjustments

Where: /admin/warehouse/loss_adjustment

Adjustment types

type When to use
loss Goods destroyed, stolen, expired, damaged
adjustment Correction of an entry error (wrong quantity on receipt)
gain Goods found in excess of book stock (previously unexplained surplus)
return Client-returned goods re-entered into stock
correction Readjustment after reconciliation with vendor

Key fields

Field Notes
type Adjustment type
reason Detailed reason (free text — important for audit)
warehouses Affected warehouse
current_number Stock before adjustment
updates_number Stock after adjustment
lot_number / expiry_date If adjusting a specific lot
status 0=pending, 1=approved, -1=rejected

Lot and Serial Number Tracking

Lot tracking (for batch products)

Activated when: you fill in lot_number at receipt

Moment What is recorded
Receipt lot_number, date_manufacture, expiry_date on receipt note line
Delivery System selects oldest lot (FIFO)
Adjustment Affected lot is specified

Automatic FIFO: when generating a delivery note, the system chooses ORDER BY id ASC on goods_receipt_detail records — first lot in, first lot out.

Serial Number tracking (for serialised products)

Activated from settings: wh_products_by_serial = 1

Moment What happens
Receipt Operator enters serial(s) — individual or multiple separated by comma
On approval Each serial → row in wh_inventory_serial_numbers with is_used = "no"
Delivery Operator scans/selects specific serial; is_used → "yes"
Return Serial becomes available again (is_used → "no")

Complete traceability: for any serial you can see: when it came in, when it went out, to which client.


Returns

Return from client (Delivery Return)

Where: /admin/warehouse/manage_order_return_receipt

Client returns goods:

  1. Create return request with reference to original order
  2. Specify returned items and quantities + reason (return_reason)
  3. Manager approves the return
  4. On approval → stock increases (return receipt note auto-generated)
  5. Return fee (fee_return_order) can be applied if configured on vendor

Return window: wh_return_request_within_x_day days from delivery (default: 30). Out-of-window returns require special approval.

Return to vendor (Purchase Return)

Where: /admin/warehouse/manage_order_return_delivery

Defective or non-conforming goods returned to vendor:

  1. Create return delivery note referencing the PO and original receipt note
  2. Specify returned items + quantities
  3. Stock decreases on approval (return delivery note)
  4. Track vendor credit through the Debit Note

Warehouse reports

Where: /admin/warehouse/manage_report

Report What it shows Export
Current stock Balance per product per warehouse, value (qty × purchase price) Excel / PDF
Stock card All transactions of a product: inflows, outflows, daily balance PDF
Movements by period Inflows + outflows + adjustments filtered by date, warehouse, type Excel
Expired products Items with past or approaching expiry_date Excel / PDF
Inventory — differences Results of physical inventory session Excel
Loss & Adjustments All adjustments by type, reason, period PDF
Stock valuation Stock × purchase price per product, warehouse total Excel
Receipt notes All inflows for period, filtered by vendor PDF / Excel
Delivery notes All outflows for period, filtered by client PDF / Excel

Essential daily report: Inventory History

Where: /admin/warehouse/warehouse_history

Complete log of all stock transactions:

  • Every inflow and outflow with timestamp, source document, operator
  • Balance before and after each movement (old_quantity)
  • Filterable by: product, warehouse, transaction type, period
  • The single source of truth for reconciliations and audits

Warehouse configuration

Where: /admin/warehouse/setting and /admin/warehouse/warehouse_mange

Critical settings

Option Value Effect
auto_create_goods_received 1 Receipt note auto-created on PO approval
auto_create_goods_delivery 1 Delivery note auto-created on client invoice generation
goods_delivery_required_po 1 PO mandatory on delivery notes
goods_receipt_required_po 1 PO mandatory on receipt notes
cancelled_invoice_reverse_inventory 1 Invoice cancellation reverses stock automatically
warehouse_show_lot_number_column 1 Show Lot Number column in documents
warehouse_show_expiry_date_column 1 Show Expiry Date column
wh_products_by_serial 1 Enable serial number tracking

Approval flow configuration

Where: wh_approval_setting — accessible from Warehouse settings

Document type Code Who approves
Receipt Note 1 Warehouse manager / chief stock manager
Delivery Note 2 Warehouse manager / logistics
Loss & Adjustments 3 Warehouse manager + CFO (for large values)
Internal Transfer 4 Warehouse manager
Packing List 5 Shipping supervisor
Return 6 Warehouse manager

Integration with other departments

Department How you interact
Sales Delivery notes are created from their invoices; confirm availability for large orders before confirmation
Procurement Create receipt notes from their POs; report quantity/quality discrepancies
Production Material consumption (Goods Issue) on Manufacturing Orders; receive finished products into stock
Finance Purchase prices from receipt notes are the basis for stock valuation in accounting

Common permissions

Ask the administrator at /admin/roles:

Permission Required for
Warehouse → View / Create General access to warehouse modules
Goods Receipt → Approve Approve receipt notes (managers)
Goods Delivery → Approve Approve delivery notes
Loss Adjustment → Approve Approve stock adjustments
Physical Inventory → Create Initiate inventory sessions
Warehouse Reports → View Report access

Quick reference

Workflows: Warehouse Inbound → Outbound · OmniSales Fulfillment · Purchase to Pay · Manufacturing Order · Full Commercial Cycle

Modules: Warehouses · Warehouse Settings · Commodities · Goods Receipt Note · Goods Issue Note · Delivery Notes · Packing Lists · Internal Transfers · Physical Inventory · Loss & Adjustments · Purchase Returns · Delivery Returns · Inventory History · Warehouse Reports

← Back to Department Guides

Tip

Warehouse History is the fastest investigation tool for any stock discrepancy — filter by commodity and date range to see the exact chain of movements, who created each document, and when. A 2-minute filter beats an hour of manual document tracing.

Note

Physical inventory counts are most accurate as rolling cycle counts per warehouse zone rather than a single annual full shutdown. Discrepancies are caught within weeks and remain traceable; annual errors accumulate for 12 months before anyone knows.