WBAMS manages people at more than one level, and the levels are not different words for the same record. A client pays you. A member belongs to you. A staff member is paid by you. Those are three different relationships with three different sets of facts, so they are three different records — and they run side by side. A church has members, employs staff, and has clients on the day it sells something. Nothing is renamed into anything else.
Turning a level on
Open Setup › Management Levels (System Settings › People & Organization, or the wrench menu at the top right) and switch on the levels your organization actually has. A level that is off contributes no menu, no screens and no tables to your installation, so an operator who only bills customers never sees a membership roll.
WBAMS bills, and billing needs someone to bill. Every other level is yours to choose.
Chosen when WBAMS is installed
The installer asks which of these an organization has, on a step of its own before the database details, and installs only what was chosen. A declined level has no tables at all — not empty ones, and not a feature sitting switched off in a menu.
That decision is not final. Turning a level on here creates its tables at that moment, at the shape the release in use defines, and turning one off hides its screens and keeps every record behind them. Nothing on this page ever deletes anything. See Shape your workspace.
Modules
A level is a kind of person. A module is a whole part of the product that some organizations run and others have no use for, and it is the same question with the same answer: what is declined is not installed, and what is switched off later keeps its data.
Website sections
Some organizations never publish news, a knowledgebase or an events calendar. Updates, Knowledgebase and Events each have a switch under the modules. A section that is switched off leaves the website completely:
- every address of it — its pages, its feed, and the old
updates.phpandknowledgebase.phpaddresses — answers with the site's "page not found" page; - its links leave the header and footer menus, the client area's menus and sidebars, and the dashboard;
- its page sections (Updates, Events) are left out of every page, and buttons written into other sections that point at it are dropped;
- it is left out of the sitemap, and a switched-off Knowledgebase stops suggesting articles when a ticket is opened.
Its records are kept and stay editable under Help Center, where a notice says the section is not on the website, and its Help Center menu entry is hidden. Switching it back on brings everything back as it was.
Client registration
The same list has a Client registration switch for sites where only staff open accounts. It is the same setting as Allow Client Registration in General Settings, so the two screens always agree. Switched off:
signup.phpanswers "page not found", and every Register or Create account link and button disappears, including those written into page sections;- checkout asks for an existing account — the new-customer form and the "create account" choice are gone, and a forged new-customer submission is refused;
- a sign-in integration that would create an account on first use does not.
Administrators still create clients in the admin area and through the API, invited users still join the account that invited them, and signing in and password resets work as usual.
A site upgraded to 1.7.0 has Updates, Knowledgebase and Events switched on until an administrator saves this page with one of them off.
The switches are on this page, under the levels, so the shape of an installation is described in one place rather than two.
A site upgrading from a release before modules existed keeps every one of them on. An upgrade that quietly hid a module somebody was using would be a far worse surprise than a menu on a site that does not want one.
Industry presets
Six presets flip the switches an industry usually needs, as a starting point rather than a commitment — everything stays editable afterwards.
What you call them
A clinic says Patient where a club says Member and a studio says Artist. The same screen sets the singular and plural word each level is shown under, throughout the admin area. The label is yours; the level underneath it is not, so renaming Members to Patients does not turn them into clients or change a single thing about how the records behave. Leave a box empty to use the built-in word.
One person, one login
Identity is not duplicated. The users table stays the one login record, and each level hangs off it: the same person can be a client, a member and a staff member without holding three passwords. Equally, a level record does not need a login at all — userid is nullable on both members and staff, because most members never sign in to anything and plenty of employees never open the billing system.
Members
The roll lists everyone who belongs to the organisation, with search, status and membership-type filters. A membership moves through four states.
Membership numbers fill themselves in from the highest already issued, and are yours to overwrite. The rules behind all of it — how numbers are formatted, when dues are raised, when a membership lapses and what a member may do for themselves — live on one page: Membership Policy. What each kind of membership is called and what it costs lives beside it under Membership Types.
Staff
The register holds the employment record: job title, department, type of employment, start and leaving dates, the pay rate and what it is a rate of, and the tax region and tax code. Departments are typed rather than maintained as a separate list, and the ones already in use are suggested as you type.
Pay history has to survive the person leaving. Delete an employment record only when it was created in error.
The employment record deliberately exists before payroll does: time and attendance, pay runs, payslips and the tax tables all read from it, and none of them can be built first. All of that has a page of its own: Payroll and time. tax_region and tax_code are captured from the first save so nothing has to be back-filled later — the tax tables are versioned per region and per tax year, so a recalculation of last year uses last year’s rates.
Where each level is administered
What a record carries
Member and staff records have the same shape as a client record: a summary, contacts, notes, files, an email history and a full change log. Anything filed against a record survives the person’s standing changing — a former employee keeps their record because pay history has to survive them, and a lapsed member keeps theirs because a membership that ended is still a membership that happened.
A record that never mentioned the person’s other levels would be three people rather than one, so every member and staff record lists what else the same identity holds, with a link to each.
The portal
A member or a staff member with a login signs in to an area of their own rather than to the client area. Somebody who also has a billing account is offered both and switches between them from the account menu; somebody who has none lands directly in the area they do hold.
Whatever else is switched on, notes filed on a record are for administrators and stay there.
Writing to members and staff
Every member and staff record has a Send message action with the same compose screen a client record has: attachments, CC and BCC, rich text, saved messages and merge fields. The merge fields offered are the ones that make sense at that level — a staff record offers staff number, job title and department; a membership record offers the membership number. Saved messages are held per level, so a template written for members is not offered on a staff record.
Permissions
Each level has its own administrator permissions — listing, adding, editing and deleting — plus separate permissions for the policy pages, payroll, timesheets and time off, listed under Members and Staff in the role editor. On upgrade they are granted to the roles that already hold the equivalent client and setup permissions, so an existing site does not find the new screens unreachable. See Team, roles, and access.