Skip to main content
The License Portal is your customer dashboard for Flex Forms. After you buy on Lemon Squeezy, everything that unlocks package downloads and Studio activation lives here: Composer authentication, your Public API key, the list of allowed hostnames, and tools to change or refresh credentials. This page walks through the portal after purchase, section by section, so you always know which credential goes where.

After you buy on Lemon Squeezy

Lemon Squeezy handles checkout and issues a Lemon license key. Use that key only when you register on the License Portal (together with your email and a portal password). After signup, the portal generates the Composer token (cmp_…) and Public API key (pk_forms_…) you actually use to install and activate Flex Forms. The Lemon key is not a Composer password and not the key you paste into Filament.
1

Complete checkout

Purchase from the Flex Forms store. Choose one of the four plans: Standard, Pro, Enterprise (yearly), or Lifetime (one-time).
2

Find your Lemon license key

Open the Lemon receipt email or My Orders. Copy the Lemon license key. You will use it only to create or relink your portal account (and later for Change license key if you upgrade).
3

Create the portal account

Go to license.bjanczak.com/flex-forms/panel. Register with:
  • your email (same as Lemon checkout when possible),
  • a password for the portal,
  • your Lemon license key.
The portal then generates your Composer token (cmp_…) and Public API Key (pk_forms_…). The Lemon key is only for this registration (and later Change license key) — never for Filament or Composer auth.
4

Grab the generated credentials

Copy:
  1. Composer token (cmp_…) — for Installation
  2. Public API Key (pk_forms_…) — for Activate license / Setup Wizard
Treat cmp_… like a password. pk_forms_… is safe to store in Filament Global Settings; it only unlocks hosts you whitelist.
5

Register hostnames

Add every exact domain / subdomain / local host where Filament will run Flex Forms, up to your plan’s seat limit (table below). Then install with Composer and paste pk_forms_… into Filament.
Lemon may show the purchase key as inactive until the first domain is added in the portal. That usually means “valid purchase, zero activations yet” — not a failed payment. See Inactive vs Active below.

Portal sections (what each one is for)

Use this map when you are inside the dashboard. Every section has a single job.

Install via Composer (cmp_…)

Open Install via Composer whenever you need to copy the current token or regenerate it after a leak. Regenerating immediately revokes the previous cmp_… value — update every server and CI job in the same change window.

Public API Key (pk_forms_…)

One Public API key covers all domains on the account. You do not create a separate pk_forms_… per environment.

Domains list (license activations / seats)

Filament checks this list when validating the Public API key. Pasting pk_forms_… alone is not enough if the browser host is missing — details in Activate license.

Change license key

Use this after upgrades (for example Standard → Pro for more seats or hide branding), not for day-to-day Composer or Filament work.

Regenerate Composer token

Prefer regenerating whenever a token may have been committed, shared in chat, or exposed in a log.

Seat limits by plan

Each registered hostname consumes one license activation (seat), including staging and local hosts you add to the portal. Full feature comparison: Plans & pricing. Need more seats than your plan allows? Upgrade via the store, then Change license key in the portal.

Inactive vs Active Lemon status

Lemon Squeezy and the License Portal both surface status language that customers often misread. Here is what it usually means for Flex Forms.

Inactive (common right after purchase)

When Lemon shows the license as inactive and you have not registered any domains yet:
  • The purchase is typically valid
  • Zero hostnames have been activated against that key
  • Composer / portal access for a healthy account is not the same thing as “this Lemon row says inactive”
  • Your next step is: open the portal → add the first domain → then paste pk_forms_… into Filament
Inactive with a valid purchase and zero domains almost always means “ready, unused” — not “payment failed” and not “downloads are disabled.”

Active

After domains are registered and entitlement checks succeed, Lemon / portal status moves toward an active (in-use) picture:
  • At least one activation is associated with the license
  • Filament hosts on the whitelist can validate against your Public API key
  • Plan features (seats, hide branding where applicable) apply on successful checks

When something is actually wrong

Treat these as real entitlement problems (not the normal “inactive until first domain” case):
  • Purchase cancelled, refunded, or expired (yearly plan not renewed)
  • Account banned or otherwise blocked by support
  • Portal / Composer messaging that downloads are disabled (see FAQ below)
In those cases, refresh the portal after resolving billing with Lemon, or contact support with your purchase email. Do not paste the Lemon key into Filament hoping it will “force” activation — Filament only accepts pk_forms_….

Credential reference

Keep these four items mentally separate. Mixing them is the most common install / activation mistake.
Your Lemon Squeezy purchase key is used only for creating or recovering the portal account (and relinking after an upgrade). It is never used as a Composer password or as the Public API key in Filament.

Day-to-day workflows

1

Access the dashboard

Log into license.bjanczak.com/flex-forms/panel with the account you created after Lemon checkout.
2

Install the package

Copy cmp_… from Install via Composer, configure Composer auth, then follow Installation.
3

Unlock Studio

Copy pk_forms_…, register hostnames, then paste the key via Setup Wizard or Activate license (Global Settings → License).
4

Swap or add domains

Stay within your seat limit. Remove unused hosts before adding new ones. Prefer the hostname staff actually open in the browser.
5

Upgrade the plan

Buy the higher tier in the store, then Change license key with the new Lemon key so seats and features refresh.

Troubleshooting & FAQs

Yes. Open Install via Composer in the portal and regenerate. The old cmp_… is revoked immediately. Update every auth.json, Forge env, and CI secret that still uses the previous token, then run Composer again on each environment.
No. A single Public API Key (pk_forms_…) covers all domains registered under your account. Add each hostname to the domains list; keep pasting the same pk_forms_… into each Filament install (or share one key across environments that use the same portal account).
Flex Forms is built for resilience. After a successful license check, your app keeps a secure cache for roughly up to a week. Brief portal outages should not lock Studio or stop respondents from submitting. Prolonged outages past the cache window can block fresh validation until the portal is reachable again.
Downloads are disabled when the purchase entitlement is no longer valid — for example cancelled, refunded, expired (yearly plan lapsed), or the account is banned. That is not the same as Lemon showing inactive with zero domains on a healthy new purchase. Refresh the portal after fixing billing; if it persists on a valid purchase, contact support with your checkout email.
Add at least one domain in the portal. Inactive with a valid purchase and an empty domain list almost always means “not activated yet.” If payment truly failed, Lemon / email will say so — do not confuse that with the unused-activation state.
Confirm you completed Change license key with the new Lemon key from the upgraded order. Buying alone does not always relink the portal account until that step is done. Then re-check the domain list and Plans & pricing.
The hostname in the browser must match a portal domain exactly, and the key must be the Public API key (not cmp_… or the Lemon key). See Activate license and Setup Wizard.
Last modified on September 7, 2026