How does it work?
CheckoutJoy has a full featured affiliate system which allows you to run your affiliate program using CheckoutJoy.
The CheckoutJoy affiliate system includes the following features:
- Dedicated Affiliate dashboard for your affiliates
- Conversion reports and analytics
- Email announcements sent to all your affiliates
- You need to have a custom domain connected on CheckoutJoy
- You need to sell products using CheckoutJoy
To set up your affiliate program you need to complete the following steps:
- Set up a custom domain for your Affiliate Portal
- Configure your Affiliate Program Settings
- Add the Affiliate Tracking Script to your website.
Set up a custom domain for your Affiliate Portal
You need to set up a custom domain so that your Affiliate Portal can be hosted on your domain. This can be any domain or subdomain
Visit the Custom Domain page for more information and steps on setting up a custom domain.
Configure your Affiliate Program Settings
Here you will configure your affiliate program, including the default rewards, tracking cookie settings and email templates.
Visit the Affiliate Center Settings to access your settings.
When you connect a custom domain, your Affiliate Dashboard is automatically activated on that domain. The Affiliate Dashboard is the where your affiliates will go to get their share links and conversion stats.
For example, if your custom domain is https://checkout.yourdomain.com/ (opens in a new tab), your affiliate dashboard URL will be https://checkout.yourdomain.com/affiliates/dashboard/ (opens in a new tab)
The following are your Affiliate Portal URLs:
|https://checkout.yourdomain.com/affiliates/signup (opens in a new tab)||URL where affiliates can sign up for your Affiliate Program|
|https://checkout.yourdomain.com/affiliates/login (opens in a new tab)||Login URL for your affiliate dashboard|
|https://checkout.yourdomain.com/affiliates/dashboard (opens in a new tab)||Affiliate Dashboard URL|
Your affiliates need to register to your Affiliate Program using your registration link. A welcome email is sent to the affiliate when they register and they are automatically logged into their dashboard.
You can edit the contents of the welcome email under the Email Templates tab of the Affiliate Settings.
When an affiliate signs up they are assigned the default commission percentage that is set for your account. You can set a default commission percentage for all your affiliates in the Rewards tab.
You can also set the commission per affiliate in the Users dashboard.
When a referred customer makes a purchase, a conversion is registered and the reward is calculated and recorded for the affiliate.
How are commission calculated
Commission for a sale is calculated using the transaction total after discount, before tax.
commission = (transactionTotal - taxTotal) * commissionPercentage
If the transaction was done in a different currency than your Affiliate Program's currency, then all totals are converted using the current exchange rates.
Your Share Links are the links that your affiliates share with their audience. Usually this is simply the
URL of your website - e.g.
https://www.yourwebsite.com, which means that any page
that a customer visits on your website with a valid referral code will be registered as a referral.
Example, the following URLs will all be registered as valid referral clicks (the affiliate code in this example is
https://www.yourwebsite.com?via=fhnfahfa https://www.yourwebsite.com/checkout/my-checkout-page?via=fhnfahfa https://www.yourwebsite.com/landing-1?via=fhnfahfa
You can also set up specific pages or URLs as share links. In this case, a referral click will only be registered if the specific URL is matched, and there is no root level domain configured as a share link.
Tracking when using Checkout Pages
The tracking cookie can only be accessed on the domain (and any subdomain) of a share link.
This generally isn't an issue when using the Checkout Widget or Thinkific Checkout Section because the checkout is then embedded on a page that is part of your website, so the tracking cookie will be available.
You can customise the emails that the system sends to your affiliates.
Adding the Affiliate Tracking Script to your websites
To set up your website for affiliate tracking, you need to add the affiliate tracking script to the pages where you want to track affiliate clicks. In most cases this will be the entire website.
To enable affiliate tracking on your website, add the following line of code to the HEAD section of all the pages that where you want to track affiliate clicks.
<script async src="https://cdn.checkoutjoy.com/cj-affiliate.js"></script>
Example: Adding the tracking script to Kajabi
Add the affiliate tracking script to Kajabi's Page scripts section.
- Settings > Site Details > Page Scripts
Integrating 3rd-Party Affiliate Platforms
It is possible to add any 3rd party affiliate platform to CheckoutJoy like First Promoter or Post Affiliate Pro.
Most affiliate platforms work using tracking and conversion codes that need to be placed on your website. The tracking code tracks clicks of visitors sent to your site or checkout page by your affiliates, and the conversion code tracks conversions of referred customers.
The tracking code is usually placed on all your website pages, as well as your checkout pages, while the conversion code is usually placed only on your thank-you pages.
Since your checkout will happen on CheckoutJoy, you can add your tracking code snippet to any checkout page in CheckoutJoy. After checkout, your customer will be taken to your Thank-you page, and CheckoutJoy will append the transaction details to the thank-you page URL so that you can trigger your conversion tracking code on your thank-you page.
|purchaseId||The CheckoutJoy Purchase ID. This is the same an Order ID in other systems|
|productId||The unique CheckoutJoy product ID|
|productName||Human readable Product Name|
|customerName||Full name of the customer|
You can reference the values on the thank-you page by reading the search params of the URL
const urlParams = new URLSearchParams(window.location.search); const total = urlParams.get('total');
The example snippet below is to track a sale using Post Affiliate Pro
const urlParams = new URLSearchParams(window.location.search); var sale = PostAffTracker.createSale(); sale.setTotalCost(urlParams.get('total')); sale.setOrderID(urlParams.get('purchaseId')); sale.setProductID(urlParams.get('productId'));