Salesforce Integration

Prev Next

Control Credit Application Process from Salesforce

Follow the steps described below to embed a Visualforce page onto a Contact or Lead object in your Salesforce instance that has the ability to:

  1. Draft a Credit Application using the UGA Finance Program.
  2. View the current process of the newly created application.
  3. Send application email link to the consumer.
  4. Automatically Login to uPortal360 to manage items:
    1. Resolve pending issue.
    2. Update email address.
    3. Update application information.
  5. View Consumer Account at anytime after Origination

Demonstration

  1. Load uPortal360 Account Button

    • Click this button to load this Contact or Lead's Customer Account information. The following steps will show the different scenarios that loading the uPortal360 Account can result in.

      salesforce-integration-01-load-account

  2. Draft Credit Application Button

    • After clicking "Load uPortal360 Account", no information will be displayed as the Credit Application does not exist yet.

    • "Draft Credit Application" will use information from the Contact or Lead record and pass to uPortal360 to create a new Credit Application.

    • Once the draft Credit Application is created, an application email will automatically send to the consumer.

      salesforce-integration-02-draft-application

  3. View Record Summary

    • You can view the record summary after the Credit Application created.

      salesforce-integration-03-send-application-email

    • You can resend email when the application is not submitted.

      Important

      The "Send application email" button will not available once the application is submitted.

    • The button "Login and view in uPortal360" will launch you into uPortal360 and allow you make modification to the draft credit application.

      Important

      Your browser may have Pop-Up Blocking, you'll have to allow the Pop-Up for this to work correctly.

  4. Refresh Record Summary

    • You can manually refresh to get the latest record summary.
      salesforce-integration-04-refresh-view-record

Implementation Steps

  • To implement the embedded Visualforce page in your instance of Salesforce, you must be a Salesforce Administrator. The guide below assumes some familiarity with Salesforce and creating fields and deploying code.

    Note

    Implementation should be in Lightning Experience.

    Important

    Required to enable or activate the 'State and Country/Territory Picklists'. Setup > State and Country/Territory Picklists

Create Custom Fields

  1. Create a custom Contact and Lead Field

    1. Setup > Object Manager

    2. Find "Contacts" and "Leads" object.

    3. Select "Fields & Relationships"

    4. Create new custom fields below:

      Data Type Field Label Length Field Name Options Description/Help
      Text UAS Contract Number 12 UAS_Contract_Number Contract number with Universal Account Servicing (UAS) uPortal360 Platform
      Text UAS Credit Application Id 20 UAS_Credit_Application_Id Unique Case Insensitive Credit application record number with Universal Account Servicing (UAS) uPortal360 Platform
      Deprecation and Migration

      UAS_Account_Number are deprecated and replaced by UAS_Contract_Number. Please append LOA01 to the old data from UAS_Account_Number and data migrate into UAS_Contract_Number.

Create Custom Setting

  1. Create a Custom Setting

    1. Setup > Custom Setting

    2. Create new custom fields below:

      Field Label Field - Object Name Setting Type Visibility Description/Help
      UAS uPortal360 Settings UAS_uPortal360_Settings List Protected Settings used to control uPortal360 integration behavior
      Important

      List custom settings is disabled by default. You can enabled list custom settings on the Schema Settings page in Setup.

      Deprecation and Migration

      uPortal360_Credentials are deprecated and replaced by your Salesforce user email address. Please contact UAS to make sure the email address of your user is up to date with our system.

  2. In the newly created "UAS uPortal360 Settings" custom setting

    1. Select the custom setting you created.

    2. Create new custom field(s) below:

      Data Type Field Label Length Field Name Description/Help
      Text UAS Program Number 5 UAS_Program_Number Unique alphanumeric character provided by UAS
      Text UAS Location Number 9 UAS_Location_Number Unique alphanumeric character provided by UAS
    3. Once new field(s) created, click on "Manage" button.

    4. Click on "New" button.

    5. Create new uPortal360 settings below:

      Name UAS Program Number UAS Location Number
      Main Contact UAS to receive the program number Contact UAS to receive the location number
      Important

      Name are case sensitive.

Add Remote Site Access

  1. Setup > Remote Site Settings

  2. Click on "New Remote Site" button.

  3. Create new remote sites below:

    Remote Site Name Remote Site URL Description Active
    UAS_uPortal360_Domain (If Sandbox) https://staging.uportal360.com Callout to uPortal360 true/checked
    (If Production) https://uportal360.com
    UAS_uPortal360_API_Domain (If Sandbox) https://test-api.uportal360.com Callout to uPortal360 API true/checked
    (If Production) https://api.uportal360.com
    Important

    Remote Site URL is case sensitive. Please ensure you are using uportal360 where the p is in lower case.

    Deprecation and Migration

    Previous remote sites are deprecated and should be replaced with the new remote sites above.

Add Auth Provider

  1. Setup > Auth Provider

  2. Click on "New" button.

  3. Create new auth providers below:

    • Provider Type: Open ID Connect
    • Name: Keycloak
    • URL Suffix: Keycloak
    • Consumer Key: Contact UAS to receive a consumer key.
    • Consumer Secret: Contact UAS to receive a consumer key.
    • Authorize Endpoint URL:
      • (If Sandbox) https://auth.uportal360.com/realms/uportal360-api-dev/protocol/openid-connect/auth
      • (If Production) https://auth.uportal360.com/realms/uportal360-api/protocol/openid-connect/auth
    • Token Endpoint URL:
      • (If Sandbox) https://auth.uportal360.com/realms/uportal360-api-dev/protocol/openid-connect/token
      • (If Production) https://auth.uportal360.com/realms/uportal360-api/protocol/openid-connect/token
    • User Info Endpoint URL:
      • (If Sandbox) https://auth.uportal360.com/realms/uportal360-api-dev/protocol/openid-connect/userinfo
      • (If Production) https://auth.uportal360.com/realms/uportal360-api/protocol/openid-connect/userinfo
    • Default Scopes: openid offline_access
    • Send access token in header: true/checked
    • Include Consumer Secret in SOAP API Responses: true/checked

Configure Permission Set for External Credential

  1. Setup > Permission Sets

  2. Create a new permission set or select an existing permission set to have permission to use the integration.

    1. Create new record instruction
    2. Edit existing record instruction
  3. Click on "Object Settings".

  4. Click on "User External Credentials".

  5. Click on "Edit" button and assign the permissions you want.

  • Must have "Read" enabled
  1. Save the settings.
  2. Setup > Users
  3. Search for user that you would like to have access to External Credential
  4. Select the user.
  5. Scroll down till you reach "Permission Set Assignments" and click on "Edit Assignments" button.
  6. Add the permission set you configured.

Add External Credential and Named Credential

  1. Setup > Named Credential

  2. Select "External Credentials" upper tab/menu.

  3. Click on "New" button.

  4. Create new external credentials below:

    Label Name Authentication Protocol Authentication Provider
    uPortal360 API uPortal360_API OAuth 2.0 Keycloak (the auth provider you created)
  5. Select the external credential you created.

  6. Click on "New" button under the "Permission Set Mappings".

  7. Create new permission set mapping below:

    Permission Sequence Number Identity Type
    Select available permission set with Read - User External Credentials 1 Named Principal
  8. Once permission set mapping is created, on the "Actions" columns of the permission set mapping, click on "Authenticate".

  9. You will redirect to the Auth provider site to authenticate.

    Note

    Contact UAS to receive login credential.

    Important

    If you receive 401 status code when using the integration Visualforce page, you will need to redo this step to re-authenticate.

  10. Head back to the main named credential page or Select "Named Credentials" upper tab/menu.

  11. Click on "New" button.

  12. Create new named credentials below:

    Label URL External Credential Generate Authorization Header
    uPortal360 API (If Sandbox) https://test-api.uportal360.com uPortal360 API (the external credential you created) true/checked
    (If Production) https://api.uportal360.com

Add Apex Class

  1. Setup > Apex Classes

  2. Click on "New" button To create a new Class.

  3. Copy/Paste Code:

    1. CtrlUportal360
    2. CtrlUportal360Test
  4. Click on "Save" button once done.

    Important

    There are two APEX classes (MAIN class and TEST class) in total that need to be create. You must have unit tests that cover 75% of the total Apex code in your organization for deployment.

  5. (Optional) Click on "Run All Tests" button to validate APEX classes.

Add Visualforce Page

  1. Setup > Visualforce Pages

  2. Click on "New" button To create a new Page.

  3. Copy/Paste Code:

    1. VFUportal360Contact
    2. VFUportal360Lead

Configure Permission Set for Apex Class and Visualforce Page

  1. Setup > Permission Sets

  2. You may create another new permission set or select the existing permission set that was created earlier.

    1. Create new record instruction
    2. Edit existing record instruction
  3. Click on "Apex Class Access".

  4. Click on "Edit".

  5. Find CtrlUportal360 on the left column. Select the item and click on the "Add" button. Click on "Save" to finalize the change.

  6. Navigate back to the permission set overview page and click on "Visualforce Page Access".

  7. Click on "Edit".

  8. Find VFUportal360Contact and/or VFUportal360Lead on the left column. Select the item and click on the "Add" button. Click on "Save" to finalize the change.

  9. Setup > Users

  10. Search for user that you would like to have access to Apex Class and Visualforce Page

  11. Select the user.

  12. Scroll down till you reach "Permission Set Assignments" and click on "Edit Assignments" button.

  13. Add the permission set you configured.

Embedding Visualforce Page in Page Layouts

  1. Setup > Object Manager
  2. Choose Contact or Lead.
  3. Select "Page Layouts".
  4. Choose available page layout user has access to.
  5. Drag a new section into page layout.
  6. On the layout menu, select "Visualforce Pages".
  7. Drag the Visualforce Page from the list to new section.
  8. Click on "Save" button to finalize.

Run a Test

  1. Use following testcase information:

    Name Birthday Address SSN Credit Score
    Approved Testcase 18 >= age < 95 Any address in USA 000-000-1001 Approved
    Pending Testcase 18 >= age < 95 Any address in USA 000-000-1002 Pending
    Declined Testcase 18 >= age < 95 Any address in USA 000-000-1003 Declined
    NoHit Testcase 18 >= age < 95 Any address in USA 000-000-1004 No Hit
    CreditFreeze Testcase 18 >= age < 95 Any address in USA 000-000-1005 Credit Freeze
  2. Fill out the following fields:

    1. Contact

      • First Name
      • Last Name
      • Mailing Street
      • Mailing City
      • Mailing State
      • Mailing Postal Code
      • Email
        • (For testing) Recommended to use an email address that you have access to.
      • Phone Number
        • Any of the following standard phone number fields can be filled out. The first one filled out in the order below will be considered the "primary number".
          • Mobile Phone
          • Home Phone
          • Phone
          • Other Phone
    2. Lead

      • First Name
      • Last Name
      • Street
      • City
      • State
      • Postal Code
      • Email
        • (For testing) Recommended to use an email address that you have access to.
      • Phone Number
        • Any of the following standard phone number fields can be filled out. The first one filled out in the order below will be considered the "primary number".
          • Mobile Phone
          • Phone
  3. Click on "Load uPortal360 Account" button.

  4. Click on "Draft Credit Application" button.

  5. Use the link you receive from the email. The link will redirect you to our Apply Interface portal.

    1. In production, the consumer will use the email link and continue the application process in the Apply Interface portal.
    2. You may use the "Send application email" button to send another application email.
  6. Once you submit the application in the Apply Interface portal, you may use the "Refresh" button to get the latest data.

Post Migration

Attention

This is only applicable if you leveraged an older version of the UGA Finance program with Salesforce. Only perform the actions below once migration step are completed.

  • You may delete the UAS_Account_Number field once you have data migrate to UAS_Contract_Number.
  • You may delete the uPortal360_Credentials custom setting once you have migrate to use your Salesforce user email address.
  • You may delete previous remote site access once the new remote site access are implemented.