Skip to main content

Tenant Linking

Tenant linking connects an existing business identity in parties to a platform login in users.

Flow

  1. The landlord creates a contract and adds the tenant as a party.
  2. The system creates an invitation with a secure token.
  3. The tenant receives the invitation link by email or another channel.
  4. The tenant opens the link and signs up or logs in.
  5. The backend verifies the token, status, expiration, and target party.
  6. The system links users.party_id to the tenant parties.id.
  7. Role-based access is enabled for the tenant.

Proposed entity: invitations

FieldDescription
idPrimary identifier.
token_hashSecure hash of the invitation token.
invited_party_idParty that should be linked.
invited_emailEmail address used for the invitation.
invited_by_user_idUser who created the invitation.
context_typeCONTRACT, PROPERTY, or future context.
context_idLinked context identifier.
roleRole granted after acceptance.
statusPENDING, ACCEPTED, EXPIRED, REVOKED.
expires_atExpiration timestamp.
accepted_atAcceptance timestamp.
created_atCreation timestamp.

Access model

The tenant should only see data connected to their role:

  • their contracts
  • shared documents
  • rent installments and payment status relevant to them
  • maintenance requests they reported

The tenant should not automatically see landlord banking data, internal notes, scoring internals, or unrelated property data.