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 NameTypeDescription
BB_NMLS__cNumberLoan Officer NMLS
BB_LOID__cNumberLoan amount or loan balance (in the case of a refinance)
BB_ARM_Term__cpicklist [ 1, 2, 3, 5, 7, 10 ]ARM term in years.
Requires loan_type: ARM
BB_Cash_Out__cNumberCash out amount.
Requires loan_purpose: refinance
BB_Credit_Score__cNumberEstimated credit score of the borrower
BB_Property_Value__cNumberAppraised value of the property
BB_Loan_Amount__cNumberLoan amount or loan balance (in the case of a refinance)
BB_Loan_Purpose__cpicklist [ purchase, refinance ]Purpose of the loan
BB_Loan_Term__cNumberTerm of the loan in months
BB_Debt_to_Income__cNumberPercent of monthly obligations in the monthly income
BB_Loan_Type__cpicklist [ Conventional, VA, FHA, USDA, ARM ]Loan type
BB_Lock_Period__cNumberDuration of rate lock period in days
BB_Military_Eligible__cCheckboxVA eligibility
BB_Property_Type__cpicklist [ single_family_home, townhome, condominium,
multi_tenant_home ]
Type of property
BB_Residency_Type__cpicklist [ primary_home, second_home, rental_home ]Occupancy
BB_Property_City__cTextCity of the property
BB_Property_State__cTextState of the property
BB_Property_Zipcode__cTextZip code of the property
BB_Property_Street_Address__cTextStreet address of the property
BB_Last_API_Sync_Status__cTextResponse status of last post to
BankingBridge API
BB_Subscription_Id__cTextSubscription ID retrieved from subscription post to BankingBridge API
BB_Subscription_URL__cTextDashboard URL retrieved from subscription post to BankingBridge API
BB_Dashboard_Link__cURL formulaFormula 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.