Installation Guide - Bank Connect

  • Login to your Salesforce Org where the package is Installed.

Note: We will be creating a Public site to receive all the web hooks from the Plaid. Since it will be an external User, Please make sure that the external profiles does not have access to any Object or Field permissions. 

Note : Check the Webhook URL in the Postman(Application) for every Environment Before Entering the Webhook URL in plaid Credentials.

Updating the Field Mapping.

  • Click on the Gear Icon ⚙️ and go to setup.

  • In the quick find box search for custom settings.

  • Search for Plaid Request field Mapping custom settings.

  • Click Manage.

  • Update the Field Mapping with your Source Object Fields.

  • Here we have taken Contact as our source Object we can choose any Standard or Custom Object as our Source Object.

Lightning Action(This step is required only if we are using objects other than Contact and Lead)

  • In this step, we are going to create a Lightning Action.

  • From Object Manager go to any Object from where you want to trigger Bank Verification Process.

  • Click on Button Links and Actions.

  • Click on New Action.

  • Select and Populate the fields with below Values.

    • Action Type - Lightning Component.

    • Lightning Component - bankconnect: BankVerificationRequest_Aura

    • Height - 400px

    • Standard Label Type - None

    • Label - Bank Verification Request.

    • Name - Bank Verification Request.

Update Page Layout

  • From the Object Manager.

  • Click on Page Layouts.

  • Select the Page Layout.

  • Click on Mobile & Lightning. Actions.

  • Search for Bank Verification in Quick Find.

  • Click on the Related List Section of the Page Layout.

  • In Quick Find search for Bank Verification.

  • Click Save.

Creating a Salesforce Site

  • Click on the gear icon and go to setup.

  • In the quick find box search for sites.

  • Click New

  • Provide the required information(Label, Name, etc.)

  • In Active Site Home Page Lookup field Add VerifyBankConnect Visual force page.

  • Click Save.

Apex Class and Object Permission Assignment to Site Guest User.

  • In Global search, Search for Site Guest User.

  • Click on the site name which we have created just now.

  • Click on the profile.

  • In Profile Select-Object Settings.

  • Provide Access(Read, Create, and Edit) to the below Objects.

    • Transactions

    • Income

    • Historical Balances

    • Bank Verification

    • Bank Accounts

    • Assets

    • Bank Connect Logs

    • Holdings

  • Now provide access to Apex classes

  • Go to Site Guest User profile again and click on Apex class Access.

  • Provide Access to below classes.

    • bankconnect.WSProductService

    • bankconnect.PlaidCallbackService

    • bankconnect.BankVerificationController

    • bankconnect.PlaidTransactionsCallBackService

Create a Bank Verification URL Field :

Email Template.

  • Please find the Email Template Code in below Section.

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!-- saved from url=(0046)file:///Users/leo/Desktop/Sample_Template.html --> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" lang="EN"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <!--[if gte mso 15]> <xml> <o:OfficeDocumentSettings> <o:AllowPNG/> <o:PixelsPerInch>96</o:PixelsPerInch> </o:OfficeDocumentSettings> </xml> <style type="text/css"> body,table tr,table td,a, span,table.MsoNormalTable { font-family:'Open Sans', Helvetica, sans-serif !important; }</style> <![endif]--> <title> </title> <meta name="x-apple-disable-message-reformatting"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0 "> <link href="./Sample_Template_files/css" rel="stylesheet"> <meta name="format-detection" content="telephone=no"> <style type="text/css"> .ReadMsgBody { width: 100%; background-color: #ffffff; } .ExternalClass { width: 100%; background-color: #ffffff; } .ExternalClass, .ExternalClass p, .ExternalClass span, .ExternalClass font, .ExternalClass td, .ExternalClass div { line-height: 100%; } html { width: 100%; } table { border-spacing: 0; border-collapse: collapse; mso-table-lspace: 0px; mso-table-rspace: 0px; margin:0 auto; } table table table { table-layout: auto; } img { display: block !important; over-flow: hidden !important; border: 0 !important;outline: none !important;} body {-ms-text-size-adjust: none; margin: 0 auto !important; padding: 0 !important; -webkit-text-size-adjust: 100% !important; -ms-text-size-adjust: 100% !important; -webkit-font-smoothing: antialiased !important; } #MessageViewBody, #MessageWebViewDiv{ width: 100% !important; min-width:100vw; margin:0 !important; zoom:1 !important; } p { margin: 0px !important; padding: 0px !important; } td, a, span { border-collapse: collapse; mso-line-height-rule: exactly; } .ExternalClass * { line-height: 100%; } @media only screen and (max-width:600px) { .em_main_table { width: 100% !important; } .em_wrapper { width: 100% !important; max-width: 100% !important; } .em_hide { display: none !important; } .em_align_center { text-align: center !important; } .em_pad_top { padding-top: 20px !important; } .em_side_space { padding-left: 20px !important; padding-right: 20px !important; } .em_bg_center { background-position: center !important; } .em_full_width { width: 100% !important; height: auto !important; max-width: 100% !important; } .em_pad_btm { padding-bottom: 28px !important; } u + .em_body .em_full_wrap { width: 100% !important; width: 100vw !important; } } </style> </head> <body class="em_body" style="min-width: 100%; background-color:#fbfbfb;margin:0 auto !important;padding:0;"> <!--Full width table start--> <table class="em_full_wrap" width="100%" border="0" cellspacing="0" cellpadding="0" align="center" style="background-color:#fbfbfb;"> <tbody><tr> <td align="center" valign="top" style="padding:10px;"><table align="center" class="em_main_table" width="600" border="0" cellspacing="0" cellpadding="0" style="table-layout:fixed;"> <tbody><tr> <td class="em_hide" style="line-height:1px;min-width:600px;" bgcolor="#ffffff"><img src="./Sample_Template_files/spacer.gif" height="1" width="600" style="max-height:1px; min-height:1px; display:block; width:600px; min-width:600px;" border="0"></td> </tr> <!-- ===== PRE-HEADER SECTION ===== --> <tr> <td><table bgcolor="#fbfbfb" width="100%" border="0" cellspacing="0" cellpadding="0"> <tbody><tr> <td width="30" class="em_hide">&nbsp;</td> <td valign="top" class="em_side_space"><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tbody><tr> <td height="15" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> <tr> <td class="em_grey_txt" style="font-family:&#39;Open Sans&#39;, Arial, sans-serif;font-size:14px;text-align:center;padding-left:0px;padding-right:0px;color:#808080;line-height:24px;font-weight:300;"> <a style="color:#808080;text-decoration:none;" href="file:///Users/leo/Desktop/*%7CARCHIVE%7C*"> View Email in Browser</a> </td> </tr> <tr> <td height="15" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> </tbody></table></td> <td width="30" class="em_hide">&nbsp;</td> </tr> </tbody></table></td> </tr> <tr> <td bgcolor="#ffffff" style="background-color:#ffffff;border-radius:5px;box-shadow:1px 1px 10px 1px #dddddd;"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tbody><tr> <td><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tbody><tr> <td height="25" style="line-height:10px;">&nbsp;</td> </tr> <tr> <td><table width="300" border="0" cellspacing="0" cellpadding="0" align="center"> <tbody><tr> <td><a target="_blank" style="color:#80BB01;text-decoration:none;" href="https://cloudmaveninc.com/"><img alt="logo" src="https://bankconnectpackaging-dev-ed--c.documentforce.com/sfc/dist/version/renditionDownload?rendition=ORIGINAL_Png&versionId=0683j000008Eapl&operationContext=DELIVERY&contentId=05T3j00000TnBQJ&page=0&d=/a/3j000000M0QJ/lkGM6VWNf5vBmiUErnnyShnQwyB8cgVrBZkeTmmTt0c&oid=00D3j000000i85o&dpt=null&viewId=" width="300" height="44" style="max-width:300px;"></a></td> </tr> </tbody></table></td> </tr> <tr> <td height="20" style="line-height:10px;">&nbsp;</td> </tr> </tbody></table></td> </tr> <tr> <td><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tbody><tr> <td background="https://bankconnectpackaging-dev-ed--c.documentforce.com/sfc/dist/version/renditionDownload?rendition=ORIGINAL_Jpg&versionId=0683j000008Eaph&operationContext=DELIVERY&contentId=05T3j00000TnBPu&page=0&d=/a/3j000000M0QY/0b4qYZuV3dl7kAUs4fCe2vQd0z.aLPhzEl81tOuxRZc&oid=00D3j000000i85o&dpt=null&viewId=" align="center" valign="top" style="background:url(&#39;https://i.imgur.com/MZL8kQO.jpg&#39;);background-color: #004F95;-webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover;background-position: top center;" class="em_bg_center"><!--[if gte mso 9]> <v:rect xmlns:v="urn:schemas-microsoft-com:vml" fill="true" stroke="false" style="width:600px;height:200px;"> <v:fill type="tile" src="https://i.imgur.com/MZL8kQO.jpg" color="#ffffff" /> <v:textbox inset="0,0,0,0"> <![endif]--> <table width="90%" align="center" border="0" cellspacing="0" cellpadding="0"> <tbody><tr> <td height="50" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> <tr> <td class="em_dark_grey_txt" style="font-family:&#39;Open Sans&#39;, Arial, sans-serif;font-size:27px;text-align:center;text-transform:none;color:#ffffff;letter-spacing:0px;font-weight:300;"> Bank Verification Required </td> </tr> <tr> <td height="10" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> <tr> <td class="em_grey_txt" style="font-family:&#39;Open Sans&#39;, Arial, sans-serif;font-size:14px;text-align:center;padding-left:0px;padding-right:0px;color:#ffffff;line-height:24px;font-weight:400;letter-spacing: 2px;"> {!bankconnect__Bank_Verification__c.CreatedDate} </td> </tr> <tr> <td height="50" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> </tbody></table> <!--[if gte mso 9]> </v:textbox> </v:rect> <![endif]--></td> </tr> </tbody></table></td> </tr> <tr> <td><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tbody><tr> <td width="40" class="em_hide">&nbsp;</td> <td valign="top" class="em_side_space"><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tbody><tr> <td height="40" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> <tr> <td class="em_grey_txt" style="font-family:&#39;Open Sans&#39;, Arial, sans-serif;font-size:16px;text-align:left;padding-left:0px;padding-right:0px;color:#333333;line-height:24px;font-weight:300;"> Hello {!bankconnect__Bank_Verification__c.bankconnect__First_Name__c}, <br><br> <p style="font-family:&#39;Open Sans&#39;, Arial, sans-serif;font-size:18px;text-align:center;padding-left:0px;padding-right:0px;color:#0e6b0e;line-height:24px;font-weight:700;">Thank you for Submitting the Application!!</p><br/> We require few more details related to your Bank Account. Please Click the Below Link to verify your Account so that we can securely pull the required information.<br> <br> </td> </tr> <tr> <td height="30" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> <tr> <td><table width="160" border="0" cellspacing="0" cellpadding="0" align="center"> <tbody><tr> <td valign="middle" bgcolor="#003791" height="45" style="padding-left: 10px;padding-right: 10px;font-family:&#39;Open Sans&#39;, Arial, sans-serif;font-size:14px;text-align:center;border-radius:5px;color:#ffffff;letter-spacing:1px;text-transform:uppercase;font-weight:300;"> <a href="https://bankconnect-developer-edition.na113.force.com/?bankconnect__plaidId={!bankconnect__Bank_Verification__c.bankconnect__Encrypted_Record_Id__c}" target="_blank" style="text-decoration:none;color:#ffffff;display:block;line-height:45px;"> Verify Account </a> </td> </tr> </tbody></table></td> </tr> <tr> <td height="30" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> <tr> <td class="em_grey_txt" style="font-style:italic;font-family:&#39;Open Sans&#39;, Arial, sans-serif;font-size:16px;text-align:left;padding-left:0px;padding-right:0px;color:#333333;line-height:24px;font-weight:300;"> </td> </tr> <tr> <td height="50" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> </tbody></table></td> <td width="40" class="em_hide">&nbsp;</td> </tr> </tbody></table></td> </tr> <tr> <td bgcolor="#003791" style="background-color:#003791;border-radius:0px 0px 5px 5px; "><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tbody><tr> <td height="30" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> <tr> <td><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tbody><tr> <td width="30" class="em_hide">&nbsp;</td> <td><table width="100%" border="0" cellspacing="0" cellpadding="0"> <tbody><tr> <td><table width="290" border="0" cellspacing="0" cellpadding="0" align="left" class="em_wrapper"> <tbody><tr> <td><table width="290" border="0" cellspacing="0" cellpadding="0" align="center" class="em_wrapper"> <tbody><tr> <td class="em_align_center" style="font-family:&#39;Open Sans&#39;, Arial, sans-serif;font-size:14px;text-align:left;padding-left:0px;padding-right:0px;color:#ffffff;line-height:24px;font-weight:300;"> <span style="font-weight:700;">CONTACT US</span> </td> </tr> <tr> <td height="5" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> <tr> <td> <table border="0" cellspacing="0" cellpadding="0" align="left" class="em_wrapper"> <tbody><tr> </tr><tr> <td> <table border="0" cellspacing="0" cellpadding="0" align="center"> <tbody><tr> <td width="12" style="padding-right:2px; "> <img src="https://bankconnectpackaging-dev-ed--c.documentforce.com/sfc/dist/version/renditionDownload?rendition=ORIGINAL_Png&versionId=0683j000008Eapi&operationContext=DELIVERY&contentId=05T3j00000TnBPz&page=0&d=/a/3j000000M0QT/YBWS_xMsiOYPQjFfZ9inGowzC4To4ckFjSOcEs40QDc&oid=00D3j000000i85o&dpt=null&viewId=" alt="ico" width="11" height="9" style="display:block;border:none; max-width:11px;" border="0"> </td> <td style="padding-left:3px;font-family:&#39;Open Sans&#39;, Arial, sans-serif;font-size:12px;text-align:left;color:#ffffff;line-height:20px;font-weight:300;"> <a target="_blank" style="color:#ffffff;text-decoration:none;" href="tel:++1(646) 604-9857">+16466049857</a> </td> </tr> </tbody></table> </td> </tr> </tbody></table> </td> </tr> <tr> <td style="padding-top:1px;"> <table border="0" cellspacing="0" cellpadding="0" align="left" class="em_wrapper"> <tbody><tr> <td> <table border="0" cellspacing="0" cellpadding="0" align="center"> <tbody><tr> <td width="12" style="padding-right:2px; "> <img src="https://bankconnectpackaging-dev-ed--c.documentforce.com/sfc/dist/version/renditionDownload?rendition=ORIGINAL_Png&versionId=0683j000008Eapn&operationContext=DELIVERY&contentId=05T3j00000TnBQO&page=0&d=/a/3j000000M0QE/0kzi_Plttg4VtM_LyppTuFZHeJeeY2IukNONwwM.ZaI&oid=00D3j000000i85o&dpt=null&viewId=" alt="ico" width="11" height="9" style="display:block;border:none; max-width:11px;" border="0"> </td> <td style="padding-left:3px;font-family:&#39;Open Sans&#39;, Arial, sans-serif;font-size:12px;text-align:left;color:#ffffff;line-height:20px;font-weight:300;"> <a target="_blank" style="color:#ffffff;text-decoration:none;" href="mailto:solutions@cloudmaveninc.com"> solutions@cloudmaveninc.com</a> </td> </tr> </tbody></table> </td> </tr> </tbody></table> </td> </tr> <tr> <td style="padding-top:1px;"> <table border="0" cellspacing="0" cellpadding="0" align="left" class="em_wrapper"> <tbody><tr> <td> <table border="0" cellspacing="0" cellpadding="0" align="center"> <tbody><tr> <td valign="top" width="12" style="padding-top:3px; "> <img src="https://bankconnectpackaging-dev-ed--c.documentforce.com/sfc/dist/version/renditionDownload?rendition=ORIGINAL_Png&versionId=0683j000008Eapd&operationContext=DELIVERY&contentId=05T3j00000TnBPp&page=0&d=/a/3j000000M0QM/8LVO1OUYSliIEQFTDqBDGHFFNbCDV9W7NyiuELcb_xg&oid=00D3j000000i85o&dpt=null&viewId=" alt="ico" width="12" height="14" style="display:block;border:none; max-width:12px;" border="0"> </td> <td valign="top" style="padding-left:3px;font-family:&#39;Open Sans&#39;, Arial, sans-serif;font-size:12px;text-align:left;color:#ffffff;line-height:20px;font-weight:300;"> 747 Third Avenue, 2nd Floor New York, NY 10017 </td> </tr> </tbody></table> </td> </tr> </tbody></table> </td> </tr> </tbody></table></td> </tr> </tbody></table> <table width="250" border="0" cellspacing="0" cellpadding="0" align="right" class="em_wrapper"> <tbody><tr> <td class="em_pad_top"><table width="250" border="0" cellspacing="0" cellpadding="0" align="center"> <tbody><tr> <td height="5" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> <tr> <td><table width="160" class="em_wrapper" align="right" border="0" cellspacing="0" cellpadding="0"> <tbody><tr> <td> <table align="center" width="160" border="0" cellpadding="0" cellspacing="0"> <tbody><tr> <td width="40" height="40"><a href="https://www.linkedin.com/company/cloud-maven-inc/" class="modimg" style="color:#7B9C4D;"><img src="https://bankconnectpackaging-dev-ed--c.documentforce.com/sfc/dist/version/renditionDownload?rendition=ORIGINAL_Png&versionId=0683j000008Eapc&operationContext=DELIVERY&contentId=05T3j00000TnBPk&page=0&d=/a/3j000000M0QZ/otK1QNePsjyoYIdBjBQu3SyuAu.PU9XgOcqXbfvVSq0&oid=00D3j000000i85o&dpt=null&viewId=" width="40" height="40" style="max-width:40px;display:block; border: none;" border="0" alt="fb"></a></td> <td width="20"></td> <td width="40" height="40"><a href="https://twitter.com/CloudMavenInc" class="modimg" style="color:#7B9C4D;"><img src="https://bankconnectpackaging-dev-ed--c.documentforce.com/sfc/dist/version/renditionDownload?rendition=ORIGINAL_Png&versionId=0683j000008Eapj&operationContext=DELIVERY&contentId=05T3j00000TnBQ4&page=0&d=/a/3j000000M0QO/_kbdsH0ZJ5YcNYoXqxcMGFaIfNvaleTAQqYYxNgxkaY&oid=00D3j000000i85o&dpt=null&viewId=" width="40" height="40" style="max-width:40px;display:block; border: none;" border="0" alt="tw"></a></td> <td width="20"></td> <td width="40" height="40"><a href="https://www.youtube.com/channel/UCoVpK_sfgozJln5JHPV4f7Q" class="modimg" style="color:#7B9C4D;"><img src="https://bankconnectpackaging-dev-ed--c.documentforce.com/sfc/dist/version/renditionDownload?rendition=ORIGINAL_Png&versionId=0683j000008Eapk&operationContext=DELIVERY&contentId=05T3j00000TnBQE&page=0&d=/a/3j000000M0QK/oZ_xrzzObd70lRT.P1CsPAefK3mIqmqMHaKgHpv0JVA&oid=00D3j000000i85o&dpt=null&viewId=" width="40" height="40" style="max-width:40px;display:block; border: none;" border="0" alt="g+"></a></td> </tr> </tbody></table> </td> </tr> </tbody></table></td> </tr> <tr> <td height="22" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> <tr> <td class="em_align_center" style="font-family:&#39;Open Sans&#39;, Arial, sans-serif;font-size:12px;text-align:right;padding-left:0px;padding-right:0px;color:#ffffff;line-height:24px;font-weight:300;"> Copyright © 2020. Cloud Maven, Inc. </td> </tr> </tbody></table></td> </tr> </tbody></table></td> </tr> <tr> <td height="30" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> </tbody></table></td> <td width="30" class="em_hide">&nbsp;</td> </tr> </tbody></table></td> </tr> </tbody></table></td> </tr> </tbody></table> </td> </tr> <tr> <td height="20" style="line-height:1px;font-size:1px;">&nbsp;</td> </tr> </tbody></table></td> </tr> </tbody></table> <!--Full width table End--> <div style="display:none; white-space:nowrap; font:20px courier; color:#ffffff; background-color:#ffffff;">- - - - - - - - - - - - - - - - - - - - - - -</div> </body></html>
  • Copy the URL of the site.

  • Paste the URL in line 249 till force.com

  • From setup search for Email Templates.

  • Click on Classic Email Templates

  • Create New.

  • Select Custom(without using Classic Letterhead) option.

  • Click Next.

  • Populate the Fields.

    • Folder - Choose any folder in which you want to store your template.

    • Available for use - True.

    • Email Template Name - BankConnectEmail Template(You can populate this field with your desired name)

    • Subject - Bank Verification Required.

  • Paste the Email Template code in which we have made the changes.

  • Click Save.

Congratulations! You have successfully installed Bank Connect Application.

 

Note: We will be creating a Public site to receive all the web hooks from the Plaid. Since it will be an external User, Please make sure that the external profiles does not have access to any Object or Field permissions. 

Note : Check the Webhook URL in the Postman(Application) for every Environment Before Entering the Webhook URL in plaid Credentials.