Adding someone to the contact list does not give them access. Only a portal invite does.
Contact list entries
These are the people you email and call. Each row holds Name, Role, Email and Phone.1
Open the client
Click the client in Clients.
2
Click Add contact
A new numbered row appears.
3
Fill in the fields
Only the name matters – a row without one is discarded on save.
4
Click Save changes
You see “Client saved.”
Portal contacts
The Portal access panel sits below the client form. It exists because a portal login must belong to a client company – you cannot invite a bare portal user with no company. The panel does three things:- Invites a new contact for this client.
- Lists who has joined and who still has an open invite.
- Lets you tick which of this client’s projects each contact can see.
Invite a contact
1
Open the client page
You need the Manage clients capability.
2
Enter the contact email
Type it into Contact email. It must be a valid address.
3
Click Invite contact
You see “Invite sent to …”. The role is fixed to Client – you cannot pick a different one here.
4
Copy the link if you need it
Copy invite link puts the latest invite URL on your clipboard, and the link is shown under Latest invite link. Use it if the email is slow or blocked.
When the contact accepts, they automatically get access to every project this client currently has. Projects added later are granted when you tick them, or when the project is moved to this client.
Contacts list
Below the invite form:- Joined contacts show their name and email, followed by a checkbox for every project of this client.
- Pending contacts show the invited email and an Invite pending badge.
Per-project access
Each joined contact has a checklist of this client’s projects. Tick a project to grant access. Untick it to revoke. Changes apply immediately – there is no save button. The list updates the moment the change lands.When the Client portal app is off
If an owner or admin switches the Client portal app off:- The invite form disappears. You cannot create a login that cannot be used.
- A notice explains: “The client portal is turned off, so contacts can’t sign in and no new ones can be invited. Existing access is kept and can still be removed below.”
- Existing contacts and their project checkboxes stay listed, and you can still untick a project.
Plan gating
The client portal is a Pro feature. On Free the app is visible but locked behind a paywall. See /concepts/plans-and-features. Every portal contact is a login, so each one counts toward your seat total – the same as a staff member. See /team/seats-and-billing.Example
Priya Raman gives Bluebird Coffee visibility into their work.- She opens Bluebird Coffee and enters
[email protected]under Contact email. - She clicks Invite contact. The toast reads “Invite sent to [email protected].”
- The panel shows Ruth under Contacts with an Invite pending badge.
- Ruth accepts. She now appears as a joined contact with both Bluebird projects ticked – Website Redesign and Monthly Retainer.
- Northwind is not ready to share the retainer, so Priya unticks Monthly Retainer. Ruth now sees Website Redesign only.
Permissions
Portal contacts themselves hold zero internal capabilities. They see only what is explicitly shared with their company.
What happens next
- A pending invite counts as access. It occupies a seat and appears in your invitation list until it is accepted or revoked.
- Once accepted, the contact signs in and sees only their client’s shared projects. See /portal/what-clients-can-see.
- Moving a project to a different client re-derives portal access automatically – the new client’s contacts gain it, the old client’s lose it.
Common questions
What is the difference between a contact and a portal contact?
What is the difference between a contact and a portal contact?
A contact is a name in the client’s phone book. A portal contact is a login. Adding the first does not create the second.
Can I invite a portal contact from the team page instead?
Can I invite a portal contact from the team page instead?
No. A portal contact must be tied to a client company, so the invite has to start from that client’s page. The server refuses a client invite that carries no company.
Can a portal contact see other clients?
Can a portal contact see other clients?
Never. A contact only ever reaches projects belonging to their own client company, and only those you tick.
Can a portal contact see costs or margins?
Can a portal contact see costs or margins?
No. Cost and margin figures are stripped before they leave the server for a portal login.
How do I remove someone completely?
How do I remove someone completely?
Untick every project to cut their reach, then remove the membership from the team roster. See /portal/remove-portal-access.
Troubleshooting
Related guides
Invite a client contact
The full portal invite flow.
What clients can see
The portal firewall, in detail.
Remove portal access
Cut a contact off cleanly.
Client details
The rest of the client page.
Seats and billing
Why portal contacts count as seats.