Kajabi Affiliate Program: Complete Integration Guide | AffiliateBase

Create an Affiliate Program with Kajabi

Step-by-step guide to integrating affiliate tracking with your Kajabi online course and membership platform

Kajabi is an all-in-one platform for creating, marketing, and selling online courses, digital products, and memberships. If you're using Kajabi to sell your content and want to grow through affiliate marketing, AffiliateBase provides seamless integration.

This comprehensive guide will walk you through everything you need to know about setting up an affiliate program with Kajabi, from webhook configuration to tracking course enrollments, product purchases, and membership subscriptions.

Whether you're selling online courses, digital products, or membership subscriptions, an affiliate program can help you acquire new customers while rewarding your partners for successful referrals.

Follow these steps to integrate AffiliateBase with Kajabi:

1

Set Up Kajabi Webhooks

Navigate to your Kajabi admin dashboard and go to Settings > Integrations > Webhooks. Create a new webhook endpoint pointing to AffiliateBase.
text
https://api.affiliatebase.com/webhooks/kajabi
2

Select Webhook Events

Subscribe to the following Kajabi events: order.created, subscription.created, and enrollment.created. These events will trigger affiliate tracking.
3

Add Webhook Secret to AffiliateBase

Copy your webhook secret from Kajabi and add it to your AffiliateBase dashboard under Settings > Integrations > Kajabi.
4

Configure Commission Rules

Set up your commission structure in AffiliateBase dashboard. You can configure different rates for courses, products, and memberships.
5

Pass Affiliate IDs to Kajabi

Add affiliate tracking parameters to your Kajabi product URLs. AffiliateBase will capture these and attribute conversions correctly.
6

Test the Integration

Create a test purchase or enrollment in Kajabi to verify that affiliate tracking is working correctly. Check your AffiliateBase dashboard for the conversion.

Kajabi Webhook Handler Example

Here's an example of how to handle Kajabi webhooks for affiliate tracking:

// Example: Next.js API route for Kajabi webhooks
import { headers } from 'next/headers';
import crypto from 'crypto';
import { AffiliateBase } from '@affiliatebase/sdk';

const affiliateBase = new AffiliateBase({
  apiKey: process.env.AFFILIATEBASE_API_KEY!,
});

export async function POST(request: Request) {
  const body = await request.text();
  const signature = headers().get('x-kajabi-signature')!;
  
  // Verify webhook signature
  const expectedSignature = crypto
    .createHmac('sha256', process.env.KAJABI_WEBHOOK_SECRET!)
    .update(body)
    .digest('hex');
  
  if (signature !== expectedSignature) {
    return new Response('Invalid signature', { status: 401 });
  }
  
  const event = JSON.parse(body);
  
  // Handle different event types
  switch (event.type) {
    case 'order.created':
      await affiliateBase.trackConversion({
        affiliateId: event.data.order.metadata?.affiliateId,
        type: event.data.order.product_type === 'course' ? 'course_enrollment' : 'product_purchase',
        amount: event.data.order.total,
        currency: event.data.order.currency,
        customerId: event.data.order.customer_id,
        metadata: {
          product_id: event.data.order.product_id,
          product_name: event.data.order.product_name,
          product_type: event.data.order.product_type,
          order_id: event.data.order.id,
        },
      });
      break;
      
    case 'subscription.created':
      await affiliateBase.trackConversion({
        affiliateId: event.data.subscription.metadata?.affiliateId,
        type: 'subscription',
        amount: event.data.subscription.price,
        currency: event.data.subscription.currency,
        customerId: event.data.subscription.customer_id,
        subscriptionId: event.data.subscription.id,
      });
      break;
      
    case 'enrollment.created':
      await affiliateBase.trackConversion({
        affiliateId: event.data.enrollment.metadata?.affiliateId,
        type: 'course_enrollment',
        amount: event.data.enrollment.price,
        currency: event.data.enrollment.currency,
        customerId: event.data.enrollment.customer_id,
        metadata: {
          course_id: event.data.enrollment.course_id,
          course_name: event.data.enrollment.course_name,
        },
      });
      break;
  }
  
  return new Response(JSON.stringify({ received: true }), { status: 200 });
}

Why Use AffiliateBase with Kajabi?

AffiliateBase is the perfect solution for Kajabi creators who want powerful affiliate tracking without complexity.

Native Kajabi Integration

Built-in integration with Kajabi webhooks. Automatically tracks course enrollments, product sales, and membership subscriptions without custom code.

Multi-Product Support

Tracks all Kajabi product types: online courses, digital products, and membership subscriptions. One integration for all your products.

Real-Time Tracking

Track conversions in real-time as customers purchase or enroll. No delays or batch processing.

Subscription Support

Tracks membership subscriptions, including monthly and annual plans. Ensures affiliates receive commissions for recurring revenue.

Affiliate Dashboard

Give your affiliates a professional dashboard to track their performance, view commissions, and generate affiliate links for specific products.

Webhook Security

Built-in webhook signature verification ensures only legitimate Kajabi events are processed, protecting your affiliate program from fraud.

Frequently Asked Questions

Does AffiliateBase work with Kajabi?

Yes! AffiliateBase integrates seamlessly with Kajabi through webhooks. It automatically tracks course enrollments, product sales, and membership subscriptions.

Can I track all Kajabi product types?

Yes! AffiliateBase tracks online courses, digital products, and membership subscriptions. You can configure different commission rates for each product type.

How are course enrollments tracked?

AffiliateBase tracks Kajabi enrollments through webhooks. When a customer enrolls in a course via an affiliate link, the enrollment.created or order.created webhook triggers affiliate tracking and commission calculation.

Can I track subscription-based memberships?

Yes! AffiliateBase tracks Kajabi membership subscriptions through the subscription.created webhook. Affiliates receive commissions for subscription sign-ups and can be configured to receive commissions on renewals as well.

How do I add affiliate tracking to my Kajabi product URLs?

Add affiliate tracking parameters to your Kajabi product URLs (e.g., ?ref=AFFILIATE_ID). AffiliateBase will capture these parameters and attribute conversions correctly when customers purchase or enroll.

Can I set different commission rates for different products?

Yes! You can configure different commission structures in AffiliateBase based on product type, product, or price. This gives you full control over your affiliate program.

Do affiliates get their own dashboard?

Yes! Affiliates get access to a professional dashboard where they can view their conversions, commissions, performance metrics, and generate affiliate links for specific products.

Ready to Launch Your Kajabi Affiliate Program?

Get started with AffiliateBase today and start growing your Kajabi business through affiliate marketing.