Entity-relationship diagram · drag or two-finger scroll to pan · pinch or ⌘/Ctrl-scroll to zoom · double-click to zoom in.
has
in
owns
employs
manages
linked to
groups
measured_in
spare face
documents (product target)
documents (material target)
review thread
uploaded
stocked_as
holds
moves
at
catalogs
listed by
fulfills
contains
ordered_as
received_via
into
received against
received_as
default TDS
released as
lists
component_in
component source
produced_in (product target)
produced_in (material target)
uses
receives into (destination)
issues (per-component source)
consumed_in
routes
runs
output logged by
checked_by
serviced_by
requests
quoted_as
places
fulfilled from
accepted into
sold_as
billed in
shipped_via
shipped against
shipped_as
make-to-order (manual link)
posts_to
reverses
billed_as (AR)
billed_as (AP)
taxed_at
owes (AR)
issues (AP)
billed_by
bills
auto-posted for
allocates
settled by
receives (IN)
paid (OUT)
bank/cash
withheld under
pays advance
against
advance for
effective-dated rate
accrues
per FY
USERS
bigint
id
PK
string
username
email
password_hash
boolean
enabled
ROLES
name
PERMISSIONS
USER_ROLES
user_id
FK -> users
role_id
FK -> roles
ROLE_PERMISSIONS
permission_id
FK -> permissions
REFRESH_TOKEN
FK
token_hash
timestamptz
expires_at
revoked_at
DEPARTMENT
code
description
manager_id
-> employee
active
EMPLOYEE
employee_code
first_name
last_name
phone
job_title
date
hire_date
department_id
-> users (unique)
PRODUCT_CATEGORY
UOM
MATERIAL
sku
type
RAW_MATERIAL / WIP
category_id
uom_id
PRODUCT
RAW_MATERIAL / WIP / FINISHED_GOOD
material_id
-> material (optional spare face, create-only)
WAREHOUSE
location
DESIGN_DOCUMENT
product_id
-> product (target: product XOR material)
-> material (target: product XOR material)
revision
title
status
DRAFT / IN_REVIEW / CHANGES_REQUESTED / RELEASED
submitted_by
submitted_at
approved_by
approved_at
DESIGN_DOCUMENT_REMARK
design_document_id
text
body
ATTACHMENT
owner_type
owner_id
file_name
content_type
size_bytes
checksum
storage_key
uploaded_by
MATERIAL_STOCK_LEVEL
warehouse_id
numeric
quantity_on_hand
reserved
quantity_qc_hold
MATERIAL_STOCK_MOVEMENT
movement_type
RECEIPT / ISSUE / ADJUSTMENT / PRODUCTION_ISSUE / PRODUCTION_OUTPUT / QC_RELEASE / QC_REJECT / SALES_SHIPMENT
quantity
ref_type
ref_id
lot_number
note
PRODUCT_STOCK_LEVEL
PRODUCT_STOCK_MOVEMENT
SUPPLIER
state_code
pan
is_individual
default_tds_section_id
SUPPLIER_PRODUCT
supplier_id
-> material (we buy materials)
supplier_sku
unit_price
int
lead_time_days
PURCHASE_ORDER
DRAFT / SUBMITTED / APPROVED / PARTIALLY_RECEIVED / CLOSED / CANCELLED
order_date
PURCHASE_ORDER_LINE
po_id
-> material
ordered_quantity
received_quantity
GOODS_RECEIPT
received_date
GOODS_RECEIPT_LINE
goods_receipt_id
po_line_id
-> material (derived from PO line)
TDS_SECTION
internal_code
rate_pct
rate_pct_individual
threshold_single
threshold_annual
threshold_mode
FULL / EXCESS
section_393_code
penal_rate_no_pan
BOM
version
BOM_LINE
bom_id
component_material_id
-> material (components are materials)
source_warehouse_id
-> warehouse (default component source; seeds the PO component's warehouse; nullable)
quantity_per_unit
WORK_CENTER
capacity_per_hour
PRODUCTION_ORDER
sales_order_id
destination_warehouse_id
-> warehouse (finished goods land here in QC-hold)
produced_quantity
DRAFT / SUBMITTED / APPROVED / IN_PROGRESS / PARTIALLY_COMPLETED / COMPLETED / CANCELLED
planned_start
job_number
started_by
started_at
PRODUCTION_ORDER_COMPONENT
production_order_id
-> material (component to consume)
-> warehouse (drawn from here at start; per-line)
issued at start; same material may repeat with a different warehouse (split draw)
PRODUCTION_ORDER_OPERATION
work_center_id
sequence_no
PRODUCTION_COMPLETION
QUALITY_INSPECTION
result
PASS / FAIL
notes
MAINTENANCE_ORDER
PREVENTIVE / CORRECTIVE
scheduled_for
CUSTOMER
QUOTATION
customer_id
valid_until
QUOTATION_LINE
quotation_id
SALES_ORDER
DRAFT / CONFIRMED / PARTIALLY_SHIPPED / SHIPPED / CLOSED / CANCELLED
SALES_ORDER_LINE
so_id
reserved_quantity
shipped_quantity
SALES_ORDER_MILESTONE
sequence
percentage
PENDING / INVOICED
invoice_id
DELIVERY
dispatched_date
DELIVERY_LINE
delivery_id
so_line_id
ACCOUNT
ASSET / LIABILITY / EQUITY / INCOME / EXPENSE
JOURNAL_ENTRY
entry_date
DRAFT / POSTED
reversal_of_id
-> journal_entry (self)
posted_at
JOURNAL_ENTRY_LINE
journal_entry_id
account_id
debit
credit
line_description
INVOICE
AR / AP
invoice_number
invoice_date
place_of_supply
supply_type
INTRA / INTER
DRAFT / POSTED / CANCELLED
subtotal
total_cgst
total_sgst
total_igst
rounding_adjustment
total_amount
settled
milestone_id
INVOICE_LINE
-> product (AR line; product XOR material)
-> material (AP line; product XOR material)
tax_code_id
taxable_amount
cgst_amt
sgst_amt
igst_amt
line_total
PAYMENT
IN / OUT
payment_number
payment_date
bank_account_id
-> account
tds_section_id
gross_amount
tds_amount
tds_base_amount
net_amount
PAYMENT_ALLOCATION
payment_id
allocated_amount
ADVANCE_RECEIPT
advance_number
advance_date
amount
gst_on_advance
adjusted
TAX_CODE
TAX_RATE
total_rate_pct
valid_from
valid_to
TDS_LEDGER
financial_year
cumulative_base
cumulative_tds
COMPANY_CONFIG
singleton (id = 1)
tds_194q_applicable
gst_registered