Lifetime commissions

This plugin enables lifetime referral tracking based on a unique customer identifier, such as email, passed in one of the custom data field parameters (data1 to data5) of your sale/action tracking code. In all our integration methods that support Lifetime Commissions tracking, we save the unique customer identifier under the Data1 field.

If you would like to know whether your integration method supports this plugin, you can edit an already saved commission in your merchant panel (Transactions > Commissions) and check if there is a unique customer identifier saved in any of the Extra Data fields. Usually, we save customer emails. Alternatively, you can find your eCommerce system in the available integration methods and see if the support for Lifetime Commissions is mentioned in the method's description or if an identifier is passed to any of the data fields by the integration code.

Table of Contents

How it works

  1. If a customer is referred by an affiliate for the first time (an action commission or a sale is tracked for the customer), the plugin will store the relation between the customer (his/her unique identifier) and the affiliate into Post Affiliate Pro.
  2. Next time, when the same customer (with the same identifier) makes a sale/action (even without clicking on an affiliate link or banner again or from a completely different device), the system will find the affiliate who originally referred him and will reward the commission to that affiliate. The affiliate will continue receiving a commission for future sales/actions made by this customer until the relation between the customer and the affiliate is manually removed (using the Lifetime referrals manager feature), or the relation gets expired (if the plugin is configured in such a way), or until the Lifetime Commissions plugin is disabled.

Managing the relations between customer and affiliate

To manage the customer-affiliate relations you can use the Lifetime referrals manager feature. This feature allows you to add, edit or delete these relations directly from your merchant panel.

Plugin configuration



The above image is an illustration only, not representing the actual recommended configuration. Normally you do not need to do any changes to the plugin configuration, once you enable it, in order to use it. The plugin has a few mutually exclusive options, all of the options are displayed above, however you wouldn't see all of them at once in the actual plugin. Let's go over each option and explain when you'd want to use it.


  • Load by lifetime referrer also campaign and banner - if this option is enabled, then all the subsequent tracked sales and actions of the particular customer would be saved under the same campaign and banner as the initial transaction when the lifetime referral relationship was created. This might be useful in some special cases, but normally you don't want to use this, and instead, you want the campaign to be recognized based on the purchased product or based on the affiliate link/banner which was clicked before the purchase.
  • Load by lifetime referrer also commission group - this option is displayed in plugin configuration only if the above option "Load by lifetime referrer also campaign and banner" is enabled. When you enable this option, the original commission group from the initial commission is used for all subsequent commissions. You would use this if you are using the Performance Rewards feature to move affiliates between commission groups, and you want to stick to the same commission for all subsequent sales/actions of a referred customer as was provided for the initial commission. So, you would effectively ignore the current commission group in which the affiliate is and take the commission group in which the affiliate was when they referred the customer.
  • Load by lifetime referrer also channel - the subsequent commissions would save under the same ad channel as the initial commission, the ad channel would not be recognized from the tracking cookie. This is usually desired as the original ad channel which the affiliate used to bring in the customer is retained even if the customer makes future purchases from a different device or if the tracking cookie is no longer available.
  • Apply lifetime referrer only per specific campaigns - this setting is displayed in the plugin configuration only when the "Load by lifetime referrer also campaign and banner" is disable. is disabled. When you enable this option, you will see a new option in every campaign's configuration called "Apply lifetime referrer tracking", which is enabled by default. If you uncheck this checkbox and a commission is supposed to be saved in this campaign, the lifetime relation will NOT be used to recognize the affiliate. Instead, the referring affiliate will be recognized using other tracking methods (cookie, IP address, coupon code, etc.). This can be used, for example, if you have a product for which you do not want to give commissions based on the lifetime relations, and the affiliate will earn a commission only if their link was clicked recently.
    Important note: new lifetime relations will still be created (or existing ones overwritten, if enabled) on any tracked sale/action commission, even if the "Apply lifetime referrer tracking" checkbox is disabled.
  • Use lifetime referrer only for unreferred sales - this option means that the affiliate from the lifetime relation will be used only as a fallback in cases when no affiliate is recognized from other tracking methods, such as coupon codes, cookies, IP address, etc. Therefore, different affiliates can get commissions from the same customer if the customer clicks their links before placing orders. The existing lifetime relation will always be overwritten to the new affiliate. This option is very useful if you don't really want to tie the customer to the original affiliate who referred the customer first, but instead, you want to give the commission to the last referring affiliate. If you also set the below lifetime relation expiration option to recognize the affiliate from other methods, this can act as a complete fallback for the regular cookie tracking. The relation would be used only if no affiliate is recognized from cookies (e.g., the customer made a purchase on a different device) and it would also respect the original cookie lifetime, so the commissions wouldn't be awarded if the customer didn't click an affiliate link for a longer time and the original tracking cookies are already expired.
  • Check lifetime referral expiration - here you can decide what should happen if during commission saving, a lifetime relation is found but it is older than the time you have defined in the 'Limit cookie lifetime to' setting of the recognized campaign. There are 4 options to choose from:
    • No - the relation is a true lifetime relation, and the commission is saved to the affiliate associated with the customer by the existing relation no matter its age.
    • Yes, do not save expired commissions - if the existing lifetime relation is older than the cookie lifetime defined in the recognized campaign (or in the affiliate's commission group), then the commission is not saved. This can be used if you want to give commissions for a referred customer only for a limited time, and after that, no other commissions should be given for this customer.
    • Yes, save expired commission as unreferred (if set in tracking settings) - the commission would be saved to the default affiliate set in Configuration > Tracking settings > Save unreferred sales/leads. Similar to the above option, but the commissions would still save under the default affiliate.
    • Yes, recognize affiliate from other methods - the commission will be saved under the affiliate recognized from other tracking methods (cookie, IP address, etc.), and the expired relation will be overwritten with a new one created for the newly recognized affiliate.
  • Transaction data field - defines the commission extra data field into which your sale tracking integration is sending the unique identifier of the customer. Most of our integration methods send the unique identifier to the Data 1 field, and some other plugins which rely on the customer's unique identifier expect it in this field as well.
  • Transaction note for affiliates - write a note that would be added to the "Merchant note" field of your commissions for the affiliates to see them. The note is added for every commission that is saved based on existing lifetime relations.
  • Use lifetime referrer for new signed up affiliate - this option will enable recognizing the parent affiliate during the affiliate signup based on lifetime relations. If some lifetime relation exists for the new affiliate who is signing up, then this new affiliate will be added as a sub-affiliate (child) of the affiliate that referred his original purchase / action. Lifetime relation is looked up by what the new affiliate entered into the field defined in the "For lifetime identifier use" setting below.
  • Tie new affiliate with - this option allows you to create a lifetime relation for every new affiliate. The below setting "For lifetime identifier use" defines which affiliate field is used as the unique identifier for these relations. There are 3 options for with whom the relation should be created:
    • No one - there will be no lifetime relation created for the newly created affiliates.
    • Parent affiliate - the newly created affiliate will be associated by a lifetime relation with his parent. Every new commission which will come in with the "Transaction data field" containing the string which the new affiliate had filled in during signup in the field defined in the "For lifetime identifier use" setting will be saved under the parent of this affiliate. This is useful, for example, if your affiliates are also your customers and you want to ensure that every affiliate order will give a commission to the affiliate's parent.
    • Himself - Similar to the above option, but the relation will be created with the new affiliate himself. This is useful if all of the affiliate's orders should give commissions to them. Alternatively, you can also combine this with the Prohibit Commission If Affiliate Is Purchaser plugin to not allow any commissions to be saved if the sale/action is done by an existing affiliate.
  • For lifetime identifier use - in this field, you should select the field in which the unique identifier is filled in during affiliate signup. It is used only with the above "Tie new affiliate with" and "Use lifetime referrer for new signed up affiliate" functions.
  • Separate lifetime referral per accounts - this option is visible only on the Post Affiliate Network version of our software. It allows you to enable/disable saving of lifetime referral per network account. If this option is DISABLED, lifetime relation is used globally for the whole network, no matter what network account a commission was generated for. So, a lifetime relation can be created based on the commission generated for merchant account 'A', and the same affiliate would still get a commission for the customer's next purchase even if this purchase was done on the shop of merchant account 'B'.
    If the option is ENABLED, there will be a separate lifetime relation created for every merchant network account.

Additional options for the commission settings

Lifetime Commissions plugin also adds additional options to the configuration of each commission type under campaigns / commission groups.

  • Lifetime referral commission field allows you to set a custom commission, which will be used instead of the regular commission defined above, when a commission is saved to affiliate thanks to an existing lifetime relation.
    This field supports both percentage and fixed commission types. You would set it to %20 for a 20% commission or 20 for a fixed $20 commission. To define commissions on multiple tiers, you need to separate the tiers by a semicolon ";". For example, to have 20% for the 1st tier, 10% for the 2nd tier, and $1 for the 3rd tier, you would set this field to %20;%10;1.
  • Lifetime referral commission validity field can be used to define for how long the above commission will be used instead of the below commission. For example, if you set this to 100 days, then for the first 100 days since the creation of the lifetime relation, the above Lifetime referral commission will be used for any commission recognized by a lifetime relation. After the 100 days, the commission defined in the below "Lifetime referral commission after validity" field will be used. If this field is left empty, the "Lifetime referral commission after validity" field will never be used.
  • Lifetime referral commission after validity follows the same rules as the "Lifetime referral commission" but is used only if the lifetime referral relation is older than the number of days defined in the "Lifetime referral commission validity".

Code examples

If you are not using one of our integration methods which would track customer's unique identifier into one of the sale data fields, you can track for example customer's email this way: 

Sale tracking code

<script id="pap_x2s6df8d" src="" type="text/javascript"></script>
<script type="text/javascript">
var sale = PostAffTracker.createSale();
sale.setProductID('test product');



Action commission tracking code

<script id="pap_x2s6df8d" src="" type="text/javascript"> </script>
<script type="text/javascript">
var action = PostAffTracker.createAction('action_code');