Components of the BankingBridge API Package

This document describes all the Salesforce components that make up the BankingBridge API package. These components are deployed on installation of the package. The underlying code resides in this BankingBridge Git Repo.

Apex classes

  • BB_BankingBridgeAPI: Apex class that contains all business logic for HTTP callouts to both the BankingBridge subscription and lead status APIs.
  • BB_BankingBridgeAPI_Test: Apex test class used for test coverage for code used in BB_BankingBridgeAPI.
  • BB_BankingBridgeAPI_ConfigController: Apex class that contains all logic used within the BankingBridge API Configuration app. Allows updates of API Key and connection testing.
  • BB_BankingBridgeAPI_ConfigCntrl_Test: Apex test class used for test coverage for code used in BB_BankingBridgeAPI_ConfigController.
  • BB_BankingBridgeAPI_CONSTANTS: Apex class used to keep static variables used in the BankingBridge API. This includes endpoints and default string values used throughout the app.
  • BB_BankingBridgeAPI_Mock: Apex mock class used to simulate HTTP responses used in unit tests.
  • BB_BankingBridgeAPI_ResponseTypes: Class constructs of lead status, subscription, quote info, location, and settings used to serialize Lead data to JSON prior to sending to the BankingBridge API.
  • BB_Lead_DataFactory: Apex test class used to quickly create leads containing certain attributes used in other test classes.
  • BB_LeadSubscriptionController: Apex class that contains logic used in Lead Subscription Visualforce page. Uses lead standard controller and has custom validating save method and Apex messaging.
  • BB_LeadSubscriptionController_Test: Apex test class used for test coverage for code used in BB_LeadSubcriptionController.
  • BB_LeadTriggerHandler: Apex class with business logic that determines when leads are sent to the BankingBridge API. Invokes callouts sending Lead information to BB_BankingBridgeAPI when Leads are saved under certain conditions.
  • BB_LeadTriggerHandler_Test: Apex test class used for test coverage for code used in BB_LeadTriggerHandler.
  • BB_TriggerHandler: Apex class used to standardize all methods used within Apex Triggers.
  • BB_TriggerHandler_Test: Apex test class used for test coverage for code used in BB_TriggerHandler.

Apex triggers

BB_LeadTrigger: Apex trigger instantiates BB_LeadTriggerHandler logic.

Apps

BankingBridge_API: App that contains a collection of all Salesforce components used.

Asset files

BankingBridgeLogo2: BankingBridge icon used in app.

Buttons and links

BankingBridgeSubscription: Button on a lead used to open and enter subscription information to BankingBridge API.

Custom fields

Field Name

Type

Description

BB_NMLS__c

Number

Loan Officer NMLS

BB_LOID__c

Number

Loan amount or loan balance (in the case of a refinance)

BB_ARM_Term__c

picklist [ 1, 2, 3, 5, 7, 10 ]

ARM term in years.
Requires loan_type: ARM

BB_Cash_Out__c

Number

Cash out amount.
Requires loan_purpose: refinance

BB_Credit_Score__c

Number

Estimated credit score of the borrower

BB_Property_Value__c

Number

Appraised value of the property

BB_Loan_Amount__c

Number

Loan amount or loan balance (in the case of a refinance)

BB_Loan_Purpose__c

picklist [ purchase, refinance ]

Purpose of the loan

BB_Loan_Term__c

Number

Term of the loan in months

BB_Debt_to_Income__c

Number

Percent of monthly obligations in the monthly income

BB_Loan_Type__c

picklist [ Conventional, VA, FHA, USDA, ARM ]

Loan type

BB_Lock_Period__c

Number

Duration of rate lock period in days

BB_Military_Eligible__c

Checkbox

VA eligibility

BB_Property_Type__c

picklist [ single_family_home, townhome, condominium,
multi_tenant_home ][ single_family_home, townhome, condominium,
multi_tenant_home ]

Type of property

BB_Residency_Type__c

picklist [ primary_home, second_home, rental_home ][ primary_home, second_home, rental_home ]

Occupancy

BB_Property_City__c

Text

City of the property

BB_Property_State__c

Text

State of the property

BB_Property_Zipcode__c

Text

Zip code of the property

BB_Property_Street_Address__c

Text

Street address of the property

BB_Last_API_Sync_Status__c

Text

Response status of last post to
BankingBridge API

BB_Subscription_Id__c

Text

Subscription ID retrieved from subscription post to BankingBridge API

BB_Subscription_URL__c

Text

Dashboard URL retrieved from subscription post to BankingBridge API

BB_Dashboard_Link__c

URL formula

Formula for creating a hyperlink to the BankingBridge dashboard URL

Custom settings

BankingBridge_API_Settings__c: Object used to capture dynamic variables used within the app.

Fields

Lightning pages

  • BankingBridge_API_Configuration: Used to display Visualforce content of the BankingBridge API configuration page.
  • BankingBridge_API_UtilityBar: Utility bar used within the BankingBridge API app.

Remote sites

BankingBridgeAPI: Remote site setting to api.bankingbridge.com allowing HTTP POST and GET requests to this domain.

Tabs

BankingBridge API Configuration: This tab allows navigation to the Banking Bridge API configuration page.

Visualforce pages

  • BB_BankingBridgeAPI_Configuration: Visualforce page used behind that BankingBridge configuration lightning page to allow dynamic entry of BankingBridge API variables such as API Key.
  • BB_LeadSubscription: Visualforce page containing code behind subscription data entry. Accessible using the BankingBridge Subscription button found on lead.