Skip to main content
crxbase supports Stripe-managed free trials for recurring subscriptions. When you configure a trial duration on a tier, eligible users can start a no-card trial directly from the pricing page.

How it works

1

Configure trial duration

Choose a free trial duration (7, 14, or 30 days) on a tier in your dashboard. The trial applies to all recurring prices (monthly and yearly) in that tier. One-time (lifetime) prices are not affected.
2

User starts a trial

An eligible authenticated user sees a Start X-day trial button on qualifying recurring prices. Clicking it creates a Stripe Checkout session that starts a subscription trial without collecting a payment method.
3

Trial is active

During the trial, the user has full paid access. The library’s getUser() returns paid: true with status: 'trialing' and trial_end on the plan entry. trial_available is false.
4

Trial ends

When the trial expires, Stripe moves the subscription to active (if a payment method was added) or cancels it. The user’s plan status updates automatically.

Eligibility

Each end-user gets one free trial per extension. Once a trial has been started — even if canceled early — the user cannot start another trial for the same extension.
ConditionTrial offered?
Tier has a trial duration configuredYes
User has not used a trial for this extensionYes
User already used a trial for this extensionNo
User has an active or past_due planNo (Switch UI)
Price is one-time (lifetime)No
If you need to test trial UI repeatedly during development, use developer testing on the pricing page. That override only affects your own test account and does not change the one-trial-per-extension rule for real end users.

Switching during a trial

If a user with a trialing subscription switches to a different recurring plan:
  1. They see a warning that switching ends the current trial immediately.
  2. After confirming, the trial subscription is canceled and a fresh paid checkout is created for the target plan.
  3. Remaining trial time does not carry over to the new plan.
  4. If the user abandons the paid checkout, the trial remains canceled — there is no way to restore it.
Switching during a trial is irreversible. The user is warned before confirming, but once the switch is initiated, the remaining trial time is consumed.

Trial reminder emails

crxbase does not send trial reminder or expiry emails. These depend on the Stripe Billing settings of each developer’s connected Stripe account. To configure trial reminders, go to Stripe Dashboard → Settings → Billing → Subscriptions and emails on your Stripe account and enable the relevant customer email settings.

API and library

getUser()

For a trialing user, the response includes:
  • paid: true
  • trial_available: false
  • A plan entry with status: 'trialing' and trial_end (ISO timestamp)

getTiers()

For a trial-enabled tier, the response includes trial_days on the tier object.
You can use trial_available and trial_end in your extension to show trial-specific messaging, such as “X days left in your trial”.

What you need to do

  1. Choose a free trial duration (7, 14, or 30 days) on the tier(s) you want to offer trials for in your Tiers settings.
  2. Optionally configure trial reminder emails in your Stripe dashboard.
  3. The pricing page, checkout, and library automatically handle trial eligibility and lifecycle.