Use the FormAssembly Lightning Component in Salesforce Communities 


In this Article
Related Articles

Prior To Setup

The following steps will walk you through how to use FormAssembly's Lightning Component to publish a form within your Salesforce Community.

Prior to starting these steps, please make sure you have installed FormAssembly for AppExchange. Follow the steps outlined here to install and set up the application.

Things to Note:

  • You do not need to use the Salesforce Community Authentication (available for Team plan customers and up) in order to use our Lightning component and embed a form in your Community. This is an option if you would like to restrict your forms to your Community members only, and it is not required.
  • If you are a Team plan user and have the Salesforce Add-on, you may use the Salesforce Prefill Connector with our Lightning component, and use the Prefill Connector with the Salesforce Communities Authentication enabled (although it is not required).
  • You do not need to set up Single Sign-On (SSO) between Salesforce and FormAssembly in order to be able to use the FormAssembly Lightning component.
  • The Lightning component can be installed in a sandbox by using this link.
  • Support for Communities varies across device types and browsers. Please refer to Salesforce for information pertaining to their browser support requirements for communities

Configuration Steps

1. Go to SetupAll Communities and click Manage for the community where you plan to publish your form.

2. Go to the Community Builder, find the page where you want to publish the form, and select Components.

3. Next, select FormAssembly Form under Custom Components. If you do not see this option, please make sure you have installed FormAssembly from the AppExchange and have updated it to at least version 2.15.

Note: If you are not using the Salesforce Communities Authentication, you do not need to complete the remaining steps. You only need to add in the Form ID (found on the Publishing page in FormAssembly) to the component dialog box. If you are using Communities Authentication, please continue with the following steps.

4. Drag the form to place on your page where you would like it. Then, open a new tab or browser window and log in to your FormAssembly account.

5. Within FormAssembly, find the form you would like to publish and go to ConfigureProcessing.

6. Under Allow Responses From select Salesforce Community User.

7. Click Configure and then enter your Portal Login URL and Salesforce Org ID. Additional information and details on this process can be found on our Salesforce Communities Authentication page.

8. Next, scroll down to Step 2. FormAssembly Lightning Component. You will need to copy and paste these two values over to the Lightning Component dialog box on your Community Builder page.

9. Return to your Community Builder page and paste the token value into the Lightning Component dialog box. Additionally, you will need to paste in the Form ID, which can be found at the top of the configuration page.

Note: If you are not using the Salesforce Communities Authentication, you will not need to paste in the form token; that can be left blank.

10. Press enter on your keyboard to save that information. Finally, publish the changes to your Community. You should now be able to see the form when logged in to your community.


Salesforce Winter '21 Release Notes

With the Winter '21 release to Salesforce, the following Critical Updates will be activated: "Restrict Access to @AuraEnabled Apex Methods for Guest and Portal Users Based on User Profile" and "Restrict Access to @AuraEnabled Apex Methods for Authenticated Users Based on User Profile". To ensure the continuing function of forms embedded using the FormAssembly Lightning Component for Salesforce Communities, you will need to assign specific Apex Classes to Guest and Community Users.   

Follow these instructions for adding the FormAssembly Apex Class Permissions for Users. You may follow the steps in either of the two options:

Option 1: Using Enhanced Profile Views to Modify User Profiles
Note: You will need to enable the Enhanced Profile User Interface and the Enhanced Profile List Views permissions under Setup > Users > User Management Settings to use this method.
  1. Navigate to Setup > Users > Profiles
  2. Select your Community User profile
  3. Under the App section, select Apex Class Access
  4. Select Edit
  5. Select all Available Apex Classes containing the "tfa." prefix namespace and add them to the Enabled Apex Classes 
    • Note: Apex Classes are case-sensitive and the lowercase "tfa." classes may appear towards the bottom of the list.
  6. Click Save
Option 2: Adding User Permission Set
  1. Navigate to Setup > Users > Permission Sets
  2. Create a new permission set to apply to users that need access to FormAssembly forms embedded in Salesforce Communities. 
  3. Select the newly created permission set.
  4. Under the Apps section, select Apex Class Access
  5. Click Edit
  6. Select all Available Apex Classes containing the "tfa." prefix namespace and add them to the Enabled Apex Classes 
    • Note: Apex Classes are case-sensitive and the lowercase "tfa." classes may appear towards the bottom of the list.
  7. Click Save
  8. Click on Manage Assignments to apply the permission set to any users that need access.

Troubleshooting

After you publish your form, if you are seeing "Please wait" or "Form will be displayed here" on your live community where the form should be, there are a few settings you will need to check to attempt to resolve this error.

Method 1

For FormAssembly App version 2.4 or Lower:

You will need to complete the new package setup process introduced in version 2.15 up to the current version. You can access the documentation on how to install FormAssembly for AppExchange here.

For FormAssembly App version 2.34 (current version):

1. Go to Salesforce > Setup > Installed Packages > Configure (for FormAssembly) under FormAssembly Setup Information. This will take you to the following screen:

2. To confirm what the instance URL is, scroll down and go to "previous", "edit details", and "previous" to reach the page below:

3. Make sure the instance URL does not include "https://" here. 

4. Once you've confirmed the installed package URL is correct, navigate to Setup > Custom Settings > Manage > Edit, and ensure the instance URL matches the installed package URL (and does not include "https://"):

5. Refresh your community, and your form should now show.

Method 2

If the Custom Setting does not resolve the error, go to Salesforce > Setup > TRUSTED URLs. If your FormAssembly instance URL is not configured as a trusted site, add it here. 

In addition to your FormAssembly instance URL (Enterprise and Compliance Cloud users), we recommend adding the following sites to your list of TRUSTED URLs:

  • http://www.tfaforms.com/ 
  • https://www.tfaforms.com/

Method 3

If the form is still not displaying, go to Salesforce > Setup > Manage Users > Profiles. Find the user profile that you are using for your Community User and click Edit. Using CTRL-F (or Command-F for MacOS), search for "API" and confirm that the API Enabled setting is checked:

Note: The standard Community User Profile provided by Salesforce does not have the API Enabled setting checked, so you will need to make a clone of that profile and check the setting in order for users to access forms within the community.

Method 4

If you are still not able to see your form in the community, please contact our support team


Prefilling with the Lightning Component

When a form is embedded in a Community with the FormAssembly Lightning Component, it is possible to use standard prefilling methods to prefill Salesforce data into your form.

  1. You can prefill through the Community page URL.
  2. You can prefill your form using the Salesforce Prefill Connector. 
  3. If you have enabled Salesforce Communities Authentication, then you can prefill using session parameters
Note: We always recommend only embedding one form onto a single Community page, particularly when prefilling.

When prefilling using methods 1 and 2, you'll need to add the prefill values to the URL of the Community page. 

  • For the following URL: https://FAdemo.na50.force.com/prefillingtest/s/
    • Method 1:  If your form was embedded on your community page at the URL above and you are prefilling through the URL, you would need to append "?field_alias=XXXXXX" to the end of the URL.  
      • https://FAdemo.na50.force.com/prefillingtest/s/?field_alias=XXXXXX
    • Method 2:  If your form was embedded on your community page at the URL above and you are using the Salesforce Prefill Connector, you would need to append "?queryparameter=XXXXXX" to the end of that URL.   
      • https://FAdemo.na50.force.com/prefillingtest/s/?queryparameter=XXXXXX 

Please refer to the help documentation for your chosen prefilling method before building your link.

Note: The page your form is embedded on within your community is not the same as your Portal Login URL.  After you log in to your community, you will be able to access the URL of the page where your form is embedded.
Terms of Service · Privacy Policy