Invite a client to the portal
Invite one client contact to the client portal, verify delivery and activation, and revoke access safely when it is no longer needed.
- For Operators
- All plans
- 6 min
- Checked
Goal
Give one verified client contact access to the correct client account and confirm that the invitation becomes an active portal identity.
Prerequisites
- Your plan includes Client Portal and your role can edit Clients.
- The client record is the correct company or person and contains a valid billing or contact email.
- A tested company mailbox is connected.
- You know which person is authorised to see this client's trips, invoices, quotes, and people.
Steps
- Open Clients and select the correct client.
- Review the client name, contact email, billing identity, and account type before granting access.
- Find the Client Portal access section.
- Under Invite by email, enter the authorised person's email address.
- Select Invite.
- Read the result. Invite sent confirms that the portal identity was created and the email send succeeded. If the identity was created but email delivery failed, fix the mailbox and invite that address again.
- The client opens the invitation, completes activation, and creates their own 4fleet password, or signs in to an existing 4fleet account with the same email.
- They can use the portal in a browser or install the same 4fleet Android app linked in the invitation. The app opens the Client view and does not request driver location permission.
- If that email has access to more than one client or operator, use the company and role switcher to choose the intended account. Access to one company never grants access to another.
- Return to the client record and confirm that the person's status changes from Invited to Active.
- Ask the client to verify only the data they are authorised to see. Available screens can include trips, invoices, quotes, people, ride requests, and live tracking when the corresponding data and feature are available.
- When access is no longer appropriate, select revoke for that portal user and confirm the action. Revocation immediately removes access for that identity.
Expected result
The authorised email appears as an active portal user under the intended client, and the user can sign in without seeing another client's records.
Troubleshooting
- The Client Portal section is gated: the active subscription does not include the feature. Review the plan before retrying.
- Invite created but email did not send: verify the connected mailbox and recipient, then invite the same address again.
- The invitation is opened while already signed in as another user: sign out first or use a private browser window to avoid linking the wrong browser session.
- The portal has no trips, invoices, or quotes: confirm that those records are linked to the same client and fall within the portal's available views.
- The wrong person was invited: revoke that portal identity immediately, then invite the correct address.
- A revoked user still has an open page: ask them to refresh or sign in again. Server access is versioned and the revoked session should no longer fetch protected data.
Guided check: Client portal access
4fleet can run an automated Client portal access check on one client portal user. The check only reads what is already stored, changes nothing, and returns one line per test. A fail line is what is blocking you, a warning works but is degraded, skipped means the test did not apply here, and unknown means the record could not be read, so that line proves nothing either way. What each line means:
- Portal user exists (
portal_user_exists): fails when no portal user with that reference belongs to your company. - Not archived (
not_archived): fails when access was removed, and states the date. Invite the contact again to restore it. - Invite issued (
invite_issued): fails when the contact is marked invited but no invite token was ever issued, so no working link exists. Send the invite again. - Invite not expired (
invite_not_expired): fails when the invite has passed its expiry, so the link now rejects the sign-in. Send a fresh invite. - Activation complete (
activation_complete): warns while the invite is unaccepted, and also warns when an account is marked active without an activation timestamp, which means the invite flow did not finish normally. - Sessions not revoked (
sessions_not_revoked): warns when sessions have been revoked, which signed everyone out and requires them to sign in again.
Still stuck? Contact the 4fleet team with the page and what you expected to happen.