Reference
How the UI pattern works (in code)
-
Routes
Registered in
routes/fragments/tenant-livewire.phpunder prefixworkspace/{org}(seeroutes/web.php). Route names start withtenant.(e.g.tenant.sales.orders.index). -
List screen
Livewire
*Indexcomponent loads rows from the tenant database, paginates, and renders*-index.blade.phpwith a table. Primary action: New … links to the create route. Row actions: Edit, sometimes Delete or shortcuts (e.g. Invoice). -
Create screen
Livewire
*Formwith no ID in the URL (/…/create).save()inserts header + line rows in a DB transaction, then redirects (usually to edit or index). -
Edit screen
Same
*Formmounted with a model from the URL (/…/{id}/edit).save()updates header, often replaces line items, and may run sync services (stock, GL). -
Menu
Sidebar links are defined in
resources/views/layouts/tenant.blade.phpusingtenant_workspace_route()and$wcan(WorkspacePermission::…). -
Data
Models in
app/Models/Tenant/useconnection = 'tenant'(one database per organization). Schema:database/migrations/tenant/.
?sales_order=5 on sales invoice create, ?goods_receipt=3 on purchase invoice create, ?purchase_invoice= on vendor payment.Workspace
Dashboard
Sidebar: Workspace → Dashboard
KPI cards and charts; not a document list.
- List (index)
/workspace/{your-company-slug}- Landing page after you open a workspace. Counts open orders and low-stock products.
- Database tables (tenant DB)
- Reads sales_orders, products, customers, sales_invoices, etc.
- Code (routes & Livewire)
- tenant.dashboard → Tenant\Dashboard
- Requires workspace.dashboard permission.
Team directory
Sidebar: Workspace → Team
Read-only list of members and roles.
- List (index)
/workspace/{your-company-slug}/team- Table of members; no create/edit here — use Organization settings to invite.
- Database tables (tenant DB)
- Central users + organization membership (not tenant tables)
- Code (routes & Livewire)
- tenant.team.index → OrganizationTeamDirectory
My referral codes
Sidebar: Workspace → My referral codes
Personal referral codes when enabled.
- List (index)
/workspace/{your-company-slug}/account/referrals- List only; creation may be admin-driven.
- Database tables (tenant DB)
- Central referral tables
- Code (routes & Livewire)
- tenant.account.referrals → ReferralCodeIndex
Plan & billing
Sidebar: Workspace → Plan & billing
Subscription dates, plan grid (Upgrade/Renew/Switch), Razorpay checkout, payment PDFs (owner).
- List (index)
/workspace/{your-company-slug}/billing- Tabs: Subscription (active plan + renew selector), Plans/Change plan (pricing cards), History (transactions + invoice PDF).
- Database tables (tenant DB)
- Central subscriptions, packages, payments
- Code (routes & Livewire)
- tenant.billing → OrganizationBilling
- Requires workspace.billing.
- Only org owner can pay; members are view-only.
- See docs/PLATFORM_BILLING.md for webhooks and cron.
Organization & team settings
Sidebar: Workspace → Organization & team
Three tabs: Profile (legal, GST seller, logo, theme), Team (invite, pending, members), Roles & access (custom roles + permissions).
- List (index)
/workspace/{your-company-slug}/settings/organization- Database tables (tenant DB)
- Central organization + workspace role permissions
- Code (routes & Livewire)
- tenant.settings.organization → OrganizationSettings
- Requires workspace.organization.
- Team sidebar item is read-only directory — invites are here.
- See docs/PLATFORM_ORGANIZATIONS.md.
Activity log
Sidebar: Workspace → Activity log
Audit-style timeline of workspace actions.
- List (index)
/workspace/{your-company-slug}/activity- Read-only paginated log; filter by user/action. No create or edit.
- Database tables (tenant DB)
- tenant_activity_logs
- Code (routes & Livewire)
- tenant.activity.index → ActivityLogIndex
Support tickets
Sidebar: Workspace → Support
Create tickets and track replies.
- List (index)
/workspace/{your-company-slug}/support/tickets- Lists your tickets; New opens create form.
- Create
/workspace/{your-company-slug}/support/tickets/create- Submit subject and body; attachments optional.
- Edit
/workspace/{your-company-slug}/support/tickets/{id}- Ticket show page — add replies; not a classic edit form.
- Database tables (tenant DB)
- Central support tickets + replies
- Code (routes & Livewire)
- tenant.support.tickets.* → Support\TicketIndex, TicketCreate, TicketShow
Account profile
Sidebar: Footer avatar → Account profile
Your name, password, 2FA.
- List (index)
/workspace/{your-company-slug}/account/profile- Edit
/workspace/{your-company-slug}/account/profile- Single profile form; save updates auth user.
- Database tables (tenant DB)
- Central user record
- Code (routes & Livewire)
- tenant.account.profile → WorkspaceAccountProfile
Inventory
Inventory overview
Sidebar: Inventory → Overview
Dashboard and shortcuts.
- List (index)
/workspace/{your-company-slug}/inventory- Dashboard only.
- Database tables (tenant DB)
- Aggregates stock_balances, products
- Code (routes & Livewire)
- tenant.inventory.index → InventoryDashboard
Stock availability
Sidebar: Inventory → Stock availability
On-hand and available qty by product/warehouse.
- List (index)
/workspace/{your-company-slug}/inventory/availability- Read-only grid; no create. Use before confirming sales orders.
- Database tables (tenant DB)
- stock_balances, products, warehouses
- Code (routes & Livewire)
- tenant.inventory.availability.index → StockAvailabilityIndex
Categories
Sidebar: Inventory → Categories
Document screens for Categories.
- List (index)
/workspace/{your-company-slug}/inventory/categories- List shows: Name, parent. New button → create.
- Create
/workspace/{your-company-slug}/inventory/categories/create- New category.
- Edit
/workspace/{your-company-slug}/inventory/categories/{id}/edit- Edit name/parent.
- Database tables (tenant DB)
- product_categories
- Code (routes & Livewire)
- tenant.inventory.categories.* → ProductCategoryIndex / ProductCategoryForm
Warehouses
Sidebar: Inventory → Warehouses
Document screens for Warehouses.
- List (index)
/workspace/{your-company-slug}/inventory/warehouses- List shows: Code, name, address. New button → create.
- Create
/workspace/{your-company-slug}/inventory/warehouses/create- New warehouse.
- Edit
/workspace/{your-company-slug}/inventory/warehouses/{id}/edit- Update warehouse.
- Database tables (tenant DB)
- warehouses
- Code (routes & Livewire)
- tenant.inventory.warehouses.* → WarehouseIndex / WarehouseForm
Bins
Sidebar: Inventory → Bins
Document screens for Bins.
- List (index)
/workspace/{your-company-slug}/inventory/bins- List shows: Bin code, warehouse. New button → create.
- Create
/workspace/{your-company-slug}/inventory/bins/create- New bin.
- Edit
/workspace/{your-company-slug}/inventory/bins/{id}/edit- Edit bin.
- Database tables (tenant DB)
- warehouse_bins
- Code (routes & Livewire)
- tenant.inventory.bins.* → WarehouseBinIndex / WarehouseBinForm
Products
Sidebar: Inventory → Products
Document screens for Products.
- List (index)
/workspace/{your-company-slug}/inventory/products- List shows: SKU, name, category, reorder. New button → create.
- Create
/workspace/{your-company-slug}/inventory/products/create- New product.
- Edit
/workspace/{your-company-slug}/inventory/products/{id}/edit- Edit SKU, UoM, warehouse defaults.
- Database tables (tenant DB)
- products
- Code (routes & Livewire)
- tenant.inventory.products.* → ProductIndex / ProductForm
Stock movements
Sidebar: Inventory → Stock movements
Read-only ledger of all qty changes.
- List (index)
/workspace/{your-company-slug}/inventory/movements- Historical list; manual create for adjustments-in-motion.
- Create
/workspace/{your-company-slug}/inventory/movements/create- Manual movement posts in/out qty.
- Edit
/workspace/{your-company-slug}/inventory/movements/{id}/edit- Edit draft movements if allowed.
- Database tables (tenant DB)
- stock_movements
- Code (routes & Livewire)
- tenant.inventory.movements.* → StockMovementIndex / StockMovementForm
Goods receipts (GRN)
Sidebar: Inventory → Goods Receipts
Document screens for Goods receipts (GRN).
- List (index)
/workspace/{your-company-slug}/inventory/goods-receipts- List shows: GRN number, vendor, date, status. New button → create.
- Create
/workspace/{your-company-slug}/inventory/goods-receipts/create- New GRN (often from PO).
- Edit
/workspace/{your-company-slug}/inventory/goods-receipts/{id}/edit- Receive lines, post to stock.
- Database tables (tenant DB)
- goods_receipts + goods_receipt_items
- Code (routes & Livewire)
- tenant.inventory.goods-receipts.* → GoodsReceiptIndex / GoodsReceiptForm
- Also linked under Purchase menu.
- Purchase invoice create accepts ?goods_receipt=.
Stock transfers
Sidebar: Inventory → Transfers
Document screens for Stock transfers.
- List (index)
/workspace/{your-company-slug}/inventory/transfers- List shows: Number, from/to warehouse. New button → create.
- Create
/workspace/{your-company-slug}/inventory/transfers/create- New transfer.
- Edit
/workspace/{your-company-slug}/inventory/transfers/{id}/edit- Add lines, dispatch, then receive.
- Database tables (tenant DB)
- stock_transfers + stock_transfer_items
- Code (routes & Livewire)
- tenant.inventory.transfers.* → StockTransferIndex / StockTransferForm
Stock adjustments
Sidebar: Inventory → Adjustments
Document screens for Stock adjustments.
- List (index)
/workspace/{your-company-slug}/inventory/adjustments- List shows: Number, warehouse, reason. New button → create.
- Create
/workspace/{your-company-slug}/inventory/adjustments/create- New adjustment.
- Edit
/workspace/{your-company-slug}/inventory/adjustments/{id}/edit- Set counted qty, post variance.
- Database tables (tenant DB)
- stock_adjustments + stock_adjustment_items
- Code (routes & Livewire)
- tenant.inventory.adjustments.* → StockAdjustmentIndex / StockAdjustmentForm
Physical counts
Sidebar: Inventory → Physical Counts
Document screens for Physical counts.
- List (index)
/workspace/{your-company-slug}/inventory/physical-counts- List shows: Count session, warehouse. New button → create.
- Create
/workspace/{your-company-slug}/inventory/physical-counts/create- New count.
- Edit
/workspace/{your-company-slug}/inventory/physical-counts/{id}/edit- Enter counts, post variances.
- Database tables (tenant DB)
- physical_counts + physical_count_items
- Code (routes & Livewire)
- tenant.inventory.physical-counts.* → PhysicalCountIndex / PhysicalCountForm
Inventory reports
Sidebar: Inventory → Reports
Read-only analytics hub.
- List (index)
/workspace/{your-company-slug}/inventory/reports- Hub of 11 reports: low stock, valuation, ABC, near expiry, layer ageing, cost layers, movement/GRN/transfer/adjustment registers, fast/slow movers.
- Database tables (tenant DB)
- stock_balances, stock_movements, products
- Code (routes & Livewire)
- tenant.inventory.reports.* → InventoryReportsIndex / InventoryReportViewer
Sales
Sales overview
Sidebar: Sales → Overview
Order-to-cash KPIs and pipeline.
- List (index)
/workspace/{your-company-slug}/sales- Dashboard only.
- Database tables (tenant DB)
- Aggregates quotations, orders, invoices
- Code (routes & Livewire)
- tenant.sales.index → SalesDashboard
Customers
Sidebar: Sales → Customers
Document screens for Customers.
- List (index)
/workspace/{your-company-slug}/sales/customers- List shows: Name, email, GSTIN. New button → create.
- Create
/workspace/{your-company-slug}/sales/customers/create- New customer.
- Edit
/workspace/{your-company-slug}/sales/customers/{id}/edit- Edit master & addresses.
- Database tables (tenant DB)
- customers
- Code (routes & Livewire)
- tenant.sales.customers.* → CustomerIndex / CustomerForm
Price lists
Sidebar: Sales → Price Lists
Document screens for Price lists.
- List (index)
/workspace/{your-company-slug}/sales/price-lists- List shows: Customer, product, qty tiers, validity. New button → create.
- Create
/workspace/{your-company-slug}/sales/price-lists/create- New price list.
- Edit
/workspace/{your-company-slug}/sales/price-lists/{id}/edit- Tiered contract pricing; auto-fills SO/quote lines.
- Database tables (tenant DB)
- customer_price_lists
- Code (routes & Livewire)
- tenant.sales.price-lists.* → CustomerPriceListIndex / CustomerPriceListForm
Quotations
Sidebar: Sales → Quotations
Document screens for Quotations.
- List (index)
/workspace/{your-company-slug}/sales/quotations- List shows: Number, customer, total, status. New button → create.
- Create
/workspace/{your-company-slug}/sales/quotations/create- New quote.
- Edit
/workspace/{your-company-slug}/sales/quotations/{id}/edit- Edit lines; Send PDF; Convert wizard → SO; mark lost.
- Database tables (tenant DB)
- quotations + quotation_items
- Code (routes & Livewire)
- tenant.sales.quotations.* → QuotationIndex / QuotationForm
Convert quotation
Sidebar: Sales → Convert
Document screens for Convert quotation.
- List (index)
/workspace/{your-company-slug}/sales/quotations/{id}/convert- List shows: SO warehouse, confirm status. New button → create.
- Create
/workspace/{your-company-slug}/sales/quotations/{id}/convert/create- From quote list Convert.
- Edit
/workspace/{your-company-slug}/sales/quotations/{id}/convert/{id}/edit- Creates SO, marks quote accepted.
- Database tables (tenant DB)
- —
- Code (routes & Livewire)
- tenant.sales.quotations.* → QuotationConvertIndex / QuotationConvertForm
Delivery notes
Sidebar: Sales → Delivery Notes
Document screens for Delivery notes.
- List (index)
/workspace/{your-company-slug}/sales/delivery-notes- List shows: DN #, SO, warehouse, status. New button → create.
- Create
/workspace/{your-company-slug}/sales/delivery-notes/create- New from SO.
- Edit
/workspace/{your-company-slug}/sales/delivery-notes/{id}/edit- Draft → dispatch (stock OUT).
- Database tables (tenant DB)
- delivery_notes + delivery_note_items
- Code (routes & Livewire)
- tenant.sales.delivery-notes.* → DeliveryNoteIndex / DeliveryNoteForm
Sales orders
Sidebar: Sales → Sales orders
Firm customer commitment; reserves stock when confirmed.
- List (index)
/workspace/{your-company-slug}/sales/orders- Columns: Number, Customer, Date, Status, Total. Actions: Edit, Invoice (→ create invoice with ?sales_order=), Delete.
- Create
/workspace/{your-company-slug}/sales/orders/create- Fill header (customer, warehouse, dates, status) and line items. Save runs SalesOrderReservationSync for confirmed orders.
- Edit
/workspace/{your-company-slug}/sales/orders/{id}/edit- Same form; after save you stay on edit with Next steps panel (stock check, create invoice).
- Database tables (tenant DB)
- sales_orders + sales_order_items
- Code (routes & Livewire)
- tenant.sales.orders.* → SalesOrderIndex / SalesOrderForm
- Save redirects to edit, not index.
- Confirmed status reserves stock via stock_movements.
Sales invoices
Sidebar: Sales → Sales invoices
Customer billing (AR): GST tax invoice or non-GST bill (same type, line Tax %).
- List (index)
/workspace/{your-company-slug}/sales/invoices- Lists invoices with balance, type filter (tax invoice, proforma, credit note); actions: PDF, Edit, Convert proforma, Remind.
- Create
/workspace/{your-company-slug}/sales/invoices/create- Header: invoice type, customer, GST block (supply type, place of supply, GSTIN). Lines: HSN/SAC, Tax % (0 = non-GST). Optional ?sales_order= pre-fill.
- Edit
/workspace/{your-company-slug}/sales/invoices/{id}/edit- Update draft; sent/posted posts GL (AR, revenue, GST when tax > 0). Tax invoice only: Generate IRN / e-way when seller + GSP configured.
- Database tables (tenant DB)
- sales_invoices + sales_invoice_items
- Code (routes & Livewire)
- tenant.sales.invoices.* → SalesInvoiceIndex / SalesInvoiceForm
- GST invoice: Tax % > 0 on lines; fill GST & addresses.
- Non-GST bill: Tax % = 0 on all lines; IRN not required.
- Proforma / credit note / debit note are separate types, not GST vs non-GST.
- CSV export on index.
Payments (receipts)
Sidebar: Sales → Receipts
Document screens for Payments (receipts).
- List (index)
/workspace/{your-company-slug}/sales/receipts- List shows: Receipt #, customer, date, amount. New button → create.
- Create
/workspace/{your-company-slug}/sales/receipts/create- Record payment.
- Edit
/workspace/{your-company-slug}/sales/receipts/{id}/edit- Allocate amounts to open invoices.
- Database tables (tenant DB)
- payment_receipts + payment_allocations
- Code (routes & Livewire)
- tenant.sales.receipts.* → PaymentReceiptIndex / PaymentReceiptForm
Bank deposit match
Sidebar: Sales → Bank match
Match bank lines to receipts.
- List (index)
/workspace/{your-company-slug}/sales/bank-deposit-match- Auto-match and manual link UI.
- Database tables (tenant DB)
- bank_statements + payment_receipts
- Code (routes & Livewire)
- tenant.sales.bank-deposit-match → SalesBankDepositMatchIndex
Recurring invoices
Sidebar: Sales → Recurring
Document screens for Recurring invoices.
- List (index)
/workspace/{your-company-slug}/sales/invoices/recurring- List shows: Customer, schedule, next run. New button → create.
- Create
/workspace/{your-company-slug}/sales/invoices/recurring/create- New template.
- Edit
/workspace/{your-company-slug}/sales/invoices/recurring/{id}/edit- Edit lines and frequency.
- Database tables (tenant DB)
- recurring_sales_invoices
- Code (routes & Livewire)
- tenant.sales.invoices.* → RecurringSalesInvoiceIndex / RecurringSalesInvoiceForm
Bulk invoicing
Sidebar: Sales → Bulk invoicing
Batch invoice generation.
- List (index)
/workspace/{your-company-slug}/sales/invoices/bulk- Wizard — no typical edit.
- Database tables (tenant DB)
- sales_invoices
- Code (routes & Livewire)
- tenant.sales.invoices.bulk → SalesBulkInvoiceIndex
POS terminal
Sidebar: Sales → POS
Counter checkout.
- List (index)
/workspace/{your-company-slug}/sales/pos/terminal- Single-page checkout flow.
- Database tables (tenant DB)
- sales_invoices + payment_receipts
- Code (routes & Livewire)
- tenant.sales.pos.terminal → PosTerminal
Commissions report
Sidebar: Sales → Commissions
Commission accrual report.
- List (index)
/workspace/{your-company-slug}/sales/commissions/report- Report only.
- Database tables (tenant DB)
- sales_commission_rules
- Code (routes & Livewire)
- tenant.sales.commissions.report
Sales returns (RMA)
Sidebar: Sales → Returns
Document screens for Sales returns (RMA).
- List (index)
/workspace/{your-company-slug}/sales/returns- List shows: Return #, customer, invoice. New button → create.
- Create
/workspace/{your-company-slug}/sales/returns/create- New return.
- Edit
/workspace/{your-company-slug}/sales/returns/{id}/edit- Lines, restock, credit note flow.
- Database tables (tenant DB)
- sales_returns + sales_return_items
- Code (routes & Livewire)
- tenant.sales.returns.* → SalesReturnIndex / SalesReturnForm
Purchase
Purchase overview
Sidebar: Purchase → Overview
Procurement KPIs.
- List (index)
/workspace/{your-company-slug}/purchase- Dashboard only.
- Database tables (tenant DB)
- Aggregates POs, invoices
- Code (routes & Livewire)
- tenant.purchase.index → PurchaseDashboard
Vendors
Sidebar: Purchase → Vendors
Document screens for Vendors.
- List (index)
/workspace/{your-company-slug}/purchase/vendors- List shows: Name, status, category. New button → create.
- Create
/workspace/{your-company-slug}/purchase/vendors/create- New vendor.
- Edit
/workspace/{your-company-slug}/purchase/vendors/{id}/edit- Edit master; approve for PO use.
- Database tables (tenant DB)
- vendors (+ contacts, addresses, banks)
- Code (routes & Livewire)
- tenant.purchase.vendors.* → VendorIndex / VendorForm
Approval thresholds
Sidebar: Purchase → Approval thresholds
PR/PO/PI amount tiers.
- List (index)
/workspace/{your-company-slug}/purchase/approval-settings- Settings form — tier table per document type.
- Database tables (tenant DB)
- purchase_approval_settings
- Code (routes & Livewire)
- tenant.purchase.approval-settings → PurchaseApprovalSettingsIndex
Purchase requisitions
Sidebar: Purchase → Requisitions
Document screens for Purchase requisitions.
- List (index)
/workspace/{your-company-slug}/purchase/requisitions- List shows: Req #, requester, status. New button → create.
- Create
/workspace/{your-company-slug}/purchase/requisitions/create- New requisition.
- Edit
/workspace/{your-company-slug}/purchase/requisitions/{id}/edit- Submit for approval.
- Database tables (tenant DB)
- purchase_requisitions + items
- Code (routes & Livewire)
- tenant.purchase.requisitions.* → PurchaseRequisitionIndex / PurchaseRequisitionForm
RFQs
Sidebar: Purchase → RFQs
Request for quotation.
- List (index)
/workspace/{your-company-slug}/purchase/rfqs- List RFQs; Compare opens tenant.purchase.rfqs.compare.
- Create
/workspace/{your-company-slug}/purchase/rfqs/create- Add items and invite vendors.
- Edit
/workspace/{your-company-slug}/purchase/rfqs/{id}/edit- Award vendor on compare screen.
- Database tables (tenant DB)
- rfqs + rfq_items + rfq_vendor_quotes
- Code (routes & Livewire)
- tenant.purchase.rfqs.* → RfqIndex / RfqForm
Blanket POs
Sidebar: Purchase → Blanket POs
Long-term agreements.
- List (index)
/workspace/{your-company-slug}/purchase/blanket-orders- Blanket headers.
- Create
/workspace/{your-company-slug}/purchase/blanket-orders/create- Edit
/workspace/{your-company-slug}/purchase/blanket-orders/{id}/edit- Release route: …/blanket-orders/{id}/release creates child PO.
- Database tables (tenant DB)
- purchase_orders (blanket flag)
- Code (routes & Livewire)
- tenant.purchase.blanket-orders.*
Purchase orders
Sidebar: Purchase → Purchase orders
Commitment to buy from vendor.
- List (index)
/workspace/{your-company-slug}/purchase/orders- Search, status filter. Actions: Edit, Submit, Approve, Delete (draft).
- Create
/workspace/{your-company-slug}/purchase/orders/create- Select vendor, lines, totals; draft until submitted.
- Edit
/workspace/{your-company-slug}/purchase/orders/{id}/edit- Lifecycle: draft → pending approval → approved → sent → received → billed.
- Database tables (tenant DB)
- purchase_orders + purchase_order_items
- Code (routes & Livewire)
- tenant.purchase.orders.* → PurchaseOrderIndex / PurchaseOrderForm
Purchase invoices
Sidebar: Purchase → Purchase invoices
Vendor bills (AP).
- List (index)
/workspace/{your-company-slug}/purchase/invoices- Row actions: Edit, Pay (?purchase_invoice=), Return.
- Create
/workspace/{your-company-slug}/purchase/invoices/create- Pre-fill from GRN: ?goods_receipt= loads lines in mount().
- Edit
/workspace/{your-company-slug}/purchase/invoices/{id}/edit- Three-way match vs PO/GRN when linked.
- Database tables (tenant DB)
- purchase_invoices + purchase_invoice_items
- Code (routes & Livewire)
- tenant.purchase.invoices.* → PurchaseInvoiceIndex / PurchaseInvoiceForm
Debit notes
Sidebar: Purchase → Returns
Document screens for Debit notes.
- List (index)
/workspace/{your-company-slug}/purchase/returns- List shows: Return #, vendor. New button → create.
- Create
/workspace/{your-company-slug}/purchase/returns/create- New debit note.
- Edit
/workspace/{your-company-slug}/purchase/returns/{id}/edit- Link to invoice, post credit.
- Database tables (tenant DB)
- purchase_returns + purchase_return_items
- Code (routes & Livewire)
- tenant.purchase.returns.* → PurchaseReturnIndex / PurchaseReturnForm
Vendor 360°
Sidebar: Purchase → Vendors → 360
Spend, AP, transactions, RFQs, pricing.
- List (index)
/workspace/{your-company-slug}/purchase/vendors- Open from vendor list **360°**.
- Edit
/workspace/{your-company-slug}/purchase/vendors/{id}- Tabbed view; links to PO, invoice, payment, RFQ compare.
- Database tables (tenant DB)
- vendors + PO/PI/payments
- Code (routes & Livewire)
- tenant.purchase.vendors.show
Payment runs
Sidebar: Purchase → Payment Runs
Document screens for Payment runs.
- List (index)
/workspace/{your-company-slug}/purchase/payment-runs- List shows: Run #, payment date, status, total. New button → create.
- Create
/workspace/{your-company-slug}/purchase/payment-runs/create- New payment run.
- Edit
/workspace/{your-company-slug}/purchase/payment-runs/{id}/edit- Select invoices → confirm → generate payments → execute; bank CSV export.
- Database tables (tenant DB)
- purchase_payment_runs + purchase_payment_run_lines
- Code (routes & Livewire)
- tenant.purchase.payment-runs.* → PurchasePaymentRunIndex / PurchasePaymentRunForm
Vendor payments
Sidebar: Purchase → Vendor Payments
Document screens for Vendor payments.
- List (index)
/workspace/{your-company-slug}/purchase/vendor-payments- List shows: Payment #, vendor, amount. New button → create.
- Create
/workspace/{your-company-slug}/purchase/vendor-payments/create- New payment (?purchase_invoice=).
- Edit
/workspace/{your-company-slug}/purchase/vendor-payments/{id}/edit- Allocate to AP invoices; download payment voucher PDF.
- Database tables (tenant DB)
- vendor_payments + vendor_payment_allocations
- Code (routes & Livewire)
- tenant.purchase.vendor-payments.* → VendorPaymentIndex / VendorPaymentForm
Vendor performance
Sidebar: Purchase → Vendor performance
Scorecards by vendor.
- List (index)
/workspace/{your-company-slug}/purchase/vendor-performance- Index of vendors; Show is per-vendor detail.
- Edit
/workspace/{your-company-slug}/purchase/vendors/{id}/performance- Database tables (tenant DB)
- vendor_performance_snapshots
- Code (routes & Livewire)
- tenant.purchase.vendor-performance.*
Price lists
Sidebar: Purchase → Price Lists
Document screens for Price lists.
- List (index)
/workspace/{your-company-slug}/purchase/price-lists- List shows: Vendor, product, price. New button → create.
- Create
/workspace/{your-company-slug}/purchase/price-lists/create- New price list.
- Edit
/workspace/{your-company-slug}/purchase/price-lists/{id}/edit- Edit contract pricing.
- Database tables (tenant DB)
- vendor_price_lists
- Code (routes & Livewire)
- tenant.purchase.price-lists.* → VendorPriceListIndex / VendorPriceListForm
Purchase reports
Sidebar: Purchase → Reports
Read-only analytics.
- List (index)
/workspace/{your-company-slug}/purchase/reports- Hub with Export all (ZIP) and per-report CSV links.
- Database tables (tenant DB)
- Reads PO/AP tables
- Code (routes & Livewire)
- tenant.purchase.reports.* (ApAging, SpendAnalysis, …)
Accounting
Chart of accounts
Sidebar: Accounting → Accounts
Document screens for Chart of accounts.
- List (index)
/workspace/{your-company-slug}/accounting/accounts- List shows: Code, name, type. New button → create.
- Create
/workspace/{your-company-slug}/accounting/accounts/create- Add account.
- Edit
/workspace/{your-company-slug}/accounting/accounts/{id}/edit- Edit code, name, type, parent; delete if no history.
- Database tables (tenant DB)
- chart_of_accounts
- Code (routes & Livewire)
- tenant.accounting.accounts.* → ChartOfAccountIndex / ChartOfAccountForm
Journal entries
Sidebar: Accounting → Journals
Document screens for Journal entries.
- List (index)
/workspace/{your-company-slug}/accounting/journals- List shows: Date, reference, description. New button → create.
- Create
/workspace/{your-company-slug}/accounting/journals/create- New entry.
- Edit
/workspace/{your-company-slug}/accounting/journals/{id}/edit- Min 2 lines; debits must equal credits; save writes GL lines.
- Database tables (tenant DB)
- journal_entries + journal_entry_lines
- Code (routes & Livewire)
- tenant.accounting.journals.* → JournalEntryIndex / JournalEntryForm
Ledger report
Sidebar: Accounting → Ledger
Transactions per account with running balance.
- List (index)
/workspace/{your-company-slug}/accounting/reports/ledger- Filters: account, date range. Reads all saved journal lines.
- Database tables (tenant DB)
- journal_entry_lines + chart_of_accounts
- Code (routes & Livewire)
- tenant.accounting.reports.ledger → LedgerReport
Trial balance
Sidebar: Accounting → Trial balance
All account balances at a date.
- List (index)
/workspace/{your-company-slug}/accounting/reports/trial-balance- Report only; total debits should equal total credits.
- Database tables (tenant DB)
- chart_of_accounts + journal_entry_lines
- Code (routes & Livewire)
- tenant.accounting.reports.trial-balance → TrialBalanceReport
P&L
Sidebar: Accounting → P&L
Income statement for a period.
- List (index)
/workspace/{your-company-slug}/accounting/reports/pl- Report only; revenue − expenses.
- Database tables (tenant DB)
- COA types revenue & expense
- Code (routes & Livewire)
- tenant.accounting.reports.pl → ProfitLossReport
Balance sheet
Sidebar: Accounting → Balance sheet
Assets, liabilities, equity as of a date.
- List (index)
/workspace/{your-company-slug}/accounting/reports/balance-sheet- Report only; assets = liabilities + equity.
- Database tables (tenant DB)
- COA asset, liability, equity
- Code (routes & Livewire)
- tenant.accounting.reports.balance-sheet → BalanceSheetReport