The requirement is to implement a method for inviting existing Customers in NetSuite to the Customer
portal through email from NetSuite.
Deliverables
• Add a ‘Send Customer Invite’ button to the Customer record to send a Customerportal invite email.
• Add a custom field ‘Customer Portal Sign-Up Status’ to the Customer record to store either of the
values ‘Not invited’, ‘Invited’ or ‘Signed-Up’ based on the status of the portal sign-up
invitation. Add a custom checkbox field ‘Include in Mass Portal Invite’ to include the Customer
for bulk invite page list.
• Add a custom page to show the list of all Customers not invited to the portal or were invited
before 3 days ago and have checkbox ‘Include in Mass Portal Invite’ selected. The page
should be accessible for the Administrator, Development manager and
Development Executive roles. These roles should be able to send portal invite links in bulk by
selecting checkboxes next to the Customers and clicking the ‘Invite’ button on the page.
• On clicking the ‘Send Customer Invite’ button, a unique UUID will be generated for the Customer.
An email will be sent to the Customer’s email address with login link to the Customer portal with
the UUID appended.
• The ‘Send Customer Invite’ button in the Customer record will be disabled for the next 3 days after
sending the portal sign-up invite.
• The invite links will expire after 3 days from the time of invite. The Portal can send the UUID
from the link to the NetSuite to check the validity of the URL.
• After a successful Customer sign-up, the portal will send a request to update the Customer status to
‘Signed-Up’.
• If the Customer did not complete the sign-up process within 3 days of the invite, the ‘Send Customer Invite’ button will be again enabled, and the Customer Portal Sign-Up Status will remain
‘Invited’.
Assumptions
• All the sign-up and login procedures will be handled by the portal side.
• Customer will have a valid email address to receive the portal access invitation.
• The status will remain ‘Invited’ even after the expiry of the invite link.
• After the expiry of invite link, the current UUID will be invoked.
• If there are a large number of Customers for bulk invite page list, the list will be shown as
multiple pages, and each page will have a maximum of 100 Customers.
Risks
• If a Customer record does not have an email address, no invitation email will be sent.
• The Customer status will remain ‘Invited’ until a sign-up confirmation is received from the
portal.
• If a user manually changes the Customer status from ‘Signed Up’ to ‘Invited’ or ‘Not Invited’, the
invite button will be enabled.
• On sending bulk portal invite, there can be a delay of few minutes in email sending email
links to the Customers due to NetSuite limitations.
• NetSuite has a concurrency limit of 5 in processing API requests. If more than 5 API requests
are sent by the portal to NetSuite for validating the Customer UUIDs, only the first 5 requests