First steps
User Data
- Responsive Email Editor Review
- Designing your email
- Creating Synchronized Modules
- Setting Up Responsive Email Design
- Setting Up Smart Containers
- Creating a Gmail Promotions Annotation
- Adding The Rollover Effect
- Adding Anchor Links
- Module Library
- Adding a Table to an Email
- Adding Custom Fonts
- Creating CTA Button
- Working with Images
- Creating Timer
- Using AI in the Email Editor
- Messenger Protocol Support in Email Clients and Platforms
Omnichannel
- Setting Up Widgets for Your Site
- Widget Calling
- Setting Up Locations for the Widget Calling Rules
- Storing data from widgets to contact fields
- Using Annoyance Safeguard
- Actions After Form Submission
- Replacing Double Opt-In System Workflow
- Creating Pop-ups via Google Tag Manager or WordPress
- Sending Yespo Widget Events to Google Analytics
- Using A/B Tests for Widgets
- Collecting Contact Information Using Request Forms
Automation
- Building and Editing Workflows
- Configuring Workflow Start/Stop Conditions
- Start Block
- Popular Blocks
- Message Blocks
- Using One from Many Message Block
- Contact Blocks
- Conditions Blocks
- Other Blocks
- Message to Segment Blocks
- Time Blocks
- Advanced Workflow Block Parameters
- Setting Up Allowed Send Time
- Using Workflow Launch History
- Webhook Workflows
- Workflow Troubleshooting
- Double Opt-In
- Welcome Сampaign
- Welcome Series Segmented by Category
- Launching a Workflow After a Contact Import
- Regular Workflow for a Segment
- Birthday Campaign
- Linking Workflow to the Button
- Using Variables from Order in Workflow
- Collecting Order Feedback
- Customer Reactivation
- Sending Extra Campaigns
- Sending Reminders at the Time Specified by the User
- Sending Campaign to Those Who Did Not Open the Previous One
- Using A/B Tests In Workflows
Personalization
Analytics
- Email Campaign Report
- Web Push Campaign Report
- Viber Campaign Report
- Mobile Push Campaign Report
- App Inbox Campaign Report
- Telegram Campaign Report
- In-App Report
- Widget Report
- Triggered Campaign Report
- AMP Campaign Report
- SMS Campaign Report
- Multilingual Campaign Report
- Setting up UTM Tags
- Revenue from Campaigns
- Tracking Campaign Performance in Google Analytics 4
- Message Analytics
Multilanguage Campaigns
Events and Behaviour Tracking
Recommendations
API
Security and Compliance
Passing Promo Codes from Messages to Contact Cards
The HTTP request data source allows you to send a unique promo code from a trigger message, record it to a contact card, or pass it to your server. Thus, you can automatically fix which particular promo code one or another of your subscribers received.
Setting process:
1. Generate and upload a file with promo codes to your eSputnik account.
2. Create an additional field for contact cards in which the promo code will be recorded.
3. Connect the HTTP request data source in your eSputnik account.
4. Prepare a message with velocity variables to transfer promo codes.
5. Create a workflow by which a message will be sent, and a promo code will be transmitted.
1. Uploading a file with promo codes to eSputnik
Prepare a list of promo codes in the following format:
Mandatory fields of the table with promo codes:
- “code” — promo code in any format;
- “expirationDate” — date and time of promo codes expiration in the format 2017-12-31T23:59;
- “discount” — promo code value from 0 to 99;
- “type” — an arbitrary name of the promo code type;
- “inUse” — a flag indicating whether a promo code has been used or not (true/false).
2. Adding additional field Promo code to contact cards
Read more on the creation of additional fields in the instructions. After creating an additional field, copy its ID - you will need to specify it in the body of the JSON request as a field for recording the corresponding promo codes.
3. Connecting HTTP request
1. Go to your account settings -> Data sources -> New data source -> External data sources.
2. Select the HTTP request external data source.
3. Set the arbitrary source name.
4. Select the POST protocol type and specify the protocol https://yespo.io/api/v1/contact. This API resource will update the data of the contacts participating in the campaign, adding the received promo codes to contact cards in eSputnik. If you need to update the contact information in your system, specify the appropriate protocol.
5. Activate the Pass JSON in the request body switcher and enter the request body in the corresponding field:
{
"channels": [
{
"type": "contact unique identifier: email, sms or mobilepush",
"value": "$data.get('contact_unique_identifier')"
}
],
"fields": [
{
"id": "ID of the contact card field created at the previous stage, where the promo code will be recorded",
"value": "$data.get('promocode')"
}
]
}
4. Message creating
This functionality works in each of the channels available in the eSputnik system. We will demonstrate how to set it up using a mobile push notification as an example.
1. Set an arbitrary name for the message.
2. Fill the message with the necessary content. Add a velocity variable to it, which will provide data exchange with the HTTP request external data source.
Construction syntax:
#set($url=$!data.get('your data source name'))
In the message body where the promo code should be substituted, specify the variable in the following form:
$!data.get('promocode')
Contacts who receive the message will see it like this (depending on the OS of the mobile device):
5. Workflow creation
The workflow should have 5 required blocks:
1. The Start block.
2. Get contact task — the block extracts contact data from the eSputnik database, including the contact’s token to which the push will be sent.
3. Get promo code task — the block retrieves the promo code from the previously loaded list to insert it into the message. This task must have 3 required parameters:
- days — number of days for which the promo code must be valid;
- type — the specified type of promo code from the previously loaded list;
- discount — the amount of discount.
4. The message block.
5. The End block.
More on setting up workflow blocks >>
Set the workflow launch conditions and activate it. Each promo code received in a message by this workflow will be recorded in the card of the corresponding contact.