Pre-populating form fields

When your supporters open a campaign, it can be beneficial if their details are already displayed in the form fields. This is known as pre-population and will mean your supporters have less typing to do, and may be more likely to submit the page.

There are several ways of pre-populating fields in campaign and fundraising pages:

  1. Use campaign links within broadcast campaign emails to supporters. When the supporter clicks on the link in their email, it will fill in any information stored in their default supporter record, for example their name and address (see below)

  2. Chain pages together via a redirect and filter or page redirect, so it remembers their details throughout their journey

  3. Add links on the thank you page of a campaign or fundraising page. Just add a link to a text block as usual and add ?chain to the end to pre-populate

  4. Or, if you wish to populate the fields using a tool other than Engaging Networks, then you can construct a URL that contains the relevant fields within it (see below)

Pre-populating form fields via broadcast emails

Using campaign links

Two things to keep in mind when pre-populating form fields from campaign links in broadcast emails are:

  • Pre-population will only work the first time a campaign link is clicked from the email (for security reasons), and not with subsequent attempts

  • Pre-population does not work in test emails on email classic, as links aren’t sent with supporter ID information contained within them from tests.

Beyond that, pre-population can be used as normal in emails, to both pre-populate form fields and user data tags in text blocks. As long as the supporter has the relevant fields populated in their supporter account, they will appear on the linked campaign page as well.

Appending custom URL parameters

If you wish, you can also add URL parameters to your campaign links. These can be used to pre-populate additional data, for example a donation amount. If you want to add additional parameters, such as transaction.donationAmt=10 to force a different default donation amount, you can do so here.

Constructing a URL to pre-populate fields

Note that it is not recommend to put personally-identifiable information into a URL. Since your browser records history of URLs, and analytics software such as Google Analytics records URLs, they are potentially storing personal information. Using a Campaign Link is the recommended way since the supporter ID is encrypted in the URL. Do not use this method to pre-populate an email address, for example.

To pre-populate the landing page without using campaign links you need to construct a URL which contains the names and values of the fields you want to pre-populate.

To do this, you add name and value pairs in the query string at the end of the URL. For example, if your petition is this URL:

https://ca.engagingnetworks.app/page/20140/petition/1

Then to pre-populate the Appeal Code as ABC123, you would do this:

https://ca.engagingnetworks.app/page/20140/petition/1?supporter.appealCode=ABC123

As you can see, the query string (that starts with ?) begins with the name of the field (supporter.appealCode) which is set to be equal (=) to the value (ABC123).

Tagged fields will always have the same name – so supporter.emailAddress is always the email address, and transaction.donationAmt is the donation amount. To pre-populate a donation page with £20, you would use a URL like this:

https://ca.engagingnetworks.app/page/52561/donate/1?transaction.donationAmt=20

If you want to populate more than one, then you would do this:

To find out the name of a field, it is best to look at the HTML of the page in your browser, using the browser’s Inspect tools. Look at the input tag and its name attribute. For example, on the example page above the opt-in radio has a name of “supporter.questions.19102”. So to make this default to Yes, you would add this to the URL:

Note that opt-ins have a value of Y or N. 

Be careful about “pre-ticking” opt-ins – check your internal consent policies before trying this.

Also note that URLs need to be “encoded”, so any spaces would translate as %20, for example. So this would populate the Appeal Code as “Facebook Ad 2019”:

There are various tools to encode text for you, for example https://meyerweb.com/eric/tools/dencoder/

Tagged field and URL Parameters

Tagged Field

URL Parameter

Tagged Field

URL Parameter

Title

supporter.title

First Name

supporter.firstName

Middle Name

supporter.middleName

Last Name

supporter.lastName

Address 1

supporter.address1

Address 2

supporter.address2

Address 3

supporter.address3

City

supporter.city

Region

supporter.region

Email Address

supporter.emailAddress

Postcode

supporter.postcode

Country

supporter.country

Phone Number

supporter.phoneNumber

Fee cover

transaction.feeCover

Donation Amount

transaction.donationAmt

Payment Type

transaction.paymenttype

Credit Card Number

Sensitive data shouldn't be passed over a URL

Credit Card Expiration Date

transaction.ccexpire

Credit Card Verification Value

Sensitive data shouldn't be passed over a URL

Card Holder Name

supporter.creditCardHolderName

Bank Account Number

supporter.bankAccountNumber

Bank Routing Transit Number

supporter.bankRoutingNumber

Bank Account Type

supporter.bankAccountType

Payment Currency

transaction.paycurrency

Recurring Payment

transaction.recurrpay

Recurring Day

transaction.recurrday

Recurring Start Date

transaction.recurrstart

Recurring End Date

transaction.recurrend

Recurring Count

transaction.recurrcnt

Recurring Frequency

transaction.recurrfreq

Recurring Period

transaction.recurprd

Tax Deductible

transaction.taxdeductible

Recognize Gift

transaction.recnzegft

Additional Comments

transaction.comments

Anonymous Donor

supporter.anonymousDonor

In Memoriam

transaction.inmem

Inform Email

transaction.infemail

Inform Name

transaction.infname

Inform Address 1

transaction.infadd1

Inform Address 2

transaction.infadd2

Inform City

transaction.infcity

Inform Region

transaction.infreg

Inform Postcode

transaction.infpostcd

Inform Country

transaction.infcount

Honoree Name

transaction.honname

Gift Reason

transaction.gftrsn

Tribute Options

transaction.trbopts

Direct Gift

transaction.dirgift

Appeal Code

supporter.appealCode

Supporter Birthday

supporter.dateOfBirth

Shipping Title

transaction.shiptitle

Shipping First Name

transaction.shipfname

Shipping Last Name

transaction.shiplname

Shipping Email Address

transaction.shipemail

Shipping Address 1

transaction.shipadd1

Shipping Address 2

transaction.shipadd2

Shipping City

transaction.shipcity

Shipping Region

transaction.shipregion

Shipping Postcode

transaction.shippostcode

Shipping Country

transaction.shipcountry

Shipping Notes

transaction.shipnotes

Shipping Enabled

transaction.shipenabled