At a glance

Before, CRM edit access meant full line-item edit access. After, you choose what users on a custom role can change — without blocking quantities and serving times.

Schematic wireframe — not actual UI

Before

CRM full access

One gate controls all line-item actions

After

CRM full access
Line Items section
  • Create custom items
  • Edit fields (name, rev. cat.)
  • Edit prices + taxes/fees
  • Quantity & serving time (always)

Three independent toggles per custom role

1. Custom Roles settings

Admins configure the new permissions when editing a custom role under Settings → Custom Roles. Toggles appear on custom roles that have full CRM access. Wireframes below are schematic — not screenshots.

Before
Edit custom role
Role name
Application access
CRM
Settings
Other settings toggles
No line-item permissions here
Discard Apply
Problem: The only lever was CRM access. Any custom role with edit rights could change catalog pricing too.
After
Edit custom role
Role name
Application access
CRM
Line items
Allow creating custom line items
Turning this off disables the ability to add custom line items to bookings and invoices.
Allow editing existing line item fields
Turning this off disables editing name and revenue category on catalog line items on bookings and events. Custom line items created on the booking are not affected.
Allow editing existing line item prices
Turning this off disables editing price, tax-inclusive price, and taxes and fees on catalog line items on bookings and events. Custom line items created on the booking are not affected.
Discard Apply
Solution: Three toggles on each custom role — and taxes follow the prices toggle, not the fields toggle. Defaults stay ON for existing custom roles.

2. Booking → Line Items tab

Same booking, same custom role — different experience depending on how the admin configured that role. Hatched blocks = locked catalog fields; plain blocks = editable.

Before — Custom role has full CRM edit access
Overview Line items Events
Add item Add multiple
[event] Gala Dinner · total
catalog
custom
Every field is editable. Catalog prices can be changed by anyone with CRM edit access.
After — Same custom role, line item toggles off
Overview Line items Events
New custom item Add existing
[event] Gala Dinner · total
catalog
custom
Locked fields show permission tooltip on hover
Fields toggle locks name & rev. category. Prices toggle locks price and taxes together. Quantity (solid blocks) still works. Custom row stays editable.

Legend

Editable — plain field block in wireframe
Locked — hatched block (catalog items only)
Always on — quantity & serving time
catalog From menu — restrictions apply
custom Created on booking — stays fully editable
Default behavior unchanged Existing custom roles are backfilled with all three toggles ON, so nothing changes until an admin edits a custom role. Serving time and quantity are never restricted.