Automating Salesforce Code Analysis with PMD Using CI/CD Pipelines

As Salesforce developers, maintaining high-quality code is crucial for ensuring robust and efficient applications. One way to achieve this is by integrating static code analysis tools into your development process. In this blog post, we’ll explore how to set up a CI/CD pipeline to automate Salesforce code analysis using PMD, a popular static code analysisContinue reading “Automating Salesforce Code Analysis with PMD Using CI/CD Pipelines”

How to Authenticate with Salesforce Using JWT

Salesforce is a powerful CRM platform, and connecting to it securely is crucial for accessing and managing data. One of the secure methods to connect with Salesforce is using JSON Web Tokens (JWT). JWT authentication is especially useful for server-to-server integrations where user interaction is not required. This blog post will guide you through theContinue reading “How to Authenticate with Salesforce Using JWT”

How to generate private key and certificate

When working with SSL/TLS and securing communications, it is essential to generate a private key and certificate. OpenSSL is a powerful and widely-used toolkit for managing these cryptographic tasks. Below, I’ll walk you through the process of generating a private key and a self-signed certificate using OpenSSL. Step 1: Install OpenSSL If you don’t haveContinue reading “How to generate private key and certificate”

Creating Named Credential in Salesforce using Outh2.0

Creating a Connected App, an Authentication Provider, and a Named Credential in Salesforce for managing OAuth 2.0 integrations involves several steps that work together to secure and simplify external API access. Here’s how to set up each component: Step 1: Create a Connected App A Connected App in Salesforce is used to integrate your SalesforceContinue reading “Creating Named Credential in Salesforce using Outh2.0”

Einstein Prediction Builder

Einstein Prediction Builder is a tool that allows you to create custom AI models directly within Salesforce, enabling you to predict outcomes based on your Salesforce data. This feature is part of Salesforce Einstein, an integrated set of AI technologies that makes the Salesforce Customer Success Platform smarter. Here’s how Einstein Prediction Builder works andContinue reading “Einstein Prediction Builder”

Einstein Analytics

Einstein Analytics, rebranded as Tableau CRM, is a sophisticated analytics and business intelligence platform that is integrated within the Salesforce ecosystem. It provides advanced AI-driven insights, making it a valuable tool for companies to understand their data deeply and make data-driven decisions effectively. Below are detailed insights into its features, benefits, setup process, industry applications,Continue reading “Einstein Analytics”

Continuous integration

Continuous Integration (CI) is a software development practice where developers frequently merge their code changes into a shared repository, ideally several times a day. Each integration is automatically tested (often using an automated build process) to detect integration errors as quickly as possible. Here’s a breakdown of the key elements and benefits of CI, andContinue reading “Continuous integration”

Salesforce Technical Architect Questions

Preparing for a Salesforce Technical Architect interview involves a deep understanding of Salesforce’s platform, architecture, and best practices. Here’s a broad set of questions divided into different categories relevant to a Salesforce Technical Architect: General Understanding & Conceptual Knowledge Salesforce Products and Features Design and Implementation Data Management Integration and Middleware Performance Optimization Testing andContinue reading “Salesforce Technical Architect Questions”

How would you handle bulk data operations in Salesforce?

Handling bulk data operations in Salesforce efficiently is crucial for maintaining performance and staying within platform limits. Here are several strategies and tools that can be used: 1. Use of Bulk API 2. Batch Apex 3. Data Loader 4. Optimizing Data Operations 5. Using Platform Events and Change Data Capture 6. Parallel Processing 7. MonitoringContinue reading “How would you handle bulk data operations in Salesforce?”

Salesforce integration with Paypal

Integrating Salesforce with PayPal can streamline payment processing, invoicing, and customer management for businesses using Salesforce as their CRM platform. Here are some common ways to integrate Salesforce with PayPal: When integrating Salesforce with PayPal, businesses should consider security, compliance, and data privacy requirements to ensure that sensitive payment information is handled securely and inContinue reading “Salesforce integration with Paypal”

How to create a scratch org with namespace in salesforce

A scratch org in Salesforce serves as a disposable and configurable Salesforce environment that you can use for various purposes, primarily for development and testing. Here are some reasons why scratch orgs are valuable: Overall, scratch orgs are essential tools for Salesforce developers and administrators to streamline development processes, enhance collaboration, and ensure the qualityContinue reading “How to create a scratch org with namespace in salesforce”

Implementing reCAPTCHA v3 in Salesforce

Implementing reCAPTCHA v3 in Salesforce involves integrating the reCAPTCHA v3 API into your Salesforce org to add an additional layer of security to your web forms and prevent spam or abusive bot traffic. Here’s a step-by-step guide to implementing reCAPTCHA v3 in Salesforce: Replace YOUR_SITE_KEY with your reCAPTCHA site key. Replace YOUR_SITE_KEY with your reCAPTCHAContinue reading “Implementing reCAPTCHA v3 in Salesforce”

How to revert git repository to previous commit?

Problem: Sometimes, we commit code mistakenly in the branch and we want to remove the mistakenly committed code. Solution: We can use the git reset command to reset our changes to commit id up to which we want to revert our code changes using below three steps (git commands)- git log –oneline Use this commandContinue reading “How to revert git repository to previous commit?”

OAuth 2.0 Web Server Flow for Web App Integration (SFDC, Salesforce)

Problem: User want to create contact in one salesforce org from another salesforce org and as a web developer we don’t want to expose user’s credentials to the web application otherwise owner of the web app/hacker may misuse this information if web application is not much secure. Solution: We will use web server flow inContinue reading “OAuth 2.0 Web Server Flow for Web App Integration (SFDC, Salesforce)”

Building Resilient Integration in case error occurs during execution of batch Apex Class

When you are integrating with external system using Batch Apex, you can implement Database.RaisesPlatformEvents interface to generate BatchApexErrorEvent event which external system can subscribe to listen in case of error. Streaming API Subscription Channel: /event/BatchApexErrorEvent Example: Listening to the event using trigger: Test Class: Note: Please don’t forget to use ‘Test.getEventBus().deliver();’ to fire platform eventContinue reading “Building Resilient Integration in case error occurs during execution of batch Apex Class”

Preparation for Salesforce Integration Architect Exam Certificate

Topics Weightage No of Questions in exam Evaluate Current System Landscape 8 5 Evaluate business needs 11 7 Translate needs to Integration Requirements 22 13 Design Integration Solutions 28 17 Build solution 23 14 Maintain Integration 8 5 Weightage of Topics Please refer below trailhead for preparation of above topics- https://trailhead.salesforce.com/en/users/strailhead/trailmixes/architect-integration-architecture

Single Sign On(SSO) – Salesforce To Salesforce

We will be connecting one salesforce org (identity provider) to another salesforce org (service provider) using SAML. Let’s jump to the steps with screenshots to understand this better – Do this in Identity provider Org: Enable Identity provider & Download the certificate– Go to Setup -> Identity Provider Click on ‘Enable Identity Provider’. Select existingContinue reading “Single Sign On(SSO) – Salesforce To Salesforce”

Outbound Messaging

Outbound messaging uses the notifications() call to send SOAP messages over HTTP(S) to a designated endpoint when triggered by a workflow rule. Outbound endpoints are continuously listening for the events. What is outbound Message? Is a notification() SOAP API call A single SOAP message can include upto 100 notifications. Each notification contains the object ID and aContinue reading “Outbound Messaging”

Integration Design Patterns

We use following integration patterns in salesforce- Request & Reply – Salesforce need to wait for response to complete the process. Fire & Forget – Salesforce calls the remote system, but doesn’t wait for the call’s successful completion. Batch Data Synchronization – Data Replication/Synchonization between systems which is done in a batch manner. Remote Call-InContinue reading “Integration Design Patterns”

Salesforce Integration Patterns

Salesforce Integration Patterns Overview: Over the years, developers around the world have developed some patterns to solve common integration problems, we call them Integration patterns. Same is the case with salesforce when we want to integrate salesforce with other systems. We have some predefined patterns in salesforce, we call it Salesforce Integration Patterns. Usually oneContinue reading “Salesforce Integration Patterns”

Data Virtualization (Integration design pattern)

Salesforce accesses external data in real time. This removes the need to persist data in Salesforce and then reconcile the data between Salesforce and the external system. Solutions: Use Salesforce Connect to access data from external sources, along with your Salesforce data. Pull data from legacy systems such as SAP, Microsoft, and Oracle in realContinue reading “Data Virtualization (Integration design pattern)”

UI Update Based on Data Changes (Integration design pattern)

The Salesforce user interface must be automatically updated as a result of changes to Salesforce data. Solution: This solution is composed of the following components: This solution has the following limitations: This solution has the following benefits: For all Design Patterns, please refer this.

Remote Call-In (Integration design pattern)

Remote system make callout in salesforce to create, retrieve, update, or delete records. Solutions: Salesforce provides a SOAP/REST API that remote systems can use to: The client executing SOAP/REST API must have a valid login and obtain a session to perform any API calls. The API respects object-level and field-level security configured in Salesforce based onContinue reading “Remote Call-In (Integration design pattern)”

Batch Data Synchronization (Integration design pattern)

Data Replication/Synchonization between systems which is done in a batch manner. Solutions: Salesforce Change Data Capture publishes change events, which represent changes to Salesforce records. With Change Data Capture, you can receive near-real-time changes of Salesforce records, and synchronize corresponding records in an external data store. Change Data Capture takes care of the continuous synchronizationContinue reading “Batch Data Synchronization (Integration design pattern)”

Fire and Forget (Integration design pattern)

In this integration pattern, Salesforce calls the remote system, but doesn’t wait for the call’s successful completion. Solutions: No customization is required in Salesforce to implement platform events. This is the recommended solution when the remote process is invoked from an insert or update event. External apps can listen to event messages by subscribing toContinue reading “Fire and Forget (Integration design pattern)”

Request and Reply (Integration design pattern)

In this Integration pattern, Salesforce need to wait for response to complete the process. Solutions: Point & Click based integration from Lightning Flow. External System should provide Open API or should have extragent schema. Click this for trailhead Exercise. Salesforce enables you to consume a WSDL and generate a resulting proxy Apex class. A user-initiatedContinue reading “Request and Reply (Integration design pattern)”

Creating a record using Rest Explorer(Workbench) in Salesforce

I hope you are comfortable with rest api. So if you want to access/update the salesforce data, you can do that using standard salesforce rest api end point. So if you want to test this end point for data access/update, you can test that using workbench which is very simple and straigh-forward way. So let’sContinue reading “Creating a record using Rest Explorer(Workbench) in Salesforce”