Member User Access
Klub stores provider data, gates, and progress on the member user. Use this page to shape the member blueprint and permissions.
Member blueprint
Create a member role (or any role in bnomei.klub.members.roles) and disable Panel access.
site/blueprints/users/member.yml
title: Member
permissions:
access:
panel: false
fields:
klub_provider:
type: hidden
translate: false
gates:
type: hidden
progress:
type: hidden
Notes:
- The provider data field name comes from
bnomei.klub.providers.{provider}.field(default: provider key). - If you use a stable field name like
klub_provider, setbnomei.klub.providers.{provider}.fieldto that field name. gatesandprogressfield names are defined byProviderGates::$fieldandUserFieldProgress::$field.- Provider fields can be encrypted when you enable
bnomei.klub.crypto.encrypt. - If you keep the default field name (provider key), Klub ships hidden field presets:
fields/klub/{provider}(stripe, mollie, lemonsqueezy, chargebee, polar, paypal, paddle).
Example config if you use a stable provider data field name:
config/config.php
<?php
$provider = 'paddle'; // change to your provider key
return [
'bnomei.klub.providers.' . $provider . '.field' => 'klub_provider',
];
User helpers
The plugin adds user methods like:
$user->hasGate($priceId)$user->owns($priceIdOrProduct)$user->owned()(array of owned products)$user->allGates()(Field with all gate IDs)$user->subscriptions()$user->allOwned()$user->hasProgress($page)$user->isMember()/$user->isAdmin()$user->toCustomer()(provider customer data)$user->updateKlub($data)(blueprint-filtered updates)