Guides

BricksMembers Documentation

Find everything you need to set up, customize, and get the most out of BricksMembers — from quick-start guides to advanced features.

FluentCart Integration

Pascal Basel
modified at February 8, 2026

This guide covers everything you need to know about the native FluentCart integration in BricksMembers. With this integration, you can automatically assign membership levels when customers purchase FluentCart products—no webhooks or complex configuration required.

Why Use the Native Integration?

While BricksMembers supports FluentCart through webhooks, the native integration offers several advantages:

  • Zero configuration complexity — No webhooks to set up
  • Instant level assignment — Levels are assigned immediately when orders complete
  • Automatic user creation — Optionally create WordPress accounts for guest checkout customers
  • Subscription support — Full support for FluentCart subscriptions with automatic level management
  • Refund and cancellation handling — Automatically remove levels when orders are refunded or canceled

Prerequisites

  • FluentCart installed and active
  • At least one FluentCart product created
  • At least one membership level created in BricksMembers

Step 1: Enable the FluentCart Module

First, enable the FluentCart integration module:

  1. Go to BricksMembers → Settings → Modules
  2. Find FluentCart in the list
  3. Enable the toggle
  4. Click Save Settings

Once enabled, you’ll see a new FluentCart menu item under BricksMembers.

Step 2: Configure Integration Settings

Navigate to BricksMembers → FluentCart to configure the integration.

User Creation Settings

Create WordPress users for guest checkout orders

  • When enabled: If a guest checks out without an account, BricksMembers automatically creates a WordPress user account using their email. The new user receives the assigned membership level.
  • When disabled: Guest orders won’t receive membership levels. Only customers with existing WordPress accounts get levels assigned.
  • Recommendation: Enable this for most membership sites to ensure all customers get access.

Default user role for new users

  • Select the WordPress role assigned to automatically created users
  • Default: Subscriber
  • You can create custom roles in BricksMembers → Settings → General → Manage User Roles

Level Removal Settings

Remove levels when order is fully refunded

  • When enabled: If you issue a full refund, the membership level is automatically removed
  • Recommendation: Enable this to ensure refunded customers lose access

Remove levels when order is canceled

  • When enabled: If an order is canceled, the membership level is automatically removed
  • Use case: Useful for scenarios where you cancel orders that shouldn’t have been completed (e.g., fraudulent orders, duplicate orders)
  • Recommendation: Enable this if you want tight control over access

Subscription Settings

Remove levels when subscription expires

  • When enabled: Levels are removed when a subscription period ends
  • Important: Levels are removed when the subscription expires, not when the user cancels. This means users who cancel keep their access until the end of their paid period.
  • Recommendation: Enable this for subscription-based memberships

Why “expires” instead of “cancels”?

When a customer cancels a subscription, they’ve typically paid for the current period and should retain access until that period ends. For example, if someone pays for a monthly subscription on January 1st and cancels on January 15th, they should keep access until January 31st. The integration respects this by only removing levels when the subscription actually expires, not at the moment of cancellation.

Step 3: Map Products to Membership Levels

The User Level Mapping section shows all your membership levels with checkboxes for each FluentCart product. Simply check the products that should grant each level.

Mapping Products

For each membership level, you’ll see a list of all published FluentCart products. Check the products that should grant that level:

  • One product = One level: Check a single product for a level
  • Multiple products = One level: Check multiple products if they should all grant the same level
  • One product = Multiple levels: Check the same product under multiple levels if purchasing it should grant several levels

Example Configurations

Example 1: Simple Tiered Membership

You have three products: “Basic Membership”, “Pro Membership”, “VIP Membership”

  • Basic Member level: Check “Basic Membership”
  • Pro Member level: Check “Pro Membership”
  • VIP Member level: Check “VIP Membership”

Example 2: Course Bundle

You sell individual courses and an “All Access Pass”

  • Course A Access level: Check “Course A”
  • Course B Access level: Check “Course B”
  • All Access level: Check “All Access Pass”

Then protect your content so Course A requires “Course A Access” OR “All Access”, etc.

Example 3: Subscription Plans

You have monthly and annual subscription products:

  • Member level: Check both “Monthly Subscription” and “Annual Subscription”

Both products grant the same level—the subscription duration is handled by FluentCart.

Step 4: Test Your Configuration

Before going live, test your setup:

  1. Create a test product in FluentCart (or use an existing one)
  2. Map it to a membership level in BricksMembers → FluentCart
  3. Create a test order:
    • Log out or use a different browser
    • Add the product to cart
    • Complete checkout (use a test payment method if available)
  4. Verify the user has the correct level:
    • Go to Users in WordPress
    • Edit the test user
    • Check their assigned membership levels
  5. Test refund/cancel handling:
    • Cancel or refund the test order in FluentCart
    • Verify the level was removed (if the relevant setting is enabled)

Understanding Order Status Flow

FluentCart orders trigger BricksMembers actions at specific points:

EventBricksMembers ActionNotes
Order paid/completedAdd levelLevel assigned when payment is confirmed
Order fully refundedRemove level (if enabled)Only full refunds trigger removal
Order canceledRemove level (if enabled)Separate setting from refunds
Subscription activeAdd levelLevel assigned when subscription starts
Subscription expiredRemove level (if enabled)When the paid period ends

Troubleshooting

Level Not Assigned After Purchase

Check these common causes:

  1. Module not enabled: Verify FluentCart module is active in BricksMembers → Settings → Modules
  2. Product not mapped: Check that the product is checked for the desired level in BricksMembers → FluentCart
  3. Order not completed: Check if the order status is “Completed” in FluentCart. Pending orders don’t trigger level assignment.
  4. Guest checkout without user creation: If “Create WordPress users” is disabled, guest orders won’t receive levels
  5. No WordPress user linked: FluentCart customers need a linked WordPress user account. Enable “Create WordPress users” to automatically create accounts.

Level Not Removed on Refund or Cancel

  1. Setting not enabled: Verify the appropriate setting is checked:
    • “Remove levels when order is fully refunded” for refunds
    • “Remove levels when order is canceled” for cancellations
  2. Partial refund: Only full refunds trigger level removal

Subscription Level Not Removed After Cancel

This is expected behavior. When a customer cancels a subscription, they keep their level until the subscription period actually expires. This ensures they get what they paid for.

If you need to remove access immediately upon cancellation, you would need to manually remove the level from the user, or wait for the subscription to expire.

Developer Hooks

For developers who need to extend the integration, BricksMembers fires several action hooks:

// Fired when a level is added via FluentCart order
do_action( 'brm_fluentcart_level_added', $user_id, $level_id, $order_id );

// Fired when a level is removed via FluentCart order/refund/cancel
do_action( 'brm_fluentcart_level_removed', $user_id, $level_id, $order_id );

// Fired when a level is added via subscription activation
do_action( 'brm_fluentcart_subscription_level_added', $user_id, $level_id, $subscription_id );

// Fired when a level is removed via subscription expiration
do_action( 'brm_fluentcart_subscription_level_removed', $user_id, $level_id, $subscription_id );

Native Integration vs Webhooks

BricksMembers supports FluentCart through both native integration and webhooks. Here’s when to use each:

Use Native Integration when:

  • FluentCart is on the same WordPress site as BricksMembers
  • You want the simplest setup with zero configuration
  • You need instant level assignment
  • You’re using FluentCart subscriptions

Use Webhooks when:

  • FluentCart is on a separate site
  • You need complex event-based logic
  • You’re already using webhooks for other integrations

For most users with FluentCart on the same site, the native integration is the recommended approach.

Best Practices

  • Enable user creation: Ensures all customers get access, even guests
  • Enable refund handling: Automatically revoke access for refunded orders
  • Enable order cancellation handling: Revoke access for canceled orders
  • Enable subscription expiration handling: Automatically remove levels when subscriptions end
  • Test thoroughly: Always test purchases, refunds, cancellations, and subscription lifecycle before going live
  • Use clear product names: Makes the mapping interface easier to use

With the native FluentCart integration configured, your membership site will automatically handle level assignment and removal based on customer purchases—no manual intervention required.

Create

Start Building with BricksMembers

Create, sell, and manage your content without limits. BricksMembers gives you everything you need to build membership and LMS sites directly in Bricks Builder — fast and frustration-free.

Join the membership & LMS revolution now!

Get Started
Still have questions? We're here to help!