Skip to main content Enter
ERP.AI Client Collaboration Portal

Client Collaboration Portal

Start now
Pricing Frequently asked questions Get started
Build with Proto

Modules

Portal branding and accessCreate a recognizable client workspace with explicit access to each shared project. Project documentsPublish the right version of a document and see whether its intended recipients have acknowledged it. Client decisionsAsk a named client approver for a decision with the relevant evidence and a traceable outcome.
Project updatesShare a consistent project update with exactly the audience that should receive it. ConversationsKeep feedback attached to the document, request or update the conversation is about. Engagement and auditFind stalled approvals and inactive client accounts while preserving a useful decision trail.

Client Collaboration Portal

Start now
Pricing Frequently asked questions Get started
Build with Proto

Processes

Portal setup to client accessGive clients a branded entry point and the specific project access their work requires. Document publishing to acknowledgmentMake a protected project document available to the intended client audience and record explicit acknowledgment.
Approval request to source updateCapture the named client’s decision and reconcile the result with the originating application. Project update to client follow-upKeep project communications relevant and follow up using permitted engagement evidence.

Client Collaboration Portal

Start now
Pricing Frequently asked questions Get started
Build with Proto

Industries

Consulting teamsKeep advisory deliverables, client feedback and project decisions in an accountable shared space. Creative and digital agenciesGive clients a consistent place to review project work and respond to the people delivering it.
Implementation partnersCoordinate customer checkpoints across implementation projects with explicit access and decision ownership.

Client Collaboration Portal

Start now
Pricing Frequently asked questions Get started
Build with Proto

Reference

Roles and permissionsSeparate portal administration, publishing, client decisions and read-only access. Reports and analyticsReview client engagement, approval turnaround and delivery outcomes. Data modelThe canonical records behind published client collaboration.
IntegrationsConnect protected documents, project context and acknowledged decisions. ImplementationConfigure identity, audiences and decision evidence before inviting clients. Agent referenceUse Proto to configure a scoped client collaboration experience.

Client Collaboration Portal

Start now
Pricing Frequently asked questions Get started
Build with Proto
All systems
Modules
Portal branding and accessCreate a recognizable client workspace with explicit access to each shared project.Project documentsPublish the right version of a document and see whether its intended recipients have acknowledged it.Client decisionsAsk a named client approver for a decision with the relevant evidence and a traceable outcome.Project updatesShare a consistent project update with exactly the audience that should receive it.ConversationsKeep feedback attached to the document, request or update the conversation is about.Engagement and auditFind stalled approvals and inactive client accounts while preserving a useful decision trail.
Processes
Portal setup to client accessGive clients a branded entry point and the specific project access their work requires.Document publishing to acknowledgmentMake a protected project document available to the intended client audience and record explicit acknowledgment.Approval request to source updateCapture the named client’s decision and reconcile the result with the originating application.Project update to client follow-upKeep project communications relevant and follow up using permitted engagement evidence.
Industries
Consulting teamsKeep advisory deliverables, client feedback and project decisions in an accountable shared space.Creative and digital agenciesGive clients a consistent place to review project work and respond to the people delivering it.Implementation partnersCoordinate customer checkpoints across implementation projects with explicit access and decision ownership.
Reference
Roles and permissionsSeparate portal administration, publishing, client decisions and read-only access.Reports and analyticsReview client engagement, approval turnaround and delivery outcomes.Data modelThe canonical records behind published client collaboration.IntegrationsConnect protected documents, project context and acknowledged decisions.ImplementationConfigure identity, audiences and decision evidence before inviting clients.Agent referenceUse Proto to configure a scoped client collaboration experience.
Sign in
Sign in Start now
Client Collaboration Portal Modules
Project documents2 of 6
  • Portal branding and access1 of 6
  • Project documents2 of 6
  • Client decisions3 of 6
  • Project updates4 of 6
  • Conversations5 of 6
  • Engagement and audit6 of 6

Project documents

Publish the right version of a document and see whether its intended recipients have acknowledged it.

My Project Documents (Client)DocumentShares
Portal branding and accessProject documentsClient decisionsProject updatesConversationsEngagement and audit
PortalProject IN (current user's PortalUserAccess)Published
Share NumberDocument NameCategoryPortal ProjectPublished AtRequires Acknowledgment
DS-96451Document 896DeliverablePP-343305 Sep✓
DS-43860Document 501InvoicePP-232727 Sep✓
DS-34124Document 895ContractPP-356221 Sepno
DS-11286Document 572ReportPP-885514 Sepno
DS-38888Document 756ReferencePP-964108 Sep✓
DS-95682Document 373OtherPP-500520 Sepno
Records in this module
  • DocumentShares
  • DocumentDownloads
  • PortalProjects
  • ClientUsers
  • MagicLinks

Document publishing

Project Manager publishes a document to the portal: creates a DocumentShares row pointing at the source document store FileURL (workflow-dms, Project Billing Invoices, or a Project Management deliverable), picks the PortalSite + PortalProject, sets Category (Deliverable / Invoice / Contract / Report / Reference / Other) and RequiresAcknowledgment. On Status: Published, the document-publish-notification workflow fires via the configured record event. A configured workflow service resolves every ClientUser with PortalUserAccess to the PortalProject, record service bulk-creates an ActivityFeed row plus per-recipient MagicLinks rows with Purpose: DocumentView, and notification service notifies each recipient with the branded template and the magic-link deep-link. ClientUsers click through, the magic-link auth handler resolves to the document viewer, the streamed download writes a DocumentDownloads row plus a ClientActivities row with ActivityType: DocumentDownloaded, and (when RequiresAcknowledgment = true) the client confirms via an in-portal action that flips DocumentDownloads.Acknowledged: true.

Magic-link lifecycle

Every fan-out workflow that needs a one-click email-to-portal entry generates a MagicLinks row with a server-side-only Token, a Purpose enum, optional TargetTable + TargetRecord deep-link, an IssuedAt, and an ExpiresAt. The inbound URL handler resolves the Token server-side, validates Status: Active AND ExpiresAt > now, flips Status: Used immediately on first redemption, stamps UsedAt + UsedFromIP, writes a ClientActivities row with ActivityType: MagicLinkRedeemed, and redirects to the deep-link. The magic-link-expiry workflow runs hourly via the configured schedule, finds every MagicLinks row where ExpiresAt < now AND Status = ‘Active’, and bulk-flips Status: Expired. Reissue is a Portal Manager action that generates a new row rather than extending the prior one.

Keep the decision trail useful

Keep source files protected and generate a short-lived download only after an access check. A notification or download event does not supply an acknowledgment. Scheduled withdrawal and revoked membership apply to old links too. PortalSites, PortalProjects and ClientUsers establish separate tenant and project boundaries. Bind each external login to ClientUsers.PrincipalID; shared email addresses and Account text do not grant membership. Effective access is the intersection of active site, active ClientUser, active PortalProject and active PortalUserAccess. The role and grant must both permit the action. Every list, export, attachment, notification and direct API request rechecks this scope; hiding a card is insufficient. MagicLinks.Token stores only a one-way hash of a high-entropy token. Tokens are purpose, recipient, project, target and expiry bound, redeemed atomically once, and revoked on access removal. Opening an email link displays a confirmation page; link previews and GET requests cannot approve a decision. ApprovalAction requires a verified session and an explicit confirmation POST with expected request revision. Tokens and signatures never appear in analytics, application logs or audit exports. DocumentShares FileURL identifies a protected source; the backend obtains a short-lived scoped download URL only after access checks. Scheduled publication respects PublishStart and PublishEnd; archived or hidden content remains unavailable through old links. Only published documents and updates create client activity-feed entries. NamedRecipients contains validated active recipients within the project. Thread parents and every reply inherit the exact same audience; notifications and mentions cannot widen it.

Modules

  • Active PortalSitesActive
    Portal CodeNameAccountSubdomain Slug

    Portal branding and access

    Create a recognizable client workspace with explicit access to each shared project.

  • My Project Documents (Client)Published
    Share NumberDocument NameCategoryPortal Project
    Invoice

    Project documents

    Publish the right version of a document and see whether its intended recipients have acknowledged it.

  • My Pending Approvals (Client)Pending
    Request NumberSubjectTypePortal Project
    Change Order

    Client decisions

    Ask a named client approver for a decision with the relevant evidence and a traceable outcome.

  • Portal Home (Client)
    Occurred AtEntry TypeSubjectRelated Table
    Status Update Published

    Project updates

    Share a consistent project update with exactly the audience that should receive it.

  • Open Comment Threads (Internal)Active
    Posted AtParent TypePortal ProjectAuthor Client User
    Approval Request

    Conversations

    Keep feedback attached to the document, request or update the conversation is about.

  • Client Activity Audit (last 30 days)
    Occurred AtClient UserActivity TypeRelated Table
    Login Failed

    Engagement and audit

    Find stalled approvals and inactive client accounts while preserving a useful decision trail.

Reports

All reports

Document Acknowledgment Rate

Per RequiresAcknowledgment DocumentShare in the trailing 90 days: recipients, downloaded count, acknowledged count, percent acknowledged. Surfaces shares not landing with the right audience.

Recent Document Downloads (Internal)DocumentDownloads
You or DocumentShare.PortalProject IN (own projects); DownloadedAt >= today − 30 days
  1. DD-15583DS-8186413 Sep
  2. DD-67126DS-8100209 Sep
  3. DD-89982DS-8063612 Sep
  4. DD-16291DS-2644923 Aug
  5. DD-71654DS-2881428 Aug

Roles and permissions

Portal Manager

Owns the ClientUsers list and access grants for one or more PortalSites. The day-to-day operator of the external user lifecycle — invitations, role changes, suspensions, access reviews.

Permissions and records
  • CRUD on ClientUsers, PortalUserAccess, PortalProjects (add / hide / archive), and MagicLinks (reissue)
  • Read on PortalSites, BrandThemes, EmailTemplates, DocumentShares, ApprovalRequests, StatusUpdates, Comments, ActivityFeed, ClientActivities for owned PortalSites
  • View ClientUsers.Email and ApprovalDecisions.SignatureBlob
  • Trigger the client-user-invite workflow and issue ad-hoc magic-links
  • PortalProjects
  • ClientUsers
  • MagicLinks
  • DocumentShares
Publication ScheduleDocumentShares
StatusDraftPublished
12 Sep06 Oct PP-5295 DS-88771, 19 Sep to 24 Sep, Draft PP-1230 DS-74923, 12 Sep to 14 Sep, Published PP-2096 DS-77924, 19 Sep to 26 Sep, Draft PP-4835 DS-87201, 26 Sep to 01 Oct, Published PP-9859 DS-55504, 27 Sep to 06 Oct, Draft PP-1752 DS-46741, 15 Sep to 23 Sep, Published DS-88771DS-74923DS-77924DS-87201DS-55504DS-46741 today · 17 Sep
  • PP-5295: DS-88771, 19 Sep to 24 Sep, Draft
  • PP-1230: DS-74923, 12 Sep to 14 Sep, Published
  • PP-2096: DS-77924, 19 Sep to 26 Sep, Draft
  • PP-4835: DS-87201, 26 Sep to 01 Oct, Published
  • PP-9859: DS-55504, 27 Sep to 06 Oct, Draft
  • PP-1752: DS-46741, 15 Sep to 23 Sep, Published
Project Manager

Internal Project owner. Publishes DocumentShares, ApprovalRequests, and StatusUpdates for own projects; reads ClientUser engagement on own projects.

Permissions and records
  • CRUD on DocumentShares, ApprovalRequests, StatusUpdates, and Comments where the PortalProject.Project is one this user owns or is assigned to in Project Management
  • Read on ClientUsers and ClientActivities scoped to own projects
  • Read on DocumentDownloads and ApprovalDecisions for own projects
  • Cannot CRUD PortalSites, BrandThemes, EmailTemplates, or PortalUserAccess (Admin / Portal Manager own those)
  • DocumentShares
  • ClientUsers
  • DocumentDownloads
Publication ScheduleDocumentShares
StatusDraftPublished
12 Sep06 Oct PP-5295 DS-88771, 19 Sep to 24 Sep, Draft PP-1230 DS-74923, 12 Sep to 14 Sep, Published PP-2096 DS-77924, 19 Sep to 26 Sep, Draft PP-4835 DS-87201, 26 Sep to 01 Oct, Published PP-9859 DS-55504, 27 Sep to 06 Oct, Draft PP-1752 DS-46741, 15 Sep to 23 Sep, Published DS-88771DS-74923DS-77924DS-87201DS-55504DS-46741 today · 17 Sep
  • PP-5295: DS-88771, 19 Sep to 24 Sep, Draft
  • PP-1230: DS-74923, 12 Sep to 14 Sep, Published
  • PP-2096: DS-77924, 19 Sep to 26 Sep, Draft
  • PP-4835: DS-87201, 26 Sep to 01 Oct, Published
  • PP-9859: DS-55504, 27 Sep to 06 Oct, Draft
  • PP-1752: DS-46741, 15 Sep to 23 Sep, Published
Account Manager

Customer-success operator. Watches client engagement across an account portfolio, follows up on inactive clients, escalates disengagement risk to Project Managers and Portal Manager.

Permissions and records
  • Read on ClientUsers, ClientActivities, DocumentDownloads, ApprovalRequests, ApprovalDecisions, StatusUpdates, and ActivityFeed for ClientUsers within owned accounts
  • Receive the client-activity-digest weekly email and the inactive-user-reminder cc
  • CRUD on Comments and CommentReplies on own-account threads
  • Cannot modify ClientUsers (Portal Manager owns), cannot publish documents or status updates (Project Manager owns)
  • DocumentDownloads
  • ClientUsers
Recent Document Downloads (Internal)DocumentDownloads
You or DocumentShare.PortalProject IN (own projects); DownloadedAt >= today − 30 days
  1. DD-15583DS-8186413 Sep
  2. DD-67126DS-8100209 Sep
  3. DD-89982DS-8063612 Sep
  4. DD-16291DS-2644923 Aug
  5. DD-71654DS-2881428 Aug
Internal Collaborator

Limited internal contributor — a designer, engineer, analyst, or specialist who needs to participate in client conversations on own projects but not publish artifacts.

Permissions and records
  • Read on DocumentShares, ApprovalRequests, StatusUpdates, and ActivityFeed for own projects
  • CRUD on Comments and CommentReplies on own-project threads
  • Cannot publish DocumentShares, StatusUpdates, or ApprovalRequests (Project Manager owns)
  • Cannot view ClientUsers.Email or ClientActivities
  • DocumentShares
  • ClientUsers
Open Comment Threads (Internal)Comments
ActivePostedAt >= today − 14 days
Posted AtParent TypePortal ProjectAuthor Client UserAuthor Internal User
DocumentSharePP-2886GKAIU-378
ApprovalRequestPP-4603LRAIU-370
StatusUpdatePP-1143WZAIU-379
DocumentSharePP-5825NNAIU-639
ApprovalRequestPP-5299UDAIU-496
StatusUpdatePP-1444ECAIU-571
Client User — Approver

External client user with approval authority. Acts on ApprovalRequests routed to self; reads own portal content; participates in comment threads.

Permissions and records
  • Read on own PortalSite's exposed PortalProjects (via PortalUserAccess), DocumentShares, StatusUpdates, ApprovalRequests where RequestedFromClient = self, and ActivityFeed scoped to accessible projects
  • CRUD on ApprovalDecisions for own pending requests, Comments, CommentReplies, and DocumentDownloads (write on download)
  • View MagicLinks issued to self via the inbound URL handler only
  • Cannot view other ClientUsers' email, cannot view ClientActivities, cannot access projects not granted via PortalUserAccess
  • DocumentShares
  • PortalProjects
  • DocumentDownloads
  • MagicLinks
  • ClientUsers
Portal Home (Client)ActivityFeed
PortalProject.Project IN (current user's PortalUserAccess)OccurredAt >= today − 90 days
  1. AF-69608 · DocumentPublished af-12423 JunDocumentPublished
  2. AF-73970 · StatusUpdatePublished af-13620 JunStatusUpdatePublished
  3. AF-50740 · ApprovalRequested af-74924 JunApprovalRequested
  4. AF-11708 · ApprovalDecided af-84710 AugApprovalDecided
  5. AF-91127 · CommentPosted af-10904 JulCommentPosted
Client User — Collaborator

External client user with comment + read access. Same scope as Viewer but can post Comments and CommentReplies.

Permissions and records
  • Read on own PortalSite's exposed PortalProjects, DocumentShares, StatusUpdates, ApprovalRequests, and ActivityFeed scoped to accessible projects
  • CRUD on Comments, CommentReplies, and DocumentDownloads (write on download)
  • Cannot decide on ApprovalRequests (Approver only)
  • Cannot view other ClientUsers' email or ClientActivities
  • DocumentShares
  • PortalProjects
  • DocumentDownloads
  • ClientUsers
Portal Home (Client)ActivityFeed
PortalProject.Project IN (current user's PortalUserAccess)OccurredAt >= today − 90 days
  1. AF-69608 · DocumentPublished af-12423 JunDocumentPublished
  2. AF-73970 · StatusUpdatePublished af-13620 JunStatusUpdatePublished
  3. AF-50740 · ApprovalRequested af-74924 JunApprovalRequested
  4. AF-11708 · ApprovalDecided af-84710 AugApprovalDecided
  5. AF-91127 · CommentPosted af-10904 JulCommentPosted
Client User — Viewer

External client user with read-only access. The default tier for client stakeholders who need visibility but no contribution rights.

Permissions and records
  • Read on own PortalSite's exposed PortalProjects, DocumentShares, StatusUpdates, ApprovalRequests, and ActivityFeed scoped to accessible projects
  • Write only on DocumentDownloads (system-recorded on download)
  • Cannot post Comments, cannot decide on ApprovalRequests, cannot view other ClientUsers' email or ClientActivities
  • DocumentShares
  • PortalProjects
  • DocumentDownloads
  • ClientUsers
Portal Home (Client)ActivityFeed
PortalProject.Project IN (current user's PortalUserAccess)OccurredAt >= today − 90 days
  1. AF-69608 · DocumentPublished af-12423 JunDocumentPublished
  2. AF-73970 · StatusUpdatePublished af-13620 JunStatusUpdatePublished
  3. AF-50740 · ApprovalRequested af-74924 JunApprovalRequested
  4. AF-11708 · ApprovalDecided af-84710 AugApprovalDecided
  5. AF-91127 · CommentPosted af-10904 JulCommentPosted

Related processes

Active PortalSitesActive
Portal CodeNameAccountSubdomain Slug

Portal setup to client access

Give clients a branded entry point and the specific project access their work requires.

3 stages · 1 approval

Publication ScheduleDraft
Share NumberDocument NamePortal ProjectPublish Start

Document publishing to acknowledgment

Make a protected project document available to the intended client audience and record explicit acknowledgment.

3 stages · 0 approvals

Portal Home (Client)
Occurred AtEntry TypeSubjectRelated Table
Status Update Published

Project update to client follow-up

Keep project communications relevant and follow up using permitted engagement evidence.

4 stages · 0 approvals

ERP•AI workspace

Start now Client Collaboration Portal

Create your ERP.AI account and get started with Proto.

Start now Download agent
Previous · module 1 of 6Portal branding and accessNext · module 3 of 6Client decisions

Customize Project documents. With Proto, your desktop AI agent.

Ask Proto to help you customize Client Collaboration Portal.

Customize
Project documents.
Ask: “Review DocumentShares fields.”
ProtoYour desktop AI agent
Download nowFree install · ~1 GB · AI usage extra
macOSWindowsLinux

Bring your first idea to Proto.

Keep this page open while you install Proto. Connect your account and model, then paste this into a new chat.

AI usage is paid separately. You can edit the prompt before copying.

ERP.AI

Business apps and the Proto desktop agent.

  • Business Apps
  • Proto
  • Workflows
  • Headless SaaS
  • Enterprise
  • Pricing
  • Contact
  • Terms of Service
  • Privacy Policy
  • Cookie Policy
© 2026 ERP•AI. All rights reserved.
System status

Your Privacy, Your Choice

We use essential cookies to run the site and optional cookies for features, analytics, and relevant content. See Cookie policy

Manage Your Cookie Preferences

We use cookies to enhance your experience, analyze site traffic, and serve relevant content. By clicking "Accept All," you agree to our use of cookies. You can customize your preferences at any time.

Learn more about how we use cookies

These cookies are required for the website to function properly. They ensure security, enable basic features like page navigation, and store user session data. You cannot disable these cookies.

These cookies enable additional features that enhance your experience, such as live chat, video playback, personalized content recommendations, and remembering user preferences.

These cookies help us understand how visitors interact with our site by collecting anonymous usage data. This allows us to measure performance, detect issues, and continuously improve the user experience.

These cookies allow us and advertising partners, including X, to deliver ads tailored to your interests. They track browsing habits across sites to provide relevant advertising and measure ad effectiveness.