Published at: 2026-09-17
Manage custom buttons
Custom buttons let you add business actions to object pages. These actions can update data, advance a process, or integrate systems.
Overview
Each object supports up to 20 custom buttons by default. Each custom button resource package adds five buttons. You can purchase up to five packages, for a maximum of 45 buttons.

1. Button types and options
Button types
- Business button: Runs business logic, such as changing a backend field or synchronizing third-party data.
- UI button: Opens a Custom Component, Custom Page, or external page. On a Form Page, it can write values back to the form.
Button locations
The location determines where the button appears:
- Details page
- List page general operation
- List Page Bulk Operation
- List Page Single Operation / quick action
- Related list single operation
- Create page
- Edit page
2. Configure custom button properties
Go to Object Management > Target Object > Button Management, and click Create Button.
Step 1: Set Visibility Conditions
-
Show the custom button when data is locked: Users can click the button during approval or another Lock Status.[!CAUTION] Do not enable this option when the action changes the current record. Otherwise, users might change data during approval.
-
Bulk button display: For a List Page Bulk Operation, Visibility Conditions are evaluated during execution. The button remains visible after users select records. Records that do not meet the conditions return Execution Failed.
Step 2: Configure input parameters
Use an existing Custom Field or create a temporary field for the button dialog.
- Unsupported API Name values:
name,owner,owner_department,life_status,lock_status,out_resources,mc_currency, andpublic_data_type. - Unsupported Field Type values include Formula, Master-Detail Relationship, Auto Number, Roll-Up Summary, and Reference.
- Payment, Check-In, Record Type, External Personnel, external department, collaborative rich text, long text, and rich text are also unsupported.
Step 3: Configure the Trigger Type
The action has three stages:
The current object is the Trigger Object. A list action can run as a Batch Operation.
- Pre-validation
- Runs a Custom Function before the action, such as checking inventory for a Sales Order.
- Only business buttons support pre-validation. It runs after the user enters parameters.
- Action
-
Field change: Updates a Custom Field with a variable or constant.[!IMPORTANT] A custom button bypasses the object’s Validation Rules. Data Range filters do not apply when the button updates a Lookup. Invalid changes, such as division by zero, stop the update.
-
Custom Function: One button supports one function.
-
- After success
- Sends a CRM notification or email.
3. Set role permissions
You must authorize roles through either entry point. Both use the same permission data:
-
Button configuration: In step 6, select the roles that can view and use the button.
-
Role permissions: Go to Object > Role Permission Settings, select a role, and authorize buttons in the list.