Skip to main content
Version: v1.0.0(int)

Vendors

Master data for suppliers POs are placed against. Flat entity — no companion lookup tables. Vendor contacts live in the shared Contacts pool.

Tables owned

TablePurpose
org.vendorsVendor records (name, address, terms, QBO ID, active flag).

Operations

Writes

  • create(conn, input)Vendor. input: { name, address?, country?, term?, qboId?, notes? }.
  • update(conn, vendorId, patch)Vendor. Partial update on header fields, including the isActive flag (archive / reactivate).
  • delete(conn, vendorId)void. Hard-delete. L3 enforces "no PO references" before calling.

Reads

  • list(conn, filters?)Vendor[]. Filters: { isActive? }.
  • getById(conn, vendorId)Vendor | null.
  • getByIds(conn, vendorIds)Vendor[]. Batch hydration for cross-domain reads (e.g., PO list with vendor name).