How to Implement Automated Subscription and Pass Bundle

This guide explains how to create a bundle combining a recurring subscription with a fixed-term pass.

Use case

This tutorial provides a step-by-step guide on how to sell a single "bundle" offer that grants a fixed-term event pass (e.g., for a tournament) and enrolls the customer in a recurring subscription.

The goal is to provide a seamless experience for the user, who makes a single purchase. After the purchase, the customer receives access to the event for its duration, and will be automatically placed on a standard subscription for future recurring billing.

Benefits

This solution offers significant advantages for both your business and your customers:

For your business:

  • Increased revenue: Secure a long-term subscriber from a single event-driven purchase.
  • Reduced churn risk: Decoupling the pass from the subscription ensures that if a user cancels a subscription, it won't impact their event access, protecting the initial sale.

For your customers:

  • Seamless experience: A simple, one-time purchase and checkout process.
  • Clarity and simplicity: No complex steps or multiple transactions are needed to get both the subscription and the event pass.

Example scenario

You want to leverage your exclusive rights to an upcoming tennis tournament (e.g. “Grand Finals”) to attract new long-term subscribers to your monthly streaming service.

You offer a bundle: "Grand Finals Access + SportsMax Monthly Subscription" for a special price of $25.

  1. A tennis fan, Anna, buys the bundle. It's a single, simple purchase.
  2. Behind the scenes, the system automatically gives her a pass for the tournament and starts her monthly subscription.
  3. The system also switches her plan to the standard monthly subscription (regularly billed $15/month).

Prerequisites

Before you begin, make sure the following prerequisites are in place:

  • You have access to a Cleeng sandbox account for testing purposes.
  • You have created three offers in Cleeng:
Offer TypeName (Example)Description
SubscriptionBundle SubscriptionThe initial offer the user purchases. This will have the one-time bundle price.
SubscriptionStandard SubscriptionThe regular subscription offer that the user will be switched to for renewals.
PassTournament PassThe pass that grants access to the special event.
📘

Note

For the "Tournament Pass", please contact the B2B Support Team to configure a specific payment method: (Source: publisher, Gateway: api, Method: api).

  • Configure the switch path: Configure a switch path from the bundle offer to the Standard Subscription offer. Follow the Dashboard configuration of subscription switches
  • Set the switch algorithm: Set the switch algorithm so the switch takes effect at the end of the bundle period rather than immediately. The deferred algorithm ensures the customer keeps the bundle terms for the full first period before renewing at the standard price.

Step-by-Step Guide

This workflow relies on a backend script that listens for a purchase and triggers two consecutive API calls.

Step 1: User Purchases the Bundle

The user purchases the "Bundle Subscription" offer you created. This is the only direct interaction the user has in this flow.

Step 2: Listen for the Webhook

Your system must be set up to listen for the subscriptionCreated webhook for bundled offer ID from Cleeng. This webhook will be triggered as soon as the user's subscription is created after a successful payment.

Step 3: Script flow

When your system receives the subscriptionCreated webhook, it should trigger a script to perform the following API calls:

A. Create a Pass

First, call the Create a Pass Core (3.1) API to grant the user access to the tournament.
(Optional) Upon successful pass creation, Cleeng sends a passCreated webhook (if configured).

B. Switch the Offer

Next, call the Switch Offer API to move the user to the "Standard Subscription" for future renewals. This ensures they are billed at the regular rate on the next billing cycle.

Testing

To ensure your implementation works flawlessly, it's crucial to test the entire automated workflow from end to end. Test your implementation on sandbox prior to production release.

Here’s a step-by-step guide to validating your setup in a sandbox environment.

  1. Perform a test purchase.
    • Using a test credit card, purchase your "Bundle Subscription" offer.
    • Verify that the payment is successful and a new subscription is created for the test user. In the Cleeng dashboard, confirm this subscription is initially on the bundle offer.
  2. Check your webhook and script.
    • Check your server logs to confirm that the subscriptionCreated webhook was received successfully.
    • Ensure your backend script was triggered without errors.
  3. Verify pass creation and access.
    • In the Cleeng dashboard, check the test user's account. You should see that the event pass has been added to their entitlements.
    • Crucially: Log in as the test user and attempt to access the content protected by the pass to confirm it works.
  4. Verify the offer switch.
    • Inspect the user's subscription again in the dashboard. The associated offer ID should now be for your Standard Subscription offer. This confirms the switch was successful.
  5. Test the renewal cycle.
    • This is the most critical test for billing. To avoid waiting a full month, use a daily or weekly subscription period for your test offers.
    • After the first period ends, check the user's payment history. You should see a new transaction for the price of the Standard Subscription, not the initial bundle price.
  6. Test the cancellation scenario.
    • After a successful purchase, cancel the subscription for your test user.
    • Verify that the event pass remains active in their account and still grants access.
    • Confirm that the subscription does not renew after the cancellation.


Did this page help you?