ACC | Installing Adobe Campaign Classic on Debian

Psst! Listen up, fellow campaigners! Did you know that you can actually install Adobe Campaign Classic locally and it won’t cost you a penny? Of course, you won’t be able to run actual marketing campaigns with it, but you can use it as your personal development playground. It’s like having a sandbox, but for grown-ups. […]

Continue reading...

Marketing Automation, Salesforce Marketing Cloud, SFMC Tips & Tricks

SFMC TIP | How to Link Journey to Delivery

1 minute read

In Salesforce Marketing Cloud, you can link the customer journey to delivery using data views. Custom views that contain e.g. all tracking information. Here are some steps you can follow to link the journey to delivery using data views: This SQL view will return data such as the subscriber key, event date, journey and activity […]

Continue reading
SFMC tips and tricks
ACC Tips & Tricks, Adobe Campaign

ACC TIP | How To Convert Base64 to PDF attachment

1 minute read

In this article, I will provide a simple trick for converting Base64 encoded data to PDF using JSAPI in Adobe Campaign Classic. Due to AC’s inability to attach Base64-encoded files directly to emails, this method can prove to be highly useful. Base64 data format that would be easy to use when supperted by Adobe Campaign […]

Continue reading
Adobe campaign tips and tricks

ACC | Implementing DKIM

Adobe Campaign, Marketing Automation
2 minutes read

Have you ever wondered how to implement DKIM in Adobe Campaign Classic, look no further here is how you can do it. Implementing DKIM for Adobe Campaign Classic, gave many hard times as there is no official documentation you can follow step by step. But nothing is lost, it is easier than you may think.

DKIM – DomainKeys Identified Mail – is digital signature added to email messages, for sender authorization. Receivers often look for DKIM when looking for spam messages.

To implement DKIM we have to create a pair of keys, public and private. Public key will be published using DNS TXT record and private will be used by Adobe Campaign.

First we need our certificates

On linux based machines generate keys is matter of two commands. On windows you can download PuttyGen or similar tool.

Private key

openssl genrsa -out private.pem 2048

Public key

openssl rsa -in private.pem -out public.pem  -pubout -outform PEM

Now that we are equipped with fresh key pair we will need to add the private part on our adobe campaign instance. We let Adobe Campaign know to use DKIM by setting option with exact naming convention:

selector_RSA_PRIVATE_KEY_email.domain.com

Another setting that needs to be configured in order to have fully functional DKIM email verification is to enable to use DKIM for selection of domains. This is set under the

Administration > Campaign management > Non deliverables Management > Mail rules sets -> Domain management 

EDIT: Sender ID is not needed. On the other hand in order to DKIM work as expected you need to also check the DomainKeys option although the documentation says you do not have to as it is predecessor to DKIM.

What happened if domain keys were not checked, adobe campaign (somewhere) added sender header with default error address set in deployment wizard. Which looked not really appealing at least not in outlook email browsers.

DKIM – Management of email domains setting

Also enable TLS option on your Adobe campaign instance that has MTA servers are running. This is set in main server configuration  – serverConfig.xml. Look for smtp option.

<smtp enableTLS="true" idleSessionTimeoutSec="5" initialDelaySec="4" maxSessionsPerChild="1000">

Provide your selector along with the public key to the infrastructure team so they will add it to the DNS TXT record type. Below you can find example set of all TXT records needed for achieving good deliverability

TXT DKIM
Hostname: selector._domainkey
v=DKIM1; k=rsa; p=public_key
_dmarc		IN TXT		"v=DMARC1; p=reject; pct=100;"
 "v=spf1 include:domain.com -all"

Some ESPs also really like PTR records which is basically a pointer from IP address to the domain name

If everything above is set and confirmed by the infrastructure team we need to restart the MTA servers and send our selves a test email.

In the email headers you should be able to see something like:

ARC-Authentication-Results: i=1;
	relay.mimecast.com;
	dkim=pass header.d=example.com header.s=selector1 header.b=xxxxx;
	dmarc=pass (policy=quarantine) header.from=example.com;
	spf=pass (relay.mimecast.com: domain of sender@example.com designates xxx.xxx.xxx.xxx as permitted sender) smtp.mailfrom=error@example.com
Received: from example.com

Great tool to check if all is set in DNS correctly is DIG found in google admin toolbox at https://toolbox.googleapps.com/apps/dig/

More relevant information can be also found here https://experienceleaguecommunities.adobe.com/t5/adobe-campaign-classic-questions/how-to-implement-dkim-and-dmarc-record-in-adobe-campaign/m-p/240789

SFMC tips and tricks
Marketing Automation, Salesforce Marketing Cloud, SFMC Tips & Tricks

SFMC TIP | Redirect error inside try catch

1 minute read

If you have Redirect function inside the try catch block, either as mixture of SSJS with AMPScript or only in SSJS, it will throw an 500 – Internal Server Error. Let’s take a look on few examples what can create an error that will take you some quality debugging time to figure it out. And … Read more

Continue reading
SFMC tips and tricks
Marketing Automation, Salesforce Marketing Cloud, SFMC Tips & Tricks

SFMC TIP | Column names with suffix _dat, _call, _from fail to validate

less than a minute read

Data extension column names with _dat, _call, _from, _join suffix will fail to validate, due to using old style JOIN The fix is really easy you only need to wrap the column name like [test_from] and the problem with validation is history If you know more suffixes that will throw an error let me know

Continue reading
Computer workplace
Building the blog, Wordpress

Beware! Work in progress

1 minute read

Page is in the works and, therefore you might see it changing time to time or perhaps sometimes experiencing weird errors. It’s all good it’s part of this project and the journey to get a blog and I am on the road to document it all. February 2022 Recaptcha v3 updated as spam still happened … Read more

Continue reading
SFMC tips and tricks
Marketing Automation, Salesforce Marketing Cloud, SFMC Tips & Tricks

SFMC TIP | Error updating filter

less than a minute read

If you’re using Email Studio in Salesforce Marketing Cloud and receive an ‘Error: updating filter’ message when creating a new Data Extension, it’s likely because the name you’ve chosen already exists. This error message can be misleading, but a simple solution is to rename the Data Extension with a more unique identifier. Make sure to … Read more

Continue reading
Marketing Automation, Salesforce Marketing Cloud

SFMC | Adding reCAPTCHA to cloud page form

3 minutes read

Last time we implemented recaptcha for this blog that is build on WordPress CMS. You can read the article here. Today I will show you, how to implement same recaptcha from google but on Salesforce Marketing Cloud Pages. To register your cloud page, you will need to register each domain separately, visit  google recaptcha and … Read more

Continue reading
Building the blog, Wordpress

WP | Adding reCAPTCHA to wordpress page

4 minutes read

As owner of a blog that is around for a while with any traffic, you will find sooner or later annoying amount of spam comments taking your blog by storm. If the akismet is not your cup of tea and you do not want to pay for possible license (commercial use), then I can show … Read more

Continue reading
Programing editor
Building the blog

Building blog from “scratch”

1 minute read

This is the first post from the series on how I built, or more precisely on how I will build this blog. Before you will start to build your own blog, well right after you chose your hosting provider and buy your domain, you will have to decide technology, CMS or blogging platform. Of course … Read more

Continue reading
Hello world!
Building the blog

Hello world!

1 minute read

This is the martechnotes’ first post. So why not start by saying something about who we are and what you will find on our blog. We are MarTech (Marketing Technology) professionals and we have been working for 8+ years in this industry. As my father used to say: Professional is somebody who gets paid for … Read more

Continue reading