Skip to content

CO.11: Invite New Client

Summary

Counselors invite a new client by email, optionally adding a note. The system creates a pending invitation and sends a client invitation email when email delivery is configured.

Role

  • Primary: Counselor
  • Secondary: Guest, Client, System

Entry Point

  • UI: Clients page or dashboard Invite Client action.

Preconditions

  • User is authenticated as a counselor.
  • Invitee email is valid.

Steps

  1. Counselor opens the invite dialog.
  2. Counselor enters email and optional note.
  3. Frontend creates a client invitation.
  4. Backend validates duplicate pending invitations and existing relationships.
  5. Backend stores pending invitation and token.
  6. Email service attempts to send the invitation.
  7. Counselor can track or revoke the pending invitation.

Diagram

Edge Cases

  • Email failure: Invitation remains created.
  • Duplicate invite: Backend rejects duplicate pending invitation.
  • Existing client: Backend rejects an invitation for an already linked client.

Current Implementation Notes

  • Frontend: frontend/src/features/clients/components/invite-client-dialog.tsx
  • Backend: backend/internal/services/client_service.go

Screenshot Status

  • Not captured.