Linking Opportunities to Companies in Marketo

John_M
Marketo Employee
Marketo Employee

In Marketo Opportunities are linked to Leads via the Opportunity Person Role typically. You can peruse the Opportunity REST API here and see what's possible. Often times though, customers express that for their business case, Opportunities should be linked to Accounts (which I'll use interchangeably with "companies" from the Marketo perspective) instead, which poses a problem.

To address this, we have a hidden feature that can be turned on which enables a new filter called "has Opportunity Account" which enables you to pull back a list of leads that have an opportunity with and also have a given companyID. Note, however that this is ONLY available in Marketo instances that are not natively integrated with Salesforce or Microsoft Dynamics CRM

Cool! How Does it Work?

Im glad you asked. The basic data model is illustrated below.

Screen Shot 2015-12-03 at 9.17.54 AM.png

Fig 1 - Opportunities associated with Companies

So to get this to work there are a few things you need to know, do, and keep in mind.

  • There is currently no concept of a many to one relationship for companies to leads in Marketo
  • You must populate the list of Companies using the Company REST API.
    • This API is only available when you are NOT natively synched to Dynamics or Salesforce.
    • This API allows you to create a one to many relationship between Company and Lead, similar to the model in Dynamics and Salesforce.
    • The "externalCompanyID" you establish will serve as the link to the Opportunity and the Lead
  • You have a filter, but NOT a trigger, meaning you can create a smart list, but not trigger a campaign.

Once the Companies are set up properly set up with Leads, you can begin adding opportunities for those Leads using Create/Update/Upsert Opportunities being sure to add the "externalCompanyID".

That's it! youll then be able to use the "has Opportunity Account" filter to build a smart list!

2939
6
6 Comments
Abaran
Level 5

Hello John

Has anything be developed to be able to do this when the Marketo instance has been integrated with SFDC?

I am looking to pull opportunity reports or Smart list on all Active opportunities regardless of having a contact role of not on the account. if there a solution for this?

Thanks

Axel

Anonymous
Not applicable

Axel,

Not sure if this is the answer, but have you tried populating a custom object in Marketo?

Grégoire_Miche2
Level 10

Hi Axel,

Vote here :

-Greg

Grégoire_Miche2
Level 10

Hi Michael,

the opportunity object is not available for sync as a custom object.

-Greg

Anonymous
Not applicable

Couldn't you do this through the API?

Grégoire_Miche2
Level 10

Hi Michael,

No, the Opportunity API only works when there is no CRM bound to Marketo.

-Greg