In Salesforce, Lead is a very important record. We create leads for the sole purpose of keeping a track of people who are interested in our products. And why not these people are our potential customers. These leads are converted to account and contacts with the click of a button. However many think if we can do it with APEX code? Yes, we can with only a simple function. This is what I’ll explain, how to convert leads from APEX.

APEX code

For the purpose of this code, we will use the Database class. Create a new class in your developer console with this name ‘leadcon’, and paste the following code into it.

public class leadcon {
    public static void convert(string compName){
        list leads = [select id from lead where Company = :compName];
        list leadsToConvert = new list();
        LeadStatus convertStatus = [SELECT Id, MasterLabel FROM LeadStatus WHERE IsConverted=true LIMIT 1];
        for(lead l: leads){
            Database.LeadConvert tempLC = new Database.LeadConvert();
        list lc = Database.convertLead(leadsToConvert);
        for(Database.LeadConvertResult lctemp: lc){

Here we are putting each lead id in an individual leadconvert object and then passing the list of those ids to the convertlead method of the database class. Once this is done open the anonymous window and write the following line in it.


For the purpose of this test I am using Webkul as the company name whose leads will be converted. You may use any name you may like from your Org.


In order to test the output of my code, I have created a lead with the company name Webkul, as shown in the screenshot below.

Now I’ll run the code and check the log.

In the end, I’ll simply refresh the lead details page and see what we get.


That’s all about how to convert leads from APEX, for any further queries feel free to contact us at:

Or let us know your views about this blog in the comments section below.

Leave A Reply

Please verify that you are not a robot.

Tell us about Your Company

How can we help you with your business?

    Message Sent!

    If you have more details or questions, you can reply to the received confirmation email.

    Back to Home