Skip to main content

Velox Web Domain Model

This document describes the business/product concepts represented by the velox-web repository. This repository is the current ASP.NET Core web portal over VxData.

Domain Boundary

velox-web owns the user interaction layer for VxData and selected Velox configuration/flow interactions.

It represents:

  • portal users and access to transaction data
  • administration of reference data
  • transaction review and search
  • shipment-focused workflows
  • webhook/file intake surfaces
  • web-triggered Velox flow actions
  • dashboard and log visibility

It does not own the core Velox flow engine or the VxData schema. Those are owned by velox and velox-data.

Portal User

A portal user is a person who logs into Velox Web to view, review, administer, or act on VxData records.

User concepts:

  • login identity
  • user profile
  • role or user type
  • party access
  • claims added for request handling

The data model implies that users may be scoped to one or more parties through User_Party.

Access Context

Access context is the current user's business scope for a request.

Important dimensions:

  • user number
  • user role
  • associated parties
  • admin-only mode
  • application number

This context determines what data the user can see or act on.

Portal Areas

The web portal is organized into user-facing areas.

Transaction Area

The transaction area is for day-to-day business transaction review and action.

Visible focus:

  • shipments
  • shipment detail
  • shipment search/listing
  • transaction menu/navigation

Other transaction families exist in VxData, but shipment appears to be the most developed portal workflow.

Administration Area

The administration area is for reference and setup-style data used by the portal.

Examples:

  • parties
  • products
  • application/reference entities
  • other VxData lookup or master-data concepts

Dashboard Area

The dashboard area is for searching, monitoring, or summarizing operational data.

Exact production scope is unclear from static review.

API Area

The API area exposes webhook/file-oriented endpoints for external callers.

It is not the same as the Delphi VeloxAPIService; it is a web portal API surface over VxData/webhook records.

Identity Area

The Identity area handles login, registration, password, and account workflows.

Transaction

A transaction is a business document or process record stored in VxData.

Transaction families include:

  • shipment
  • order
  • ASN
  • invoice
  • remittance
  • adjustment
  • booking
  • pre-advice
  • container move

The portal currently centers most visible transaction UI around shipments.

Shipment

Shipment is the strongest visible business workflow in this repository.

Shipment concepts:

  • shipment header
  • shipment line
  • manifest
  • shipment status
  • shipment type
  • shipment service
  • shipment event
  • shipment issue
  • proof of delivery
  • tracking
  • price/detail projections

Portal users can review shipment lists and details, and may trigger related actions such as printing or Velox flow execution.

Event

An event records a transaction milestone, notification, or workflow occurrence.

In the web portal, events support:

  • transaction history
  • operational status
  • review context
  • downstream action visibility

Event definitions and tables are owned by VxData.

Issue

An issue represents a transaction problem requiring attention.

Issue concepts:

  • validation problem
  • integration error
  • missing/inconsistent data
  • issue status
  • issue contacts/emails
  • transaction-specific issue rows

The portal gives users a place to review or act on issue-related data.

Party And Partner

Parties and partners define who the transaction is about and who a user is allowed to see.

Party roles include:

  • customer
  • supplier
  • consignor
  • consignee
  • carrier
  • shipper
  • agent
  • location
  • company

Partner relationships connect external trading partners to internal/customer entities.

Product And Reference Data

Reference data supports transaction interpretation and administration.

Concepts:

  • product
  • unit of measure
  • price level
  • address/location
  • country/region/zone/city/suburb
  • temperature
  • dangerous goods class
  • tax
  • status/type/source lookup values

Administration screens expose selected reference data to portal users.

Web Hook

A web hook is an externally addressable intake definition for files or payloads.

Concepts:

  • webhook definition
  • webhook channel/code
  • uploaded file
  • file extension/path
  • webhook file status
  • bearer-token authorization

The web portal API can accept uploads, store files, and expose status or downloads through webhook services.

Upload

An upload is a file or payload submitted to the web/API surface.

Business meaning:

  • inbound data waiting for Velox processing
  • external system handoff
  • traceable file associated with a webhook or transaction process

VeloxFlow links web-visible actions to Velox flow/action execution.

Business meaning:

  • portal users perform an action
  • the portal identifies the matching Velox flow
  • the flow executes in the core Velox runtime
  • the result is returned or reflected in VxData/logs

Examples include printing or executing transaction-related flows.

External Address Lookup

External address providers help users search or validate address data.

Concepts:

  • AddressFinder lookup
  • Google address lookup
  • address autocomplete/metadata
  • user-facing address selection

These providers support address quality and user efficiency.

Configuration And Layout

Web configuration concepts include:

  • default home page per area
  • admin-area mode
  • layout orientation/theme
  • email settings
  • cache settings
  • address provider settings

These are product configuration values from the web portal perspective.

Concept Relationships

  • A portal user has an access context.
  • Access context limits visible parties and transactions.
  • A transaction can have events and issues.
  • A shipment is a transaction with lines, manifests, tracking, POD, events, and issues.
  • A web hook receives an upload.
  • An upload can become data processed by Velox.
  • A VeloxFlow maps a portal action to a core Velox flow.
  • Reference data gives transactions consistent business meaning.

Unclear From This Repository

  • Which portal areas are fully production-ready.
  • The long-term replacement path if the portal is rebuilt in Angular or React.
  • The complete production secret-management model.
  • Which VxData transaction families will receive the same depth of UI as shipments.