FrontRunner
Learn how Anedot maps donation data to FrontRunner using donation_completed event relays, including key field differences and compatibility with standard webhook structures.
FrontRunner is a campaign finance management platform built for political treasurers. It provides advanced financial reporting, donor management, and compliance tools to support political campaign operations.
Table of Contents
Connecting Anedot to FrontRunner
Follow these steps to set up the integration:
-
In your Anedot account, go to Settings > Integrations > Directory.
-
Click + New Connection in the upper right corner.
-
Select FrontRunner from the integration directory.
-
Choose which Action Pages to sync:
-
All pages are selected by default.
-
To exclude pages, enter their Action Page IDs (comma-separated).
-
-
(Optional) Limit the sync to a specific Team.
-
Enter your FrontRunner Token.
-
Click Save to complete the connection.
Integration Endpoint:
https://webhooks.frontrunner.app/anedot/actionpages?accessToken={inputted_token}
You can update Action Pages, Team scope, or credentials at any time post-setup.
Data Relays
-
Anedot relays financial page data to FrontRunner.
-
Non-financial data and donation_settled events are not supported.
-
-
The following values can be passed via URL parameters:
-
Custom Field data
-
Source Codes
-
Viewing Data in FrontRunner
After a successful relay, you can access synced data directly in your FrontRunner dashboard:
View Transactions
-
Go to Dashboard > View All Receipts
or visit:https://frontrunner.app/filer/contributions
-
Filter and review all new and existing transactions.
Note: Negative values indicate reversals (e.g., voids or refunds).
View Imported Contacts
-
Go to Dashboard > Contacts
or visit:https://frontrunner.app/filer/contacts
-
View new donor records or filter existing contacts created from Anedot donations.
Field Mapping
Relay Fields
Anedot fields correspond to the Submission’s Raw Data, while FrontRunner fields reflect the Request Body of the relay.
Field mappings are based on data from donation_completed
events.
Key Differences in donation_completed
vs. Other Events
-
Included Only in
donation_completed
anddonation_voided
:-
donation.anedot_fees.amount
-
-
Excluded from
donation_completed
:-
utm_codes
-
organization
-
These relays mirror Anedot’s standard webhook structure. For additional reference, consult the webhook documentation.
Anedot Field | FrontRunner Field |
---|---|
“donation_completed” | event |
createdAt | date |
“[firstName] [lastName]” | name |
phone | phone |
title | title |
origin (Donation) | origin |
source (Donation) | source |
status (Donation) | status |
suffix | suffix |
donation (object) |
donation [object, multiple values] |
referrer | referrer |
**utmCodes {term} | utm_term |
frequency | frequency |
lastName | last_name |
firstName | first_name |
ipAddress | ip_address |
amount (x100) | net_amount |
occupation | occupation |
updatedAt | updated_at |
**utmCodes {medium} | utm_medium |
**utmCodes {source} | utm_source |
accountId | account_uid |
middleName | middle_name |
sourceCode | source_code |
**utmCodes {content} | utm_content |
accountName | account_name |
address {city} | address_city |
checkNumber (Donation) | check_number |
createdAt | date_iso8601 |
amount (x100) | event_amount |
**utmCodes {campaign} | utm_campaign |
employerName | employer_name |
(Submission) id | submission_id |
actionPageId | action_page_id |
address {line1} | address_line_1 |
address {line2} | address_line_2 |
address {region} | address_region |
(Commitment) id | commitment_uid |
address {country} | address_country |
actionPageName | action_page_name |
donorProfileId | donor_profile_id |
referrerToForm | referrer_to_form |
amount (x100) | amount_in_dollars |
paymentMethodId | payment_method_id |
createdAt | created_at_iso8601 |
currenlyEmployed (“true” or “false”) | currently_employed |
updatedAt | updated_at_iso8601 |
address {postalCode} | address_postal_code |
Payment Method | payment_description |
custom_field_responses {object, includes: {custom field name} {custom field response value}] |
custom_field_responses [object, multiple values] |
is_recurring_commitment (“true” or “false”) | is_recurring_commitment |
schedule_until (Commitment) | commitment_recurring_until |
communicationsConsentEmail (“true” or “false”) | communications_consent_email |
communicationsConsentPhone (“true” or “false”) | communications_consent_phone |
**UTM fields can be added to the Page URL.
Payload Data
Request Headers
{
"User-Agent": "Anedot-Hookshot/efbe304",
"X-Request-Id": "5866cfc6-80b5-48cf-84ee-112706fe7eff",
"X-Integration-Id": "45199875-b029-418f-a963-2bf9e876d80e",
"X-Integration-Event": "donation_completed",
"X-Request-Signature": "e60410ed74a3813e53a579c7561757cebe8824bcab0ff101d41eba7035210591"
}
Request Body (Donation Completed)
{
"event": "donation_completed",
"payload": {
"date": "2023-05-19 21:16:55 UTC",
"name": "Annie Dot",
"email": "annie@anedot.com",
"phone": "12252501301",
"title": "",
"origin": "hosted",
"source": "credit_card",
"status": "completed",
"suffix": "",
"donation": {
"id": "d6b2fcd4406f382b4c23a",
"fees": {
"anedot_fees": {
"amount": "4.30"
},
"vendor_fees": []
},
"fund": {
"id": "5181b4d8-6075-4c69-8fe7-64d921a86639",
"name": "General Fund",
"identifier": "1001"
},
"products": [],
"card_type": "master",
"card_last_digits": "5454",
"donation_project": "",
"credit_card_expiration": "05/2023"
},
"referrer": "https://secure.anedot-sandbox.com/09388ffc-9f3f-43ee-855a-1f70c7a9b764/e36d4264-b96b-4b77-9e01-3dac28e9914a",
"utm_term": "",
"frequency": "once",
"last_name": "Dot",
"recurring": "false",
"created_at": "2023-05-19 21:16:54 UTC",
"first_name": "Annie",
"ip_address": "64.152.236.103",
"net_amount": "95.70",
"occupation": "",
"updated_at": "2023-05-19 21:16:55 UTC",
"utm_medium": "",
"utm_source": "",
"account_uid": "aa3480c1cb0b039147824",
"middle_name": "",
"source_code": "",
"utm_content": "",
"account_name": "The Charitable Foundation",
"address_city": "New Orleans",
"check_number": "",
"date_iso8601": "2023-05-19T21:16:55Z",
"event_amount": "100.00",
"organization": "",
"utm_campaign": "",
"employer_name": "",
"submission_id": "86e93be1-3b10-43d5-bf25-cc177377ff6a",
"action_page_id": "00c7b970-c269-4062-979e-b7aa939995fe",
"address_line_1": "1340 Poydras Street",
"address_line_2": "",
"address_region": "LA",
"commitment_uid": "",
"address_country": "US",
"action_page_name": "Feed the Children - March Gala",
"commitment_index": "",
"donor_profile_id": "",
"referrer_to_form": "",
"amount_in_dollars": "100.0",
"payment_method_id": "298c1950-5873-4387-ba56-ba6be525b1ad",
"created_at_iso8601": "2023-05-19T21:16:54Z",
"currently_employed": "true",
"updated_at_iso8601": "2023-05-19T21:16:55Z",
"address_postal_code": "70113",
"payment_description": "MasterCard •••• 5454",
"custom_field_responses": {
"number_of_tickets": null
},
"is_recurring_commitment": "false",
"commitment_recurring_until": "",
"communications_consent_email": "false",
"communications_consent_phone": "false"
}
}
Request Body (Donation Voided)
{
"event": "donation_voided",
"payload": {
"date": "2023-06-01 14:46:11 UTC",
"name": "Dr Annie Q Dot",
"email": "admin@anedot.com",
"phone": "2255011234",
"title": "Dr",
"origin": "hosted",
"source": "credit_card",
"status": "voided",
"suffix": "",
"donation": {
"id": "da3aaf6868558a289b60a",
"fees": {
"anedot_fees": {
"amount": "-1.30"
},
"vendor_fees": []
},
"fund": {
"id": "5181b4d8-6075-4c69-8fe7-64d921a86639",
"name": "General Fund",
"identifier": "1001"
},
"products": [],
"card_type": "master",
"card_last_digits": "5454",
"donation_project": "",
"credit_card_expiration": "04/2024"
},
"referrer": "https://secure.anedot-sandbox.com/09388ffc-9f3f-43ee-855a-1f70c7a9b764/e36d4264-b96b-4b77-9e01-3dac28e9914a",
"frequency": "once",
"last_name": "Dot",
"recurring": "false",
"created_at": "2023-06-01 14:46:11 UTC",
"first_name": "Annie",
"ip_address": "74.80.57.125",
"net_amount": "-23.70",
"occupation": "student",
"updated_at": "2023-06-01 14:46:56 UTC",
"account_uid": "aa3480c1cb0b039147824",
"middle_name": "Q",
"source_code": "",
"account_name": "The Charitable Foundation",
"address_city": "New Orleans",
"check_number": "",
"date_iso8601": "2023-06-01T14:46:11Z",
"event_amount": "-25.00",
"employer_name": "student",
"submission_id": "347d5074-5e58-4b2b-97f0-bb4e232a1940",
"action_page_id": "00c7b970-c269-4062-979e-b7aa939995fe",
"address_line_1": "1239 First St",
"address_line_2": "Unit 2",
"address_region": "LA",
"commitment_uid": "",
"address_country": "US",
"action_page_name": "Feed the Children - March Gala",
"commitment_index": "",
"donor_profile_id": "948d2011-2e82-418c-a6e3-3cf2d571dd97",
"referrer_to_form": "https://anedot-sandbox.com/",
"amount_in_dollars": "25.0",
"payment_method_id": "0443bd15-c322-4129-9465-9ec08ae5d6d4",
"created_at_iso8601": "2023-06-01T14:46:11Z",
"currently_employed": "false",
"updated_at_iso8601": "2023-06-01T14:46:56Z",
"address_postal_code": "12345",
"payment_description": "MasterCard •••• 5454",
"custom_field_responses": {
"number_of_tickets": "4"
},
"is_recurring_commitment": "false",
"commitment_recurring_until": "",
"communications_consent_email": "false",
"communications_consent_phone": "false"
}
}
Request Body (Donation Refunded)
{
"event": "donation_refunded",
"payload": {
"date": "2023-05-23 14:37:27 UTC",
"name": "Dr Annie Q Dot",
"email": "admin@anedot.com",
"phone": "2255011234",
"title": "Dr",
"origin": "hosted",
"source": "credit_card",
"status": "refunded",
"suffix": "",
"donation": {
"id": "d4074e5c015b745adb444",
"fees": {
"anedot_fees": {},
"vendor_fees": []
},
"fund": {
"id": "5181b4d8-6075-4c69-8fe7-64d921a86639",
"name": "General Fund",
"identifier": "1001"
},
"products": [],
"card_type": "master",
"card_last_digits": "5454",
"donation_project": "",
"credit_card_expiration": "04/2024"
},
"referrer": "https://secure.anedot-sandbox.com/09388ffc-9f3f-43ee-855a-1f70c7a9b764/cab0834d-ad6d-4177-8125-1da2c194f5ef?source_code=Kindness",
"frequency": "once",
"last_name": "Dot",
"recurring": "false",
"created_at": "2023-05-23 14:37:27 UTC",
"first_name": "Annie",
"ip_address": "74.80.57.125",
"net_amount": "-100.00",
"occupation": "retired",
"updated_at": "2023-06-01 14:44:46 UTC",
"account_uid": "aa3480c1cb0b039147824",
"middle_name": "Q",
"source_code": "Kindness",
"account_name": "The Charitable Foundation",
"address_city": "New Orleans",
"check_number": "",
"date_iso8601": "2023-05-23T14:37:27Z",
"event_amount": "-100.00",
"employer_name": "retired",
"submission_id": "c4b36935-7f93-42b0-ba4c-0cea79e111a8",
"action_page_id": "cab0834d-ad6d-4177-8125-1da2c194f5ef",
"address_line_1": "1239 First St",
"address_line_2": "Unit 2",
"address_region": "LA",
"commitment_uid": "",
"address_country": "US",
"action_page_name": "Start the year with kindness",
"commitment_index": "",
"donor_profile_id": "948d2011-2e82-418c-a6e3-3cf2d571dd97",
"referrer_to_form": "",
"amount_in_dollars": "100.0",
"payment_method_id": "0443bd15-c322-4129-9465-9ec08ae5d6d4",
"created_at_iso8601": "2023-05-23T14:37:27Z",
"currently_employed": "false",
"updated_at_iso8601": "2023-06-01T14:44:46Z",
"address_postal_code": "12345",
"payment_description": "MasterCard •••• 5454",
"custom_field_responses": {
"birthday": null,
"appeal_id": "W2207A1A",
"custom_flag_1": "WVT"
},
"is_recurring_commitment": "false",
"commitment_recurring_until": "",
"communications_consent_email": "false",
"communications_consent_phone": "false"
}
}
Donation Partially Refunded
{
"event": "donation_partially_refunded",
"payload": {
"date": "2023-05-30 14:02:51 UTC",
"name": "Dr Annie Q Dot",
"email": "admin@anedot.com",
"phone": "2255011234",
"title": "Dr",
"origin": "hosted",
"source": "credit_card",
"status": "partially_refunded",
"suffix": "",
"donation": {
"id": "daa8d0fea46bbec7ede81",
"fees": {
"anedot_fees": {},
"vendor_fees": []
},
"fund": {
"id": "5181b4d8-6075-4c69-8fe7-64d921a86639",
"name": "General Fund",
"identifier": "1001"
},
"products": [],
"card_type": "master",
"card_last_digits": "5454",
"donation_project": "",
"credit_card_expiration": "04/2024"
},
"referrer": "https://secure.anedot-sandbox.com/09388ffc-9f3f-43ee-855a-1f70c7a9b764/e36d4264-b96b-4b77-9e01-3dac28e9914a",
"frequency": "once",
"last_name": "Dot",
"recurring": "false",
"created_at": "2023-05-30 14:02:51 UTC",
"first_name": "Annie",
"ip_address": "74.80.57.125",
"net_amount": "-25.00",
"occupation": "student",
"updated_at": "2023-06-01 14:44:03 UTC",
"account_uid": "aa3480c1cb0b039147824",
"middle_name": "Q",
"source_code": "",
"account_name": "The Charitable Foundation",
"address_city": "New Orleans",
"check_number": "",
"date_iso8601": "2023-05-30T14:02:51Z",
"event_amount": "-25.00",
"employer_name": "student",
"submission_id": "7e8beb66-2d93-4a8e-8dd9-4bbe0e45fbfb",
"action_page_id": "00c7b970-c269-4062-979e-b7aa939995fe",
"address_line_1": "1239 First St",
"address_line_2": "Unit 2",
"address_region": "LA",
"commitment_uid": "",
"address_country": "US",
"action_page_name": "Feed the Children - March Gala",
"commitment_index": "",
"donor_profile_id": "948d2011-2e82-418c-a6e3-3cf2d571dd97",
"referrer_to_form": "https://anedot-sandbox.com/",
"amount_in_dollars": "50.0",
"payment_method_id": "0443bd15-c322-4129-9465-9ec08ae5d6d4",
"created_at_iso8601": "2023-05-30T14:02:51Z",
"currently_employed": "false",
"updated_at_iso8601": "2023-06-01T14:44:03Z",
"address_postal_code": "12345",
"payment_description": "MasterCard •••• 5454",
"custom_field_responses": {
"number_of_tickets": null
},
"is_recurring_commitment": "false",
"commitment_recurring_until": "",
"communications_consent_email": "false",
"communications_consent_phone": "false"
}
}
Request Body (Donation Chargeback)
{
"event": "donation_chargeback",
"payload": {
"date": "2023-05-31 19:09:03 UTC",
"name": "Dr Annie Q Dot",
"email": "admin@anedot.com",
"phone": "2255011234",
"title": "Dr",
"origin": "hosted",
"source": "credit_card",
"status": "chargeback",
"suffix": "",
"donation": {
"id": "d43872c9a174463dae378",
"fees": {
"anedot_fees": {},
"vendor_fees": []
},
"fund": {
"id": "5181b4d8-6075-4c69-8fe7-64d921a86639",
"name": "General Fund",
"identifier": "1001"
},
"products": [],
"card_type": "master",
"card_last_digits": "5454",
"donation_project": "",
"credit_card_expiration": "04/2024"
},
"referrer": "https://secure.anedot-sandbox.com/09388ffc-9f3f-43ee-855a-1f70c7a9b764/4670177d-c207-47a5-bc4c-3a5ea5e6a98a?source_code=EOY22",
"frequency": "once",
"last_name": "Dot",
"recurring": "false",
"created_at": "2023-05-31 19:09:03 UTC",
"first_name": "Annie",
"ip_address": "74.80.57.125",
"net_amount": "-100.00",
"occupation": "student",
"updated_at": "2023-06-01 14:40:55 UTC",
"account_uid": "aa3480c1cb0b039147824",
"middle_name": "Q",
"source_code": "EOY22",
"account_name": "The Charitable Foundation",
"address_city": "New Orleans",
"check_number": "",
"date_iso8601": "2023-05-31T19:09:03Z",
"event_amount": "-100.00",
"employer_name": "student",
"submission_id": "63696077-a3c9-4b2b-800e-79f662c1a28a",
"action_page_id": "4670177d-c207-47a5-bc4c-3a5ea5e6a98a",
"address_line_1": "1239 First St",
"address_line_2": "Unit 2",
"address_region": "LA",
"commitment_uid": "",
"address_country": "US",
"action_page_name": "EOY Giving 2022",
"commitment_index": "",
"donor_profile_id": "948d2011-2e82-418c-a6e3-3cf2d571dd97",
"referrer_to_form": "",
"amount_in_dollars": "100.0",
"payment_method_id": "0443bd15-c322-4129-9465-9ec08ae5d6d4",
"created_at_iso8601": "2023-05-31T19:09:03Z",
"currently_employed": "false",
"updated_at_iso8601": "2023-06-01T14:40:55Z",
"address_postal_code": "12345",
"payment_description": "MasterCard •••• 5454",
"custom_field_responses": {},
"is_recurring_commitment": "false",
"commitment_recurring_until": "",
"communications_consent_email": "false",
"communications_consent_phone": "false"
}
}
Request Body (Donation Chargeback Reversed)
{
"event": "donation_chargeback_reversed",
"payload": {
"date": "2023-05-31 19:14:50 UTC",
"name": "Dr Annie Q Dot",
"email": "admin@anedot.com",
"phone": "2255011234",
"title": "Dr",
"origin": "hosted",
"source": "credit_card",
"status": "chargeback_reversed",
"suffix": "",
"donation": {
"id": "d5309b0fc8fbc55a43935",
"fees": {
"anedot_fees": {},
"vendor_fees": []
},
"fund": {
"id": "5181b4d8-6075-4c69-8fe7-64d921a86639",
"name": "General Fund",
"identifier": "1001"
},
"products": [],
"card_type": "master",
"card_last_digits": "5454",
"donation_project": "",
"credit_card_expiration": "04/2024"
},
"referrer": "https://secure.anedot-sandbox.com/09388ffc-9f3f-43ee-855a-1f70c7a9b764/4670177d-c207-47a5-bc4c-3a5ea5e6a98a?amount=500&utm_campaign=200",
"frequency": "once",
"last_name": "Dot",
"recurring": "false",
"created_at": "2023-05-31 19:14:50 UTC",
"first_name": "Annie",
"ip_address": "74.80.57.125",
"net_amount": "500.00",
"occupation": "student",
"updated_at": "2023-06-01 14:42:24 UTC",
"account_uid": "aa3480c1cb0b039147824",
"middle_name": "Q",
"source_code": "EOY22",
"account_name": "The Charitable Foundation",
"address_city": "New Orleans",
"check_number": "",
"date_iso8601": "2023-05-31T19:14:50Z",
"event_amount": "500.00",
"employer_name": "student",
"submission_id": "c2eb2ff0-c63d-4bad-a20f-8e972f7e2262",
"action_page_id": "4670177d-c207-47a5-bc4c-3a5ea5e6a98a",
"address_line_1": "1239 First St",
"address_line_2": "Unit 2",
"address_region": "LA",
"commitment_uid": "",
"address_country": "US",
"action_page_name": "EOY Giving 2022",
"commitment_index": "",
"donor_profile_id": "948d2011-2e82-418c-a6e3-3cf2d571dd97",
"referrer_to_form": "",
"amount_in_dollars": "500.0",
"payment_method_id": "0443bd15-c322-4129-9465-9ec08ae5d6d4",
"created_at_iso8601": "2023-05-31T19:14:50Z",
"currently_employed": "false",
"updated_at_iso8601": "2023-06-01T14:42:24Z",
"address_postal_code": "12345",
"payment_description": "MasterCard •••• 5454",
"custom_field_responses": {},
"is_recurring_commitment": "false",
"commitment_recurring_until": "",
"communications_consent_email": "false",
"communications_consent_phone": "false"
}
}
Request Body (Donation ACH Returned)
{
"event": "donation_ach_returned",
"payload": {
"date": "2023-05-18 15:34:28 UTC",
"name": "Annie Dot",
"email": "admin@anedot.com",
"phone": "18001231234",
"title": "",
"origin": "hosted",
"source": "bank_account",
"status": "ach_returned",
"suffix": "",
"donation": {
"id": "d8689d5b809263e659388",
"fees": {
"anedot_fees": {},
"vendor_fees": []
},
"fund": {
"id": "5181b4d8-6075-4c69-8fe7-64d921a86639",
"name": "General Fund",
"identifier": "1001"
},
"products": [],
"card_type": null,
"card_last_digits": null,
"donation_project": "",
"credit_card_expiration": ""
},
"referrer": "https://secure.anedot-sandbox.com/09388ffc-9f3f-43ee-855a-1f70c7a9b764/e36d4264-b96b-4b77-9e01-3dac28e9914a",
"frequency": "once",
"last_name": "Dot",
"recurring": "false",
"created_at": "2023-05-18 15:34:28 UTC",
"first_name": "Annie",
"ip_address": "64.152.236.103",
"net_amount": "-25.00",
"occupation": "",
"updated_at": "2023-06-01 14:39:14 UTC",
"account_uid": "aa3480c1cb0b039147824",
"middle_name": "",
"source_code": "",
"account_name": "The Charitable Foundation",
"address_city": "New Orleans",
"check_number": "",
"date_iso8601": "2023-05-18T15:34:28Z",
"event_amount": "-25.00",
"employer_name": "",
"submission_id": "d640d468-c34b-481d-976a-f377d4a83c12",
"action_page_id": "00c7b970-c269-4062-979e-b7aa939995fe",
"address_line_1": "1340 Poydras Street",
"address_line_2": "",
"address_region": "LA",
"commitment_uid": "",
"address_country": "US",
"action_page_name": "Feed the Children - March Gala",
"commitment_index": "",
"donor_profile_id": "",
"referrer_to_form": "",
"amount_in_dollars": "25.0",
"payment_method_id": "19198da1-8a08-421d-a9a5-c097f7a32978",
"created_at_iso8601": "2023-05-18T15:34:28Z",
"currently_employed": "true",
"updated_at_iso8601": "2023-06-01T14:39:14Z",
"address_postal_code": "70113",
"payment_description": "Personal Checking •••• 0021",
"custom_field_responses": {
"number_of_tickets": null
},
"is_recurring_commitment": "false",
"commitment_recurring_until": "",
"communications_consent_email": "false",
"communications_consent_phone": "false"
}
}
Response Body (Success)
{
"id": "6585aa2cf0ee635156119151"
}
Response Body (Failure)
{
{
"statusCode": 401,
"error": "Unauthorized",
"message": "Unauthorized"
}
}
Response Status (Success)
200
Responses Status (Failure)
401