Vendors and clients share the exact same Portal — same login, same layout — the difference is purely which role a Contact holds on a given Project.
Open the vendor's Person record → click Create Portal Access → enter their email. A "set your password" link gets emailed to them — same mechanism used for client Portal invites, since it's the same underlying account type.
After logging in, a vendor sees a list of every Project they're linked to, each tagged Client or Vendor. Clicking into a Vendor-tagged Project shows Quotes, Purchase Orders, Bills & Payments, and Communications tabs.
The Quotes tab shows requests with due dates and a delivery address. There's no line-by-line pricing form — a vendor responds by clicking Upload Response and attaching their own quote document.
A PO sent to the vendor shows an Accept button, which flips its status and notifies staff. If a delivered item had an issue logged against it, the vendor sees it here too, with "We'll Send a Replacement" / "Can't Replace It" buttons.
Vendors don't pay anything here — the tenant pays them. This tab is a read-only history: Bills, Payments Received, and Credit Memos.
Under Settings in the Portal's top nav, a vendor can click Connect your Stripe account to receive Bill payments directly instead of by check — entirely opt-in, with a status badge showing Connected or Onboarding incomplete.
The Communications tab is a real message thread — a vendor can reply directly to staff from inside the Portal, same as a client can on their own Projects.