Inviting customers to a project is a significant milestone for both the project's progress and the start of your customer's partnership with you. From the project's perspective, it signals the completion of groundwork and the transition to active collaboration, ensuring that both your team and the customers are on the same page regarding goals, expectations, and next steps. This marks the shift from planning to execution, a crucial moment that establishes transparency and accountability.
For the customer, this invitation creates a sense of inclusion and ownership. It provides visibility into the project's progress, fosters involvement, and reassures them that their needs are a priority. A well-managed invitation process, where the customer can access and understand their role in the project, helps build trust, increase engagement, and positively influence overall satisfaction.
In this article
- Who can invite customers to projects?
- Invite using shared link
- Invite users from inside the project
- Invite users from embedded portal
- How to Embed your portal
There are three ways in which you can invite customers to projects:
1. Invite users through shared link
2. Invite users from inside the project
3. Invite users via the customer portal embedded in your website
Who can invite customers to projects?
You can now choose which customer companies gain access to your projects. For example, if you want a customer from Vance to access the customer portal, simply add “vance.com” to the “allowed domains” in Rocketlane. This allows you to control which companies can be part of your projects.
1. Only allow users with email IDs from customer domains and additional domains
To add these domains:
Navigate to the project settings inside a project.
Add the company domains of customers who can be invited to the project, for example: “vance.com.”
You can also add the "additional domains" while create a project in Rocketlane.
2. Users with permission can invite customers
Additionally, you can define who from your team has the permission to invite customers to the project.
3. Customers can be added via JWT
You can choose whether customers can join using the JWT token generated when they click "Join" from the embedded portal.
4. Anyone with the link can join
If you wish for anyone with the link to the customer portal to join, you can define the domains that can get access under “allowed domains.”
To set this up,
- Navigate to your avatar and select Settings
- In the Account settings section, select Customer portal invite configurations
Invite using shared link
To get this going,
Navigate to the freshly built customer portal in Rocketlane
From the top navigation bar, click the share button and copy the invite link to the portal
Now, you can share the link with any of your customers and they will be redirected to the customer portal where they will be prompted to add their email address
After which they will receive an email to the inbox of the email they added to verify their email and login using the magic link
Here if you have turned on “send invites to only users from the allowed domains” only those users can access and log into the portal
Invite users from inside the project
To invite customers to projects from the ease of your project itself, you can use the “invite button” inside the project and invite users using their email address and they will receive a magic link to join the project using which they can log into their portal
Invite users from embedded portal
Modern customer portals can seamlessly integrate within your product. By embedding a portal, your customers can access it without feeling like they are navigating away from your product. This guide will show you how to achieve this using Rocketlane.
How to Embed your portal
Rocketlane’s Customer Portal can be embedded directly into your product, allowing your customers to view project progress, receive notifications, and collaborate—without ever leaving your application. This creates a seamless experience and ensures that all customer-facing project information is presented natively within your platform.
This article walks you through the steps to embed the portal using an iframe and implement secure, token-based access using JWT (JSON Web Tokens).
Step 1: Navigate to Embed Instructions
Log in to your Rocketlane workspace.
Go to Settings > Customer Portal > Embed Customer Portal.
Follow the on-screen instructions to get started with embedding.
Step 2: Embed the Portal in Your Product
To embed the customer portal in your UI, insert the following HTML snippet where you want the portal to appear:
<iframe src="https://xy.rocketlane.com/cp/embed?token=<jwt_token>"> <a href="https://xy.rocketlane.com/cp/embed?token=<jwt_token>">Go to Portal</a> </iframe>
The iframe embeds the portal into your UI.
The <a> link provides a fallback option, allowing users to access the portal in a new tab if iframe rendering fails.
Replace xy with your workspace subdomain and insert a valid JWT token for authentication.
Step 3: Secure the Portal with JWT Authentication
Rocketlane uses JWTs to authenticate users accessing the embedded portal. This enables a smooth login experience without requiring separate email invites or passwords.
Benefits of JWT-Based Login
Seamless one-click login from within your product
No email invite or manual login required
Secure, time-limited access
Authentication Options
Rocketlane supports two methods for JWT authentication:
1. Shared Secret Key (Simpler Setup)
Rocketlane provides a shared secret.
You use this key on your backend to sign tokens and authenticate users.
2. Public/Private Key Pair (Higher Security)
Generate a private/public key pair.
Add your public key to Rocketlane via Settings.
Sign JWTs on your server using your private key.
Step 4: Generate a JWT Token
Here’s a sample Python function to generate a JWT token using your private key:
import jwt def generate_jwt_token(your_private_key, email_id, project_id, hash_param, expires_at): payload = { "user": { "emailId": email_id, "emailLanguagePreference": "EN" # Supported: EN, DE, FR, IT, ES, NL }, "config": { "projectId": project_id, "inviteIfAbsent": True, "hashParam": hash_param }, "exp": expires_at } jwt_token = jwt.encode(payload, your_private_key, algorithm="HS256") return jwt_token
Key Payload Fields Explained:
emailId: The customer’s email ID.
emailLanguagePreference: Sets the language used in system-generated emails.
projectId (optional): ID of the project the customer is accessing.
inviteIfAbsent: Automatically invites the customer if they are not already part of the project.
hashParam: A hash used to validate redirection (fetched from the email invite URL).
Step 5: Fetch Project ID (if needed)
If you need to dynamically fetch the projectId, use the Rocketlane API:
GET https://api.rocketlane.com/api/1.0/projects?externalRefKey=<????> Headers: Accept: application/json api-key: <your_rl_api_key>
Where,
Query Parameter: Changed from companyName=YourCompanyName to companyId=<YourCompanyId>.
Make sure to replace <YourCompanyId> with the actual ID of your company and <your_rl_api_key> with your actual Rocketlane API key.
Headers:
accept: application/json to specify that you expect JSON responses.
api-key: <your_rl_api_key> where <your_rl_api_key> should be replaced with your actual API key.
Read more about Rocketlane APIs here.
Step 6: Set the Email Redirection URL
To ensure email links take customers to your embedded portal, configure the Email Redirection URL:
Go to Settings > Customer Portal > Customer Portal Invite Configuration.
Scroll down to the Email Redirection URL.
Enter the URL where your customer portal iframe is embedded—e.g., https://yourapp.com/projects/portal.
This ensures that when customers receive invite emails, clicking the link redirects them to your product, not Rocketlane’s default portal page.