You are here:
Configure Visit Expenses
Configure visit expenses so field reps can record and allocate costs, such as meals or travel, from the visit record page.
Required Editions
| Available in: Lightning Experience |
| Available in: Enterprise and Unlimited Editions with Life Sciences Cloud, Life Sciences Cloud for Customer Engagement Add-on license, and the Life Sciences Customer Engagement managed package. |
| User Permissions Needed | |
|---|---|
| Create expense types and modify the visit record page: | Customize Application |
| Access the Admin Console to activate trigger handlers and generate the metadata cache: | Life Sciences Commercial Admin |
Field reps can capture expenses with or without receipts. On mobile, the feature integrates with the device camera to attach photos. To preserve the audit trail, Salesforce locks expense records and attachments after the visit is submitted.
- To define selectable expense categories, from the App Launcher, find and select Expense Types.
-
Click New and configure the expense type.
- Expense Availability Type: Visit.
- Active: Selected.
- Effective Dates: Ensure that the current date falls within the start and end dates.
- From Setup, in Lightning App Builder, edit the visit record page.
- Add a tab labeled Expenses and drag the ExpensesListView component into the tab.
- From the App Launcher, find and select Life Sciences Commercial, and then click Admin Console | Trigger Handler Administration.
-
Activate these trigger handlers:
- ExpenseLockHandler
- ExpenseParticipantLockHandler
- ExpenseParticipantNameHandler
- ContentDocumentLinkLockHandler
- ContentDocumentLockHandler
Object lock handlers apply only to the desktop site. For the mobile app, this logic is built in. - From the App Launcher, find and select Life Sciences Commercial, and then click Admin Console | Mobile Management | Metadata Cache.
- Verify that the Visit, Expense, ExpenseType, and ExpenseParticipant objects are included, and then click Generate Metadata Cache.
Did this article solve your issue?
Let us know so we can improve!

