How To Set Up A Ping Post Exchange in Lead Prosper


A Ping Post Exchange is designed for auction-based lead distribution where Suppliers send a PING with partial lead data, your Buyers bid on the lead in real time, and the winning bid price is returned to the Supplier. If the Supplier accepts the bid, they send the full POST with the remaining lead data and the lead is sold. This campaign type gives you dynamic, market-driven pricing and real-time control over how leads are bought and sold.

This article covers a step-by-step walkthrough for building your Ping Post Exchange and detailed reference sections for every configurable area of the campaign setup.


Steps To Building Your Ping Post Exchange

1. Name Your Ping Post Exchange

Set the campaign Name to whatever best describes its purpose. If you need to display a different name on the Supplier API specs, Customer Portal, or other forward-facing areas, use the Public Name feature to assign a nickname.

2. Add Suppliers + API Specs

Create your Suppliers — the entities that will be sending leads into your campaign. Once a Supplier is created, a set of unique API specs are generated and assigned to a URL. You can pass the Supplier that URL and it will contain everything they need to begin sending you leads. The API specs are dynamic, so any changes you make to the campaign fields and other settings will adjust in real time on the API specs.

Since this is a Ping Post Exchange, your Supplier will always be set to real-time price. There are additional Supplier-level options to consider:

  • Margin Override — Apply a margin override that will supersede the default campaign margin as well as any buyer margins that may be in place.
  • Minimum Required Buyer Bid — Set a minimum required buyer bid. If none of the buyers in the exchange returns a bid price over this amount, the lead will be considered rejected. This helps avoid sending back bid prices to the Supplier that are too low for them to consider.

If you are purchasing leads from a third-party vendor, ensure your Supplier costs are configured before ingesting live traffic so that your reporting and analytics are accurate.

3. Create Your Campaign Fields

Set up the fields with the values and formats you want to collect from your Suppliers. Build your campaign fields first before setting up your buyers so that you do not need to go back and adjust your buyer payloads after the fact.

If your buyer requires different formats or values, use Computed Fields and Payload Transformers to adjust the data to match what your buyer needs. See the Campaign Fields section below for details on field types and setup options.

Since this is a Ping Post Exchange, you will have the option to set each campaign field as optional or required on the PING and the POST independently. It is recommended to collect as much data as you can from your Suppliers on the PING short of any PII. Here is a guide on how to determine if a field should be required on the PING and/or POST:

  1. Do any of your buyers require the field value, and are your Suppliers collecting it? If yes, mark it as required.
  2. Is the field optional on the PING but required on the POST, and does it contain no sensitive or PII data? If so, consider requiring the data on the PING so that you can pass it to your buyers on the PING. A good rule of thumb is that the more data you can provide the buyers, the better the likelihood they will accept the PING or POST, and they could potentially bid a better price.
  3. Is the field a compliance field? If possible, mark any and all compliance fields as required on both the PING and POST, regardless of whether or not your buyer requires them. These fields include IP Address, User Agent, Landing Page URL, TCPA Text, TrustedForm Certificate URL, and/or the Jornaya LeadiD. The more of these details you can provide, the better protected you are from compliance issues down the line.

4. Set Up and Test Your Buyers

Create your buyers and configure their payloads and pricing. Always test your buyers and ask them to confirm your tests before going live. The test buyer tool and response parser tool make it easy to run tests and debug any issues that appear. Make sure your Accept response mappings are set up correctly to prevent a sold lead from being marked incorrectly.

If your buyer's API specs contain formats or values that do not match your Campaign Fields, use Computed Fields to transform your data to meet their requirements.

Most buyers in a Ping Post Exchange are going to be Ping Post buyers. Use the Response Mapper Tool as often as needed to configure your response mappings. To use the tool, open the Response Mapper Tool and copy/paste an example PING response from your buyer's API specs. From there you can click and set the values as needed. There are three key mappings to configure:

  1. Accepted Response — Set up your Accepted Response mapping so that accepted leads are identified correctly.
  2. Real-Time Price — Set this mapping to grab the dynamic bid price your buyer returns on the PING. In the Response Parser Tool, find the key they use to return a bid price, click the bid value, and select Real-Time Price.
  3. Token / ID (Response Variable) — In a Ping Post buyer setup, your buyer will always require a unique identifier to be inserted into the POST that was returned on the PING. This can be a token, ping_id, authorization_token, or whatever they name it. In the Response Parser Tool, find the value they return for this token or ID, select it, and hit Response Variable. This assigns that mapping to a unique response variable that you can then insert into the POST payload. When building the POST, select the Fields dropdown, navigate to the Response Variables tab, and select the response variable you created to insert it into the POST payload.

5. Create Filters for Enhanced Routing

Set up filters to control which leads are sent to which buyers. You can filter leads based on campaign field values, computed field values, data appended values, and API responses. See the Filters section below for details on filter levels and capabilities.

6. Set Up Your Ping Post Exchange Settings

This area is where you control the default behavior of the Ping Post Exchange. There are several settings to configure:

Ping Post Type: Exclusive vs. Shared — You can set the Ping Post Exchange to sell either Exclusive to one buyer only, or Shared to multiple buyers. Keep in mind there are some limitations to shared leads, such as the inability to return leads.

Default Margin — This is where you set the default margin that will be applied to all bid prices before they are returned to the Supplier. If you are unsure where to start, try something low like 10% or 15% and then adjust from there once you have more bid data from your Buyers and Suppliers.

Required Fields — As mentioned in the Campaign Fields section, you can set fields to be required on the PING as well as the POST. This section allows you to adjust the required PING fields, and is tied directly into the settings of the Campaign Fields — make a change in this section and it will adjust in the campaign fields PING requirements, and vice versa.

Try All Buyers Until Bid Break Even Point — Ping Post Exchanges work on an auction-based setup where the campaign returns a dynamic bid price to your Supplier on the PING. This bid price is what you are offering to pay the Supplier for the lead based on the PING. If the Supplier agrees to this bid price, that is what you are agreeing to pay them for the lead if they send the POST and it is Accepted.

This creates a potential issue: in a Direct Post campaign, if the lead fails to sell to the first buyer, you simply try the next buyer. In a Ping Post Exchange, this type of behavior is not straightforward because you have an agreement with your Supplier to purchase the lead for a specific price. If your Supplier agrees to a bid price of $X, sends the POST, but your buyer rejects that POST, you cannot simply try the next buyer — what happens if the next buyer's available bid is less than the $X you already agreed upon? You would be buying the lead from your Supplier for more than you can sell it for. At that point it makes more sense to reject the POST and move on.

The "Try All Buyers Until Bid Break Even Point" feature allows the campaign to try to sell to any other buyer who has a bid price that is over the $X bid price that was agreed upon with the Supplier. While your margins will be lower in these cases, at least the lead is getting sold rather than rejected. If no buyers with bids above the agreed price accept the lead, it is rejected.

Always Attempt to Sell, Regardless of Price — This feature is designed for users who have both Direct Post and Ping Post Exchange campaigns for the same vertical. It allows selected Suppliers to treat the Ping Post Exchange more like a Highest Bidder Direct Post campaign — if the POST fails to the first buyer, the system will attempt to sell to all other available buyers regardless of the bid price agreement. The idea is to allow users to house all buyers in the Ping Post Exchange while setting up a Direct Post campaign that routes leads into the Ping Post Exchange, without the Supplier bid price limitations described above.

Buyer & Supplier Margin Overrides — With the Ping Post Exchange enabled, your Buyers and Suppliers will have additional options added, including Margin Overrides. These options allow you to set unique margins on individual Suppliers and Buyers that will override the default margin set at the campaign level.

When running a Ping Post Exchange, margin overrides are applied in the following order:

  1. Supplier Margin Override — Applied first, taking priority over all other margins.
  2. Buyer Margin Override — Applied next, but only after the Supplier override has been factored in.
  3. Global / Campaign Margin — Applied last, after both Supplier and Buyer overrides are processed.

In short: Supplier overrides always come first, then Buyer overrides, and finally the global or campaign-level margin.

Buyer Bid Penalties — A Bid Penalty is a percentage-based adjustment applied to a buyer's bid price within a campaign. It reduces the buyer's effective bid during the highest-bidder sort order without changing the actual price the buyer returns. Bid Penalties help account for post-sale costs — like lead returns — that make a buyer's real-time bid less profitable than it appears.

7. Add Additional Options

There are a number of additional options you can configure to enhance and optimize your campaign. All of these features are optional but provide powerful ways to customize your campaigns:

  • Data Appending — Automatically append additional data to incoming leads, enriching each record with information such as geo data or results from custom API requests.
  • Third-Party Validations — Lead Prosper has a number of integrated third-party validations that check lead data during the ingestion process. Integrations are available across several categories: Address Validation, Email Validation, Fraud, Phone Validation, TCPA, DNC, Litigator Check, and Consent.
  • Dupe Checking — Set up duplicate checking to ensure you are not buying or selling leads that you have already ingested and sold. You can dupe check on the current campaign, dupe check against other campaigns inside your account, and enable a Pre-Ping Dupe Check to check if a lead would be flagged as a duplicate or fail filters or caps before the actual POST is sent.
  • Customize Supplier API Response — Add custom data to your Supplier API response to provide more information back to the Suppliers. You can add custom fields to map your buyer's PING or POST response values to, pass back which buyer(s) purchased the lead, and include details about a third-party validation that may have failed and the exact error returned.

8. Set Up Campaign Triggers

Campaign Triggers allow you to run any number of actions after a lead has been processed. Here are some examples of how Campaign Triggers can be used:

  • Affiliate Tracking — Send a postback to a third-party tracking platform, such as Everflow or RedTrack, to attribute the lead status and update pricing if the lead sold to a buyer.
  • Secondary Campaigns — Use real-time or delayed triggers to move leads to secondary campaigns, such as a DQ or Unsold campaign that houses different buyers who would purchase the unsold leads.
  • Custom Email Delivery — Bypass Lead Prosper's plain text email action and utilize an ESP such as Postmark or SendGrid to send designed HTML templates with lead data to your buyers.
  • Third-Party Tracking Updates — Update a third-party tracking platform with real-time lead data as the leads are distributed to your buyers.
  • Meta Ads Conversions — Send a postback to Meta Ads with conversion details to attribute sold leads to a Meta ClickID and give Meta more data to optimize your ad targeting.

9. Go Live

After your Suppliers and Buyers have both sent in successful tests and all of your campaign settings are configured, it is time to go live.

  1. For Suppliers — disable Test Mode.
  2. For Buyers — turn them live.

Your Suppliers can then begin sending in traffic to sell to your Buyers. During the first 24–48 hours, closely monitor and review your leads to look for any misconfigurations or errors on both the Supplier side and the Buyer side.


If you want to learn more and get into the nitty gritty of the entire structure of a Ping Post Exchange and what each feature does, here is a crash course on Ping Post Exchange campaigns.


General

The General section contains the foundational settings for your campaign: Name, Public Name, and Distribution Method.

Name and Public Name are straightforward. Set the Name to whatever best describes the campaign's purpose. If you have an internal name that you do not want to appear on forward-facing areas like the Supplier API specs, the Supplier Portal, or the Customer Portal, you can set a Public Name. The Public Name acts as a nickname that is displayed in all front-facing elements of the site.

Distribution Method

The Distribution Method controls how leads are routed to buyers. Each method has its own behavior, advantages, and trade-offs. Choosing the right one depends on your buyer relationships, pricing strategy, and how you want leads prioritized.

There are six Distribution Methods available:

Waterfall is the default distribution method for each new campaign. Ingested leads are distributed to buyers based on the sort order in the buyer list. The system attempts to sell the lead to the first buyer in the list, then continues down the list to the next buyer until the lead is either sold or remains unsold after all buyers have been attempted. Waterfall sells the lead one time.

Waterfall is the best option when you want strict control over buyer priority and a predictable routing order.

Highest Bidder is an auction-based distribution method. When a lead is received, all eligible buyers are evaluated and assigned a bid price based on their pricing configuration. Buyers are then sorted from highest to lowest bid, and the system attempts to sell the lead in that order until it is accepted or remains unsold.

Highest Bidder is the best option when you want to prioritize revenue by always attempting to sell to the highest-paying buyer first.

Send to All attempts to sell the lead to every eligible buyer in the campaign. By default, the system works through buyers in order and attempts delivery to each one. You can optionally apply a sell limit to cap how many buyers the lead is sold to. Once the limit is reached, distribution stops.

Send to All is a good option when you want to maximize lead exposure and allow multiple buyers to purchase the same lead.

Round Robin distributes leads evenly across all eligible buyers. Each time a buyer receives a lead, they are moved to the back of the rotation. The next lead is then offered to the next buyer in line, creating a rotating sequence designed to balance lead distribution across buyers over time. By default, Round Robin tries all eligible buyers and attempts to sell the lead one time. You can adjust the settings to allow Round Robin to sell the lead to multiple buyers.

Round Robin is ideal when you want fair and balanced distribution across all of your buyers.

Weighted Round Robin is a variation of Round Robin that allows you to prioritize certain buyers by assigning them a higher share of the rotation. Instead of equal distribution, buyers receive leads based on their assigned weighting. By default, Weighted Round Robin tries all eligible buyers and attempts to sell the lead one time. You can adjust the settings to allow Weighted Round Robin to sell the lead to multiple buyers.

Weighted Round Robin is best used when you want mostly balanced distribution with some level of preference given to specific buyers.

Buyer Groups let you organize buyers into individual groups, each with its own distribution method — Waterfall, Highest Bidder, Send to All, or Round Robin. Leads flow through groups sequentially, and you control whether the flow stops after a group sells the lead or continues to the next group.

Buyer Groups are an excellent option when you need more control than a single distribution method can provide.

Choosing a Distribution Method

  • Revenue-focused: Highest Bidder
  • Strict priority control: Waterfall
  • Maximum exposure: Send to All
  • Fair distribution: Round Robin
  • Weighted prioritization: Weighted Round Robin
  • Advanced strategies: Buyer Groups

The right distribution method depends on your campaign goals.


Suppliers

A Supplier in Lead Prosper is any entity that sends leads into your campaigns. Suppliers post lead data to your campaign's API endpoint, where those leads are ingested, validated, and distributed to your Buyers.

When a new Supplier is created, Lead Prosper assigns it a unique lp_supplier_id and lp_key value and generates a dedicated set of API Specs. The Supplier uses these API specs to format and submit leads correctly so they can be ingested and distributed. A campaign can have an unlimited number of Suppliers.

Once a Supplier is created, the unique API specs are assigned to a URL. You can pass the Supplier that URL and it will contain everything they need to begin sending you leads. The API specs are dynamic, so any changes you make to the campaign fields and other settings will adjust in real time on the API specs.

Suppliers have a number of settings that can be configured. In a Ping Post Exchange, Suppliers are always set to real-time price, and the following options are available:

  • Margin Override — Apply a margin override that will supersede the default campaign margin as well as any buyer margins that may be in place.
  • Minimum Required Buyer Bid — Set a minimum required buyer bid. If none of the buyers in the exchange returns a bid price over this amount, the lead will be considered rejected.
  • Lead Caps — Volume caps that limit the number of leads a Supplier can send. Caps can be set by day, week, month, or total.
  • Budget Caps — Budget caps that limit the total spend on a Supplier's leads. Caps can be set by day, week, month, or total.
  • Cap Notification Settings — Notifications that can be sent to up to 5 email addresses when a cap reaches a specified threshold. You can also set a notification to be sent if the cap has not been reached within its given time period.
  • Filters — Filters can be set at the Supplier level. These filters run before leads are distributed to Buyers, and any lead that fails a Supplier-level filter is rejected outright — it will not be sent to any Buyers.

Buyers

Most buyers in a Ping Post Exchange will be Ping Post buyers, but you can use any type of buyer setup. There are a few things to keep in mind:

  1. If your campaign's distribution method (or a Buyer Group) is set to Highest Bidder, make sure that your Direct Post, Google Sheet, Email, or Store Lead buyers have static or conditional pricing rules in place. Ping Post buyers will need to have static, conditional, or real-time pricing enabled. If you do not have a price rule enabled, the buyer's "bid" price will default to $0 and cause them to always get last access to leads coming into your campaign.
  2. All new Buyers are set to Paused after they are created. This gives you time to run tests and get confirmation from your buyers that everything is working on their end. Always test and get confirmation from your buyers before going live. If you do not, you risk selling leads to the buyer as tests for little to no money, or encountering configuration issues that prevent the lead from being accepted by the buyer.
  3. For Ping Post buyers, make sure you configure all three key response mappings — Accepted Response, Real-Time Price, and Token / ID (Response Variable) — using the Response Mapper Tool. See the steps in Set Up and Test Your Buyers above for a walkthrough.

Campaign Fields

Campaign Fields define the data you collect from your Suppliers. Every field in a Lead Prosper campaign has a type that controls what values the field accepts, which filters are available, and which payload transformers can be applied. Choosing the right field type enforces data quality at the point of ingestion and unlocks more powerful filtering and transformation options downstream.

Whenever a new campaign is created, Lead Prosper generates a set of default fields designed to give you a baseline starting point. These are considered the bare minimum fields every campaign should have: first_name  , last_name  , email  , phone  , gender  , date_of_birth  , address  , city  , state  , zip_code  , landing_page_url  , ip_address  , user_agent  , tcpa_text  , trustedform_cert_url  , and jornaya_leadid  .

When setting up your campaign fields, configure them with the fields and values that you as the campaign owner want to accept. You should not build your campaign fields and values around your Buyers. Different buyers will have different required fields, different accepted values, and so on. Lead Prosper makes it easy to take whatever data you are collecting and transform it using Computed Fields to meet each buyer's requirements. Collect the data from your Suppliers the way you want it formatted, then transform it to your buyer's requirements as needed.

Campaign Field Types

Text — Accepts any string of characters with no formatting restrictions. The most flexible field type, but filters and transformers may not work reliably since incoming values are not validated.

List of Allowed Values — Restricts a field to a predefined set of accepted values, rejecting anything that does not match exactly. Guarantees that filters and transformers work 100% of the time since every possible value is known and controlled.

Email — Validates that incoming values are properly formatted email addresses and rejects anything that is not. Unlocks filtering by exact address, MD5 hash, or domain — useful for suppression lists, blocking disposable providers, or restricting to specific corporate domains.

Phone — Enforces a specific phone number format and rejects values that do not match. Use the phone transformer in a Computed Field to convert collected numbers into whatever format a buyer requires.

State — Provides predefined lists of state/province abbreviations for the United States, Canada, and Australia. Eliminates inconsistent values and enables reliable geographic filtering and routing.

Postal Code — Enforces postal/zip code formats based on popular patterns from around the world, rejecting truncated, malformed, or incorrectly formatted entries. Keeps location data standardized so downstream filters and distribution rules work reliably.

Date & Time — Enforces a specific date format at ingestion and unlocks advanced filtering by age or date range, plus transformers for reformatting, adding/subtracting time intervals, calculating differences, and converting timezones.

Numeric — Accepts only valid numeric values (integers, decimals, positive or negative) with no letters or special characters allowed. Enables numeric-specific filters like greater than, less than, and between, plus math transformers for arithmetic, rounding, and conditional range mapping.

IP Address — Validates that the incoming value is a properly formatted IPv4 or IPv6 address. Commonly used for fraud detection and traffic quality controls, allowing you to filter against known bad IPs or block entire ranges using regex.

URL — Validates that the incoming value is a properly formatted URL, with the option to require the protocol (http/https) or accept a bare domain. Use the url_no_query_strings transformer to strip tracking parameters before forwarding to a buyer.

Adding Campaign Fields

There are several ways to add new campaign fields when setting up your Ping Post Exchange:

  1. Create Individual Campaign Fields — Go to the Campaign Fields area in your Campaign Settings. Click the New+ button at the top, or if you are at the bottom of the Campaign Field list, click the + Add new field button. You will be prompted to enter the campaign field name, select your Type & Format, set any values needed, set the field to optional or required on the PING and/or POST, mark the field as a sensitive field, and set the field as visible or hidden on your API specs and the Customer Portal. You can also add a Description that will appear on the API specs for that campaign field.
  2. Import From Existing Campaign — If you already have an existing Campaign inside your Account, you can import those Campaign Fields into your new Campaign by selecting the Import button and choosing From Existing Campaign. In the popup that appears, select the Campaign to clone the campaign fields from. There is also an option to Remove all existing fields. If you choose to remove existing fields, all current fields will be erased and replaced by the ones from the campaign you pick, and all configured filters, integrations, custom buyer or supplier prices, computed fields, and more will be erased. Dupe-checker will also be turned off. When ready, click Import.
  3. Import From Vertical — You can import Campaign Fields from a Vertical. Lead Prosper has compiled lists of recommended campaign fields and values for verticals and sub-verticals that you can import directly into your new Campaign. Options are available for Legal, Home Improvement, and Insurance. When you select a Vertical from the list, you will be presented with each of the campaign fields available, and you can pick and choose which fields you want to import before clicking Save.

System Generated Fields

There are also a handful of system generated campaign fields that are default and cannot be removed: lp_campaign_id, lp_supplier_id, and lp_key. These are your campaign and supplier specific keys that must be included in every API request to your campaign. Lead Prosper also provides two default pre-defined subid fields — lp_subid1 and lp_subid2. By default these fields are not required, but you have the option to set them as required.


Computed Fields

Computed Fields allow you to create virtual, dynamic fields that transform your campaign fields and system fields into whatever format is needed by your buyer(s). When setting up a new Campaign, you may not need to add Computed Fields right away. If you do, there are three options:

  1. Add From Campaign — In your Campaign Settings, click the + Add button under the Computed Fields section to launch the Computed Field modal. From here you can add campaign fields, transformers, and build and test your computed fields that will be used in your Buyer payloads and Campaign Triggers.
  2. Add From Buyer — In many cases you may not know that you need a Computed Field until you have already created a new Buyer and are setting them up. When you are in the Payload Builder, there is a button to bring up the Computed Fields modal. You can add new Computed Fields from here and insert them into the Payload without having to leave the Buyer setup.
  3. Import — Similar to importing Campaign Fields from an existing Campaign, you can import Computed Fields from existing campaigns by clicking the Import button. Choose the campaign to import from, then select which Computed Fields to import. If there are any missing campaign fields or conflicts, they will be displayed and explained. When ready, click Save.

Filters

Filters control your campaign routing logic and ensure that leads are distributed to the correct buyers. Filters can run at three different levels inside your campaigns:

  • Global (Campaign) Level — Applies to all leads entering the campaign.
  • Supplier Level — Applies to leads from a specific Supplier.
  • Buyer Level — Blocks ingested leads from being sent to a specific buyer when a lead does not meet that buyer's criteria.

Global and Supplier Level filters run before a lead is ever sent to your Buyers. Buyer Level filters run during the distribution process.

You can filter on nearly every data point you are collecting inside your campaign, as well as filter leads based on Suppliers, Day/Time Parting, and Block Specific Dates (such as holidays). Filters support exact value matching or regex-based string matching to check if field values contain specific strings. If you have Date & Time campaign fields, you can filter those values based on whether the date is before or after a specific date, within a specific date range, or by the age of the date.

Beyond Campaign Fields, you can also filter based on Computed Field values, meaning you can filter on the transformed data points generated by your Computed Fields.

If you have Data Appending enabled and set to run before filters, you can filter leads based on the data appended from the API service(s) you have set up.

API filters are also available. API filters allow you to make a request to any API endpoint and then Allow or Block the lead based on the API's response.

Important: If you have any type of filter on a campaign field, you should mark that field as required in Campaign Fields. If a filter is assigned to a campaign field and a lead comes in with an empty value for that field, the system will ignore the filter entirely. For example, if you have a buyer level filter for the campaign field zip_code and that field is marked as Optional, a lead that comes in with an empty zip_code value will cause the buyer level filter to be skipped — the lead is not rejected, the filter is ignored.


Ping Post Exchange Settings

This area is where you control the default behavior of the Ping Post Exchange. There are several settings to configure:

Ping Post Type: Exclusive vs. Shared — You can set the Ping Post Exchange to sell either Exclusive to one buyer only, or Shared to multiple buyers. Keep in mind there are some limitations to shared leads, such as the inability to return leads.

Default Margin — This is where you set the default margin that will be applied to all bid prices before they are returned to the Supplier. If you are unsure where to start, try something low like 10% or 15% and then adjust from there once you have more bid data from your Buyers and Suppliers.

Required Fields — As mentioned in the Campaign Fields section, you can set fields to be required on the PING as well as the POST. This section allows you to adjust the required PING fields, and is tied directly into the settings of the Campaign Fields — make a change in this section and it will adjust in the campaign fields PING requirements, and vice versa.

Try All Buyers Until Bid Break Even Point — Ping Post Exchanges work on an auction-based setup where the campaign returns a dynamic bid price to your Supplier on the PING. This bid price is what you are offering to pay the Supplier for the lead based on the PING. If the Supplier agrees to this bid price, that is what you are agreeing to pay them for the lead if they send the POST and it is Accepted.

This creates a potential issue: in a Direct Post campaign, if the lead fails to sell to the first buyer, you simply try the next buyer. In a Ping Post Exchange, this type of behavior is not straightforward because you have an agreement with your Supplier to purchase the lead for a specific price. If your Supplier agrees to a bid price of $X, sends the POST, but your buyer rejects that POST, you cannot simply try the next buyer — what happens if the next buyer's available bid is less than the $X you already agreed upon? You would be buying the lead from your Supplier for more than you can sell it for. At that point it makes more sense to reject the POST and move on.

The "Try All Buyers Until Bid Break Even Point" feature allows the campaign to try to sell to any other buyer who has a bid price that is over the $X bid price that was agreed upon with the Supplier. While your margins will be lower in these cases, at least the lead is getting sold rather than rejected. If no buyers with bids above the agreed price accept the lead, it is rejected.

Always Attempt to Sell, Regardless of Price — This feature is designed for users who have both Direct Post and Ping Post Exchange campaigns for the same vertical. It allows selected Suppliers to treat the Ping Post Exchange more like a Highest Bidder Direct Post campaign — if the POST fails to the first buyer, the system will attempt to sell to all other available buyers regardless of the bid price agreement. The idea is to allow users to house all buyers in the Ping Post Exchange while setting up a Direct Post campaign that routes leads into the Ping Post Exchange, without the Supplier bid price limitations described above.

Buyer & Supplier Margin Overrides — With the Ping Post Exchange enabled, your Buyers and Suppliers will have additional options added, including Margin Overrides. These options allow you to set unique margins on individual Suppliers and Buyers that will override the default margin set at the campaign level.

When running a Ping Post Exchange, margin overrides are applied in the following order:

  1. Supplier Margin Override — Applied first, taking priority over all other margins.
  2. Buyer Margin Override — Applied next, but only after the Supplier override has been factored in.
  3. Global / Campaign Margin — Applied last, after both Supplier and Buyer overrides are processed.

In short: Supplier overrides always come first, then Buyer overrides, and finally the global or campaign-level margin.

Buyer Bid Penalties — A Bid Penalty is a percentage-based adjustment applied to a buyer's bid price within a campaign. It reduces the buyer's effective bid during the highest-bidder sort order without changing the actual price the buyer returns. Bid Penalties help account for post-sale costs — like lead returns — that make a buyer's real-time bid less profitable than it appears.


Data Appending

Data Appending allows you to automatically append additional data to incoming leads, enriching each record with information such as geo data or results from custom API requests.

Example use cases:

  1. Your form only collects a consumer's Zip Code and you want to append the City, State, and/or County based on the zip code.
  2. You have a third-party lead scoring service and you want to append the score to a field so that you can filter and block leads if the score is below a certain threshold.
  3. You are running debt or other financial services leads and want to use a third-party service that offers Soft Credit Pulls to grab and append the consumer's credit score and actual debt amount.

You can add multiple Data Appends to your campaign(s). Each one has settings to run the appending before or after filters, as well as the option to override existing data if the lead comes in with data already in the campaign field, or to only append the data if the field value for that lead is empty.

You can also map multiple data points from a single API response to different campaign fields. One API response could provide multiple useful data sources, and you can map them to as many campaign fields as needed to enrich and filter the lead.


Third Party Validations

Lead Prosper has a number of integrated third-party validations that check lead data during the ingestion process. Integrations are available across several categories: Address Validation, Email Validation, Fraud, Phone Validation, TCPA, DNC, Litigator Check, and Consent.

The purpose of these integrations is to verify that incoming lead data is legitimate and valid for sale. Services like Xverify and IPQS offer address, email, and phone validation to confirm the data is legitimate. You can use IPRegistry, Anura, and IPQS IP Address to flag leads as potentially fraudulent. The TrustedForm integration lets you claim the incoming TrustedForm Certificate URL using your ActiveProspect / TrustedForm account. If you have the Insights product enabled, you can also check the lead data against the data in the TrustedForm certificate to ensure the data matches and check for suspected bot traffic, how the form was filled out, and more.

If you want to test different validation services, you can enable them within your Account and attach your own account ID or API key, or you can use one of the integrated partners such as XVerify. These options allow you to use the services without needing your own personal account, and each request is billed against your account usage.


Campaign Settings

Campaign Settings is where you enable Duplicate Checking options and control and customize the data returned in the Supplier API response.

Duplicate Checking

Dupe Checker checks for duplicates within the current campaign and allows you to configure settings to flag leads as duplicates while being sent by your Suppliers. This helps prevent buying and ingesting leads multiple times, and helps prevent double selling leads. The Dupe Checker only checks against Accepted or Sold leads.

Important: Just like with filters, if you are duplicate checking based on specific campaign fields, you should always mark those fields as required. If a campaign field is added as a dupe check field and comes through with an empty value, the system may incorrectly label that lead as a duplicate.

The Dupe Checker has the following configurable options:

  • Number of Days — Time frame to look back for leads to be flagged as duplicates.
  • Dupe Check Fields — Select one or more campaign fields to check against for duplicates. Most common are phone and email.
  • Matching Fields — When multiple Dupe Check Fields are selected, you can choose to consider a lead a duplicate if ALL dupe check field values exist, or flag the lead as a duplicate when at least ONE of the dupe check field values already exists.
  • Dupe Check Scope — Two options are available:
    • Campaign Level — If the lead exists at all inside the campaign, it will be flagged as a duplicate and not accepted from your Supplier or sold to your Buyers.
    • Buyer Level — Checks duplicate leads on the buyer level. If a lead comes in as a duplicate but has only been sold to one of your five buyers, the dupe checker will flag the lead as a duplicate and exclude the buyer that already accepted the lead while letting the other buyers have the chance to purchase that lead.

Cross Campaign Dupe Checker — When enabled, you can dupe check leads in additional campaigns by mapping your field values to their corresponding campaign fields in the other campaign. Once the mapping is completed, any leads that come in will also check the additional campaigns for duplicate leads. Cross Campaign Dupe Checker uses the other campaign's dupe check settings, not your current campaign's dupe check settings.

Pre-Ping Dupe Check — Available only on Direct Post campaigns. Pre-Ping Dupe Check gives you an additional endpoint for your Suppliers to send lead data to check your Direct Post campaign before they send the POST to see if the lead is a duplicate. At the same time, it will check that lead against filters, caps, and other criteria to determine not only if the lead is a duplicate but also if it can be ingested if the Supplier sends it in.

Note: Lead Prosper does not store any logs or reports related to pre-ping dupe checks other than a count of the requests that came in. There are no logs of any of the actual data that was sent in, making it safe to send non-hashed phone numbers, emails, and other pieces of PII on the pre-ping without worry that it will be stored in LP.

Customize Supplier API Responses

These options allow you to update the default Supplier API Response to include additional data points.

Pass Data From Your Buyer's API Response Back To The Supplier (Exclusive Campaigns ONLY) — By enabling this option, you can add any number of custom fields to the Supplier API response. Once the custom fields are added, additional options will appear in the buyer setups that allow you to map data to these fields based on the following:

  • Not Mapped — No mapping, response will be empty.
  • Static Value — Fixed value returned in the custom field.
  • PING Response — Grab a value from a Ping Post buyer's PING response.
  • POST Response — Grab a value from a Direct Post or Ping Post buyer's POST response.
  • Campaign Field — Get a value from a campaign field.
  • Advanced Configuration — Use advanced settings with a campaign field, allowing the use of transformers to grab and map a value.

An example of how to use this feature: if you are an Owned & Operated site and your buyer returns a redirect URL that they expect you to use to redirect the consumer on your landing page, you can map the redirect URL based on the POST response to pass that URL back to the Supplier. From the landing page, you could then parse the value and redirect the consumer.

Important: You must configure each of your buyers and map their response to these new keys for this feature to work.

Include buyer's information in supplier API response — When enabled, the API response sent back to the Supplier will include additional details about the Buyer(s) who accepted the lead and the purchase price. This is useful if you are an Owned & Operated site and want to use data on who purchased the lead to dynamically display information, such as showing the buyer to the consumer on the Thank You page. Another use case is storing that data in a third-party tracking platform via the Supplier API response. This feature also displays the buyer CLIENT details, so if you are using custom Client properties, that data can be passed back in the Supplier API response as well.

Include all buyers — This option adjusts the "Include buyer's information" setting to show all buyers and their statuses regardless of whether they purchased the lead or not.

Validation Error Details — When enabled, the Supplier API response will include additional details about validation errors when a lead is rejected by a validation integration. For example, if you have XVerify turned on to validate phone numbers and they reject the phone number as invalid, the Supplier API response can contain details that the lead was rejected due to XVerify Phone validation failing and include the exact error message returned.

You can customize the response to include:

  • Provider Name + Details
  • Provider Name Only
  • Details Only

You also have the ability to customize which Suppliers receive the Validation Details in the Supplier API Response. By default it is all Suppliers, but you can adjust to only send the validation details back to specific Suppliers.


Campaign Triggers

In a Lead Prosper campaign, leads enter through your Suppliers and are distributed to your Buyers. But lead routing often requires more than just that primary distribution layer. You may need to fire a conversion postback to an affiliate tracking platform after a lead sells, send failed leads to a secondary campaign for additional monetization, push accepted lead data to a CRM or dialer, log every processed lead to a Google Sheet, or notify a buyer via email the moment a new lead arrives.

Campaign Triggers handle all of this. They allow you to define conditional, event-driven actions that run automatically after a lead has been processed and distributed to your Buyers. Each trigger follows an IF this — THEN that structure: you set the conditions a lead must meet, and you define the actions that fire when those conditions are satisfied.

Here are some examples of how Campaign Triggers can be used:

  • Affiliate Tracking — Send a postback to a third-party tracking platform, such as Everflow or RedTrack, to attribute the lead status and update pricing if the lead sold to a buyer.
  • Secondary Campaigns — Use real-time or delayed triggers to move leads to secondary campaigns, such as a DQ or Unsold campaign that houses different buyers who would purchase the unsold leads.
  • Custom Email Delivery — Bypass Lead Prosper's plain text email action and utilize an ESP such as Postmark or SendGrid to send designed HTML templates with lead data to your buyers.
  • Third-Party Tracking Updates — Update a third-party tracking platform with real-time lead data as the leads are distributed to your buyers.
  • Meta Ads Conversions — Send a postback to Meta Ads with conversion details to attribute sold leads to a Meta ClickID and give Meta more data to optimize your ad targeting.

At this point you should have everything you need to get a Ping Post Exchange up and running. If there are a few things to take away from all of this — understand how margins and bid pricing work before you go live, build your campaign fields around the data you want to collect and require as much non-PII data as possible on the PING to give your buyers the best chance to bid competitively, always configure and test your Response Mapper Tool mappings (Accepted Response, Real-Time Price, and Token / ID) before flipping anything live, and make sure any fields tied to filters or dupe checking are marked as required so the system doesn't skip over them. Between the Ping Post Exchange settings, Margin Overrides, Bid Penalties, Data Appending, Third-Party Validations, Dupe Checking, Supplier API Response customization, and Campaign Triggers, there's a ton of flexibility built in to handle just about any auction-based setup you need.

If you have any questions or need a hand getting things configured, reach out to support and we'll get you pointed in the right direction.

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.