Salesforce | Poplar Custom Activity (Journey Builder)


  • You must have Salesforce Marketing Cloud (SFMC).
  • You must have organization access to Salesforce Journey Builder.
  • You must be a Salesforce administrator to be able to install the Custom Activity for your organization.
  • You will need a Custom Activity URL (obtained in Poplar) to perform the installation in Salesforce.

The Poplar Custom Activity was built with Data Extensions as the main intended entry source

Part I: Setting Up Your Custom Activity

Poplar’s Custom Activity lets you pass a contact from Salesforce Journey Builder to Poplar as part of your Salesforce Journey, and send that customer a postcard or letter.


Generate Custom Activity URL in Poplar

Navigate to the API page of your Poplar account and click Get Custom Activity URL under the Salesforce tab:

This URL is unique to your Poplar organization and is essentially your "key". Do not share this URL with anyone outside the organization.


Install Custom Activity in Salesforce

Log into Salesforce Marketing Cloud and hover over your profile icon to access Settings > Setup. Under the left-hand navigation, click into Platform > Apps > Installed Packages:

Click the New button in the top right corner and give the new package a recognizable name, then hit Save:

Next click Add Component and you'll want to select the Journey Builder Activity component type:

Set your Journey Builder Activity Properties with a recognizable name and Messages as the Category. Then head back to Poplar to copy your Activity URL and paste it into the Endpoint URL field:

Hit Save then copy your JWT Signing Secret (NOT the "Unique Key") and paste it into Poplar under Step 3 and hit Save:

Part II: Data Extension Setup

Data Extensions hold your audience member attributes, which will be mapped to corresponding values in Poplar during the trigger request (i.e full name, address 1, address 2, city, etc.).

If you already have a Data Extension set up, skip to Part III. Otherwise follow the setup instructions linked below:

Data Extensions

If you are new to using Data Extensions in Salesforce, the Salesforce Trailhead module can be used as an additional reference.

Part III: Journey Setup with the Poplar Custom Activity

Now that you've installed the Poplar Custom Activity, it's time to use it in a journey! While building your Journey, you'll see the option to switch between Test and Production in Step 5 - we highly recommend starting in a Test environment so you can fire the trigger without actually sending any mailers.


Create a New Journey

From your SFMC dashboard, navigate to Journey Builder and click Create New Journey.

For this type of flow, select Multi-Step Journey.


Step 4: Add Your Data Extension

The Poplar Custom Activity was built with Data Extensions as the main intended entry source. Drag and drop Data Extension into the Entry Source step, then click on the grey icon to select your Data Extension.

For demonstration purposes, we'll be selecting the Poplar_DM extension from the Data Extension Setup tutorial.

Make sure your Data Extension contains record that can be used to test the integration connection.


Configure Fields to S Pass to Poplar

Under Activities, select the Poplar Custom Activity from the Messages section and drag it into your Journey to reflect when you'd like to trigger a mailer. 

 As mentioned, we recommend selecting a Test environment so no real postcards are sent when testing the trigger. Once you've confirmed the connection is successful, you'll come back and switch to the Production environment to go live.

In each of the fields in the Poplar Custom Activity config, you need to reference the data columns from your selected Data Extension using the following syntax:


Once you've mapped all the fields and selected your campaign, hit Done.

Custom Merge Tags

If your creative contains custom merge tags, you'll want to make sure that data is also stored in your Data Extension. Expanding on the example above, say the Data Extension also contains LTV and code attributes:

first_name last_name address_1 LTV code
Jane Doe 123 Main Street $200 WELCOMEBACK20
James Bond 890 M16 Street $250 WELCOMEBACK25

To map the SFMC code attribute data to the {{}} merge tag in your Poplar creative, you'd want to set the Merge Tag Key to promo-code and the Merge Tag Value to {{Contact.Attribute.Poplar_DM.code}} as pictured below:

Step 6: Schedule, Save & Validate

Before activating, you must set your Schedule settings. Click Schedule and select the Run Once option:

On the next screen, click Edit to select the Entry mode. For demonstration purposes, we'll be selecting On activation:

Click Done to close out the Schedule settings. Next, click Validate in the top right to Edit the Settings for your Entry Mode values:

The key here is to specify whether or not a contact can re-enter a Journey. When testing, we recommend selecting Re-entry anytime. Click Done to return to the Validation Results screen, the click Revalidate and Save.

Part IV: Activate Journey

If your Journey is in Test mode, you can safely activate without actually sending any mailers. After confirming the triggers are successfully coming through to your Poplar campaign's History tab, you can switch to Production mode and Activate your trigger to go live!

Hitting the Test button that brings you to the "Choose Contacts" page does not test the trigger connection, it only checks your data within SFMC.


Activate & Test

Once you've completed your setup and returned to the Journey dashboard, you're ready to test the trigger connection by clicking Activate!

Head to Poplar, click into your campaign and head to the History tab to see the successful test triggers come through:

Click into one of the Test mailers and scroll down to the Request Details to make sure all your data is coming through and mapping correctly.


Switch to Production

Once data is flowing through correctly and to your specifications, head back to the Journey, Pause it, and click the Poplar Custom Activity to switch to your Production environment (create a new Version of the Journey if necessary).

Finally, Activate your Journey again to go live in Production!

Other Entry Sources

Other entry sources into journeys using the Poplar Custom Activity remain untested. If you are interested in leveraging other entry sources, let us know at You can also contact your Salesforce Account Executive for help on finding out how to reference your specific dataset in the journey.

Common Questions

What is the Salesforce JWT signing secret?

This is a secret generated by Salesforce pertaining to the Custom Activity that you've just installed. Salesforce sends over this secret every time it sends information to the Custom Activity, in our case, sending recipient information to trigger a mailing in Poplar.

Because you've shared the secret with Poplar, we can use that to check against what Salesforce sends us, in order to confirm that it's really Salesforce and not a bad actor attempting to overtake your Poplar account & funds.

Why don't my teammates have access to the Custom Activity?

You must " license" the Custom Activity to everyone in your org in order for them to be able to use it. You can do so underneath the settings for the Installed Package:

How do I specify which creative to use?

You don't need to specify a creative in your Salesforce config. Rather, you will manage all creative rules in Poplar. The Poplar Custom Activity will randomly use an active creative in your selected campaign according to the following rules:

  • If there is a default creative, we will use the default creative.
  • If you have NOT set a default creative for the campaign, we will randomize amongst all the active creatives in the campaign.

To set a creative as the default, click Set As Default when you click into the creative.

What is a Salesforce Data Extension?

A Salesforce Data Extension is a relational database table used to store additional Subscriber-related data in Salesforce. It contains custom columns defined by you or your organization. It can be used as the data entry source in an SFMC Journey Builder journey.

Why is there no data passing through to Poplar?

The way your Data Extension is set up may affect whether or not you can pass data through the journey using the syntax {{Contact.Attribute.<data-extension-name>.<attribute-name>}}.  

You must bind your Data Extension to the Salesforce contact in order to be able to access the data extension's columns in your journey. Learn more about a successful Data Extension setup.

If your Data Extension name or attributes have any spaces, for example "My Data Extension" or "First Name", you need to wrap it in quotation marks:

{{Contact.Attribute."My Data Extension"."First Name"}}

Accessing Data Extensions from the Journey Event

If you don't have the ability to change the Data Extension setup, you can also try this alternative way of accessing the attributes that are passed from the Data Extension into a journey.

In each of the fields in the Poplar Custom Activity config, you can reference the columns (aka attributes) from your selected Data Extension using the following syntax:

{{Event.<insert event-id-here>.<my-data-extension-column-name>}}

Here's an example to illustrate. Say your Data Extension looked like the table below. You'd use {{Event.<insert-event-id-here>.promo-code}} to pass the promo code with a value of WELCOMEBACK20 for Jane Doe and WELCOMEBACK25 for James Bond to Poplar.

first_name last_name address email LTV promo_code
Jane Doe 123 Main Street $200 WELCOMEBACK20
James Bond 890 MI6 Street $250 WELCOMEBACK25

To grab the event-id , right click to inspect the page code after setting up your Data Extension in Journey Builder and search for "DEAudience". Copy and paste the id into your Poplar configuration entry field. 

The code typically looks like this when you inspect it:

<li data-value="{{Event.DEAudience-ab1c2de3-456f-7ghi-8901-etc."Email"}} ...

DEAudience-ab1c2de3-456f-7ghi-8901-etc would be your event-id.

Note: If you change the Data Extension you are using for this journey, you need to inspect the code again and grab the new event-id related to the new Data Extension. 

Do you charge additional costs for using the Custom Activity?

In short, no. The Poplar Custom Activity is currently provided free of any SaaS fee. You only pay the flat rate for each piece you mail.

Still need help? Contact for assistance.