Control what portal users can see
A portal user sees only the pages you have set to show in the portal, and on those pages only the data you have opened to them. This article explains the two controls and how each customer ends up seeing only their own records.
Control 1: which pages are in the portal
Every page has a Show in setting with three choices:
- App: for your team only. This is the default.
- Portal: for signed-in portal users.
- Website: public, for anyone.
To change it, click the menu on a page in the sidebar, choose Show in and pick Portal. You can also do it from the page menu in the header of the portal preview.
Portal users never see App pages, your tables, your tools or your settings.
Control 2: which records a customer sees
A portal page can show two kinds of data:
- Shared data is the same for every portal user, such as a service menu or a product list. A table has to be opened for this explicitly. Nothing is shared by default.
- A customer's own data, such as their jobs, invoices or orders. The portal returns only the records that belong to the signed-in customer. This filtering happens on the server, so a customer cannot change the page in their browser to see someone else's records.
How a login is matched to a customer
For "their own data" to work, the portal has to know which customer record a login belongs to. It does that in one of two ways:
- By an explicit link set when the customer is invited from their record.
- By email: the login email is compared with the email field on your customer table.
Then, to find the customer's records in other tables, the portal follows the link from those tables back to the customer. An invoices table, for example, needs a field that points to the customer.
The assistant sets all of this up when it builds a portal. If you later rename your customer table or its email field, tell the assistant so it can update the portal's settings.
"Account Not Linked"
A portal user who signs in and sees "Account Not Linked" has a working login that could not be matched to a customer record. Check these:
- The email is different. The customer signed up with one email and their record has another. Correct the record or invite them again with the matching email.
- There is no customer record. Add one with their email.
- The portal is looking in the wrong place. If your customers are in a table with an unusual name, ask the assistant: "Portal users see Account Not Linked. Check which table and email field the portal uses to match customers."
Team permissions do not apply to portal users
Roles and table access rules under Team & Access control what your team members can see and do. They do not apply to portal users. Portal access is controlled only by the two things above.
Check it yourself
Before inviting real customers:
- Open Tools and choose Portal to preview the portal.
- Use Preview record in the page menu to view a page as it would look for a particular customer.
- Invite yourself with a second email address, sign in at the portal address in a private browser window, and confirm you see only that test customer's data.
Ask for it in plain words
When you ask the assistant for a portal page, say exactly who sees what: "each customer sees only their own invoices" or "every customer sees the full service menu". Being exact here is what keeps one customer's data away from another.