By Rebecca
11 January 2023

ZAP~POST Data and Data Sources

You can have the best creative combined with the most tempting of offers, but it's useless without good quality Recipient Data. Rubbish in, Rubbish out.

No data set is perfect but ZAP~POST has removed most of the data pain points with in-built Recipient Data mapping and Data cleansing automation. Clean data is an essential part of any Marketing campaign but it’s not the whole story either. The timing of sending Zaps, where possible, should be Data led, and the relevance of the Campaign combined with the Content should equally be governed by the Customer segment in the Data Source(s).

In this section:

    • Three different methods of transferring data into ZAP~POST
      • Integrations
      • API
      • CSV upload
    • Recipient Location
    • Merging Data (from multiple sources)
    • Three stages of ZAP~POST’s Data cleansing
      • Data validation (at point of receipt)
      • Address validation (Post Code Address File (PAF))
      • Deceased & Gone Away checks
    • How ZAP~POST stores your data, and for how long
    • Data recency
    • Campaign Variables

Before we dive into some detail, it’s worth remembering a key point: ZAP~POST is Programmatic Direct Mail. Whilst it can be used for one-off campaigns, the real benefits come from connecting your CRM / CDP (“Data Source”) to the extent that, when digital events, actions or inactions occur, a Zap is sent to a Recipient. Data is therefore live and flowing into ZAP~POST on a daily basis so if it is worth doing, it’s worth doing right.

Transferring Data into ZAP~POST

You have the option of running many different campaigns simultaneously. Each campaign may require Recipient Data from different sources and it is for this reason that your ZAP~POST journey always starts with Campaigns. Once you’ve selected which campaign type you wish to run, you then have three different methods of transferring data into ZAP~POST to feed that Campaign:

    • Integrations
    • API
    • CSV upload


The best way to get data into ZAP~POST on a regular basis is via an integration with your CRM (customer relationship management) or CDP (customer data platform) “Data Source”. Automation at its finest. The concept is that your existing technology already holds the keys as to which Customers need what Campaign, and when. Connecting the Data Source to a ZAP~POST Campaign via an integration enables you to set up the automation and leave it to run.

Scenario: You have a ‘New Customer’ segment in your Data Source and you want to send every new customer a Zap two weeks after their first order.


1: Select the Campaign
2: Connect your Data Source to ZAP~POST
3: Select the ‘New Customer’ segment in your Data Source
4: Map it to the ZAP~POST Campaign
5: Set Frequency & hit ‘Publish’.

ZAP~POST will collect New Customer records from the Data Source according to the Frequency (usually once a day) and schedule a Zap to land with the Customer 2 weeks after he/she first interacted with you.

Tip: Make sure your Campaigns are split or flagged by Location, to enable you to design your Creative, Message and CTA in the correct language and tone of voice.

To set up an integration, login with your ZAP~POST account credentials, navigate to Data Sources’ and select Integrations, which will open a new tab at stackconnect, where you can connect your Data Sources to ZAP~POST.

You might not have all your data in one place in which case you’ll need to combine two or more data sets to get the required attributes. Example: Your Customer segment data is in Klaviyo, whilst Customer addresses lives only in Netsuite. There is / will be a solution to automate the merging of the two data sets and submitting to ZAP~POST.


Developers can write directly to ZAP~POST API’s which provides the most flexibility to set up multiple campaigns, particularly where there is no existing integration, or you have a custom Data Source. Obtain access tokens from the account section of ZAP~POST for both Sandbox and Live instances.

Full API documentation is available on request.


With every campaign, there is an associated Data Set. When you set up your campaign and elect to submit Recipient Data via CSV, there is an option to download a file to populate with Recipient Data. If your CSV file needs to be transformed into the ZAP~POST template model, you can try mapping it in stackconnect. Once populated, use the Upload option to submit the data into ZAP~POST. Try it with as little as one record.

Each time you successfully submit Recipient Data, the ‘transaction’ is recorded with a Submission ID. If there are any invalid records, they will be rejected at the point of submission. A list of invalid records is then downloadable, for you to correct and re-submit.

Tip: If you want to test a CSV upload, submit as little as one record and delete the submission afterwards.

Data Security

Note: Please do not send your Recipient Data to ZAP~POST via email or dropbox / equivalent. If you have a CSV file, upload it to your Campaign via the app. If you need support, chat, call or email here.

Recipient Location

ZAP~POST is geographically limited to the extent we only post in-country. This means that, if your Recipients are in the United Kingdom, we print and post from inside the United Kingdom. This serves to improve post speed and importantly, cancels air miles, meeting or improving your Sustainability credentials.

Current ZAP~POST countries:

    • United Kingdom
    • United States
    • Germany

Your Data Source (whether that be an integration, API, or CSV) must contain the Recipient Address, including Country Code.

Tip: Set up duplicate Campaigns per country and filter out Recipients who reside in countries outside of current ZAP~POST countries.

Tip: Filter by Country of Residence or Shipping Country (not necessarily Billing Country).

Recipient Data that does not meet ZAP~POST post countries criteria will not be admitted and therefore those records will be rejected at source.

Merging Data

Often, Recipient Data required to complete a successful Zap campaign resides in two or more Data Sources. ZAP~POST enables Data from multiple sources to be collected, combined and injected into ZAP~POST Campaigns.

EXAMPLE: Your Customer segment Data is in Klaviyo, whilst Customer addresses reside only in Netsuite. There are one or more common attributes that exist in both Data Sources, eg. email address, customerID.

ZAP~POST process is to query Klaviyo and establish the count and identity of the Recipients in the selected Klaviyo segment(s) and subsequently query Netsuite with those CustomerIDs in order to append the Customer address data (which does not reside in Klaviyo). The whole Data set is then submitted to the Campaign whilst any errors are handled in the validation process.

There are three ways to achieve the goal of merging data:

    • For one-off Campaigns, perhaps for the purposes of trial, we recommend organising the Data in a CSV file using the Campaign CSV template and then upload the CSV to your Campaign.
    • Update a single Data Source to contain all the required attributes and write to ZAP~POST APIs, particularly if you have a complex data structure in a Data Source which is not currently supported in stackconnect.
    • Stackconnect will enable you to connect two or more Data Sources to a single ZAP~POST campaign.  A single Data Source is a simple, no-code configuration. You can see a list of Integrations available onsite and there are a world of additional Integration possibilities with the use of Webhooks. Combining two or more Data Sources and subsequently mapping to a Campaign is entirely possible but you may need some guided support.  Please chat with your ZAP~POST account manager, or support, depending on your Plan. 

How ZAP~POST stores your data, and for how long

ZAP~POST is NOT your Data Source. It's not a CRM or a CDP, so it does not need to hold onto Data. Recipient and Campaign Data is submitted to ZAP~POST by any of the methods described above. The Data is retained for 30 days post Zap send, by default (to manage any undelivered & returned zaps). Once the data is no longer required, every field is anonymised and retained, for analytics purposes.

“In transit”, and “at rest”, Recipient Data is encrypted. ZAP~POST is ISO27001 accredited and adheres to the strictest Data Security protocols.

Campaign Variables

ZAPOLOGY equation: (Timing + Relevance + Personalisation) x Effective Content = ROI

Timing of your Campaigns is managed by Defining the Triggers.

Campaign Relevance is achieved by matching your Customer segments (or cohorts) with the right Campaign.

Personalisation is essential and made possible by using the Campaign Variables.

Every Zap Recipient is an individual. ZAP~POST give you the ability to communicate with each individual, well, individually. Campaign Variables is where the magic happens. Let’s look at how other Companies use Campaign Variables:

Screengrab (sections of zaps, no whole zaps): Loyalty points (thinking air and grace SS), Spoke anniversary, BAM refer a friend code, Spoke trouser leg length. Drying towel. Less Energy?

Campaign Variables may be applied to every Zap.  There are a series of default Variables (for fields like name and address), some pre-determined Campaign specific Variables and then there's Custom fields.  Customer fields can be used for any relevant piece of data, right down to your recipient's inside leg measurement.

Data Recency

Logically, the more recent your Recipient Data, the higher your deliverability will be. If your Campaign is an ‘Abandoned Basket Campaign’, (Campaign 1)it is more likely your Recipient Data is current and your deliverability will be high. Conversely, a ‘Lapsed Customer Campaign’ (Campaign 2) will contain Recipients who have moved on since they last interacted with you, and deliverability will be lower.

However, as a result of the Data Cleansing processes, high deliverability can be assured. ZAP~POST only sends to Recipients who are known to reside at addresses at the point of sending Zaps.

Therefore, whilst deliverability will always be high, logic dictates that using the above examples, Campaign 1 will have a higher Recipient Data submission-to-send rate than Campaign 2, whilst the sent-to-delivered rate will be the same.

Recipient Demographics is another factor to consider:

Gen Z may move home less frequently than Millenials, who also move more frequently than Gen X. Ever wondered what the classifications actually mean?:

    • The Greatest Generation born 1901-1924
    • The Silent Generation born 1925-1945
    • The Baby Boomer Generation born 1946-1964
    • Generation X born 1965-1979
    • Millennials born 1980-1994
    • Generation Z born 1995-2012
    • Gen Alpha born 2013 – 2025

ZAPOLOGY: You know your Customers better than anyone else. If you’re not sure about deliverability, the answer is to test. Take a small slice of a Customer segment you are looking to engage and send them a ZAP. Create a CSV of say 1,000 Recipient records and submit it to a Campaign and let the Data Cleansing process do the work.