Skip to content

Business Affiliate Module

Business Affiliates describe the legal entities that participate in the business transactions and operations supported by the Arda Platform for its tenants. This includes suppliers, customers, carriers, and other organizational partners.

The Business Affiliate Module is a Reference Data Module and one of the foundational modules in the system. It is referenced by:

  • Items — supply chain information (primary/secondary supplier)
  • Orders — customer, supplier, and carrier roles on purchase orders

The module depends on a future Contacts Module for reusable contact information.

PlantUML diagram

The VENDOR BusinessRole is the target of an item supply’s supplier reference. An ItemSupply in the Item Module carries a SupplierReference that points at a specific VENDOR role — a cross-module soft reference (no foreign key, no shared transaction; resolution always goes through the owning service).

Because a BusinessRole is a child entity of BusinessAffiliate, the reference carries both the role’s eId and its parent affiliateEId. The parent eId is required to resolve the role through BusinessRoleUniverse(affiliateEId). Resolution and create-on-the-fly (find-or-create the affiliate plus its VENDOR role) go through BusinessAffiliateService. Find-or-create is deduplicating — supplies naming the same vendor link to the same VENDOR role rather than minting duplicates.

The module emits a BusinessRole notification on every VENDOR change, and the Item module reacts (the BA→item Notify Cascade):

  • Rename — a VENDOR role rename (a BusinessAffiliate name change propagates to its roles) cascades to every linking item, refreshing the embedded supplier name on primarySupply / secondarySupply.
  • Removal — affected supplies are marked stale (retired = true, reference pinned to the supplier tombstone) rather than deleted, and the link is not reactivated by later edits.

See the Item Module for the supply-side handling.

In addition to the standard Data Authority CRUDQ capabilities, the module provides:

  1. Filter by BusinessRoleType