Skip to content

Other Pro Integrations PRO

FluentAffiliate Pro includes integrations with a broad range of membership, LMS, donation, and booking plugins. All follow the same BaseConnector pattern.

LifterLMS

Detection constant: LLMS_PLUGIN_FILE
Integration key: lifterlms

Tracks commissions when a LifterLMS course or membership is purchased.

HookTrigger
lifterlms_order_status_completedOrder completed.
lifterlms_order_status_refundedOrder refunded.
php
add_filter('fluent_affiliate/formatted_order_data_by_lifterlms', function($data, $order) {
    return $data;
}, 10, 2);

GiveWP

Detection constant: GIVE_VERSION
Integration key: give

Tracks affiliate commissions from GiveWP donation form submissions.

HookTrigger
give_recurring_subscription_completedCompleted payment.
give_donation_status_publishDonation published/completed.

MemberPress

Detection constant: MEPR_PLUGIN_NAME
Integration key: memberpress

Tracks commissions when a MemberPress membership is purchased.

HookTrigger
mepr-txn-storeTransaction stored (payment completed).
mepr-txn-refundTransaction refunded.
php
add_filter('fluent_affiliate/formatted_order_data_by_memberpress', function($data, $txn) {
    return $data;
}, 10, 2);

Detection constant: PMPRO_VERSION
Integration key: pmpro

Tracks commissions when a Paid Memberships Pro order is completed.

HookTrigger
pmpro_after_checkoutCheckout completed.
pmpro_after_change_membership_levelMembership downgraded/cancelled.

TutorLMS

Detection constant: TUTOR_PRO_VERSION (Pro version required)
Integration key: tutorlms

Tracks commissions from TutorLMS course purchases.

HookTrigger
tutor_course_complete_afterCourse enrollment completed.

ProfilePress

Detection constant: PPRESS_VERSION_NUMBER
Integration key: profilepress

Tracks commissions when a ProfilePress membership plan is purchased.

HookTrigger
ppress_after_plan_purchasePlan purchased.
ppress_payment_refundPayment refunded.

Paymattic

Detection constant: WPPAYFORM_VERSION
Integration key: paymattic

Tracks commissions from Paymattic payment form submissions.

HookTrigger
wppayform/form_payment_successPayment successful.
wppayform/payment_refundedPayment refunded.

Paymattic also has a registration feed integration — see the Fluent Forms guide for the pattern (Paymattic uses the same feed approach).

The fluent_affiliate/wppayform__defaults filter lets you pre-fill form fields:

php
add_filter('fluent_affiliate/wppayform__defaults', function($fields, $formId) {
    if (is_user_logged_in()) {
        $user = wp_get_current_user();
        $fields['email'] = $user->user_email;
    }
    return $fields;
}, 10, 2);

FluentBooking

Detection constant: FLUENT_BOOKING_VERSION
Integration key: fluentbooking

Tracks commissions from FluentBooking paid bookings.

HookTrigger
fluent_booking/booking_payment_completedBooking payment completed.
fluent_booking/booking_cancelledBooking cancelled/refunded.

Voxel

Always loaded (no detection constant required).
Integration key: voxel

Tracks commissions from Voxel marketplace transactions.

Note: Voxel is always initialised regardless of whether the Voxel plugin is active, because it uses Voxel's internal hook system that fires only when Voxel is loaded.


Common Patterns

All integrations share the same filter hooks — only the {provider} segment changes:

Modify Order Data Before Referral

php
add_filter('fluent_affiliate/formatted_order_data_by_{provider}', function($data, $order) {
    // Normalise the order data
    return $data;
}, 10, 2);

Replace {provider} with: lifterlms, give, memberpress, pmpro, tutorlms, profilepress, paymattic, fluentbooking, voxel.

php
add_filter('fluent_affiliate/provider_reference_{provider}_url', function($url, $referral) {
    return admin_url('your-plugin-order-page?id=' . $referral->provider_id);
}, 10, 2);

Prevent Commission on Specific Products

php
add_filter('fluent_affiliate/commission', function($commission, $context) {
    // Return 0 to skip recording (filtered by ignore_zero_amount_referral)
    if (in_array($context['product_id'] ?? 0, [99, 100])) {
        return 0;
    }
    return $commission;
}, 10, 2);

Released under the GPL-2.0 License.