White label & resale billing setup
On the Business plan you can run BlnkSpace under your own brand and, optionally, actually charge your own clients for access instead of them paying BlnkSpace directly. This page covers both — branding/domain setup, and the resale-billing piece specifically, including a Stripe setting that’s easy to miss and looks like a bug if you skip it.
Branding and your own domain
These replace the BlnkSpace name/logo across the dashboard sidebar and the sign-in/sign-up screens for anyone visiting your app domain (below) — clients see your brand, not BlnkSpace’s.
A domain you control (e.g. app.youragency.com) for the dashboard/editor/login. Same DNS pattern as any custom domain here — add the shown record (A for an apex domain, CNAME for a subdomain), click Check status. This is a different domain concept from a site’s own custom domain — see the callout below if you also run a published site.
By default your app domain’s root address just redirects to sign-in. If you want an actual landing page there instead — with your own copy, not BlnkSpace’s — pick or create a document under Homepage in the same settings section. It’s a normal page in the editor; publish it once you’re happy with it.
Inviting clients
Invite a client by email from the same settings section — they get a real email (sent from BlnkSpace’s own notifications address, or your own connected Resend account if you have one set up) with a link to accept. Accepting tags their account as yours: they’ll see your branding when they visit your app domain, and count toward your client total. This works whether they’re a brand-new signup or an existing BlnkSpace account.
Removing a client
Removing a client from your list is always immediate for you — they stop counting toward your client total right away. What happens to their access is your choice, made at the moment you remove them:
| Option | What happens |
|---|---|
| Keep access until paid period ends | Their current subscription with you is cancelled (you stop being charged for them), but they keep whatever plan they were on through the period they already paid for. They see a prompt to subscribe directly with BlnkSpace if they want to keep it going past that — naming your brand specifically, not generic “reseller” language. If they don’t, they drop to the free plan once that period ends. |
| Revoke immediately | Full cutoff right now — dropped to the free plan instantly, no grace, no prompt. Meant for non-payment, abuse, or chargebacks — not the default, since it takes away access to something they may have already paid for. |
Charging clients directly (resale billing)
By default, a client who upgrades still pays BlnkSpace directly, full price. If you’d rather charge them yourself — setting your own price, collecting payment into your own Stripe account — that’s the Resale pricing section, one step further down.
Same Stripe Connect flow used for selling products (Settings → Stripe Commerce). One connected account is shared for both — if you already sell products, resale billing uses that same account.
One price per tier you want to resell (Creator/Team/Business). Minimum is 2x BlnkSpace’s own listed price for that tier — the field shows the minimum. At that minimum BlnkSpace takes its own list price and you keep the rest (roughly a 50/50 split); anything you price above the minimum is yours in full. Updating a price later replaces it cleanly; it doesn’t create a duplicate product in your Stripe dashboard.
In your own Stripe dashboard (the account you just connected, not BlnkSpace’s) → Settings → Billing → Customer Portal → turn on “Customers can switch plans” and add the plan prices you just created to the allowed list.
A client changing plans gets redirected to your Stripe Billing Portal — and if this isn’t turned on, the portal has nothing to offer them. It won’t error, it’ll just open a page with no plan-switch option, which looks exactly like a bug. This setting is per Stripe account, so it doesn’t carry over from anywhere else you’ve already configured it.
Which setting does what
| Setting | What it controls |
|---|---|
| App domain | Which domain shows your branded dashboard/editor/login instead of BlnkSpace’s. |
| Homepage | What renders at that domain’s root address — optional, defaults to redirecting straight to sign-in. |
| Resale pricing | What you charge clients, and whose Stripe account collects it. |
| Portal “switch plans” | Whether a client can actually change plans after their first purchase — set in your own Stripe dashboard, not BlnkSpace’s. |
| Remove client | Ends your billing relationship with them — you choose whether they keep their plan through what they already paid for, or lose it immediately. |
Troubleshooting
| Symptom | What it means |
|---|---|
| Connecting a domain says "already connected as a site's custom domain" | That exact domain is already serving one of your published sites — pick a different domain for your app, or move the site first. |
| A client's "switch plan" opens Stripe with no options | Portal plan-switching isn't enabled on your (the reseller's) own connected Stripe account yet — see the step above. |
| Resale price rejected | Below 2x BlnkSpace's own list price for that tier — the field shows the minimum you can charge. |
| Client's Settings page shows nothing has changed after inviting them | Expected if they haven't visited your app domain yet — the tag alone doesn't change their normal BlnkSpace account. |
| Re-upgraded to Business and your domain/branding look blank | Shouldn't happen — both survive a downgrade. If you see this, the domain still needs a re-verify (check the domain section) before it shows as connected again. |
| A removed client's plan didn't change right away | Expected if you chose "keep access until paid period ends" — that's the point of the grace option, not a bug. |