Skip to content
Log in

Add custom fields to the End Shift form

On this page

You can add extra input fields to the End Shift screen in POS — for example, a manager name, a safe drop amount, or a cash discrepancy reason. Fields are defined using a POS Layout record and saved to the shift’s custom data when the shift is ended.

Prerequisites

  • Salesforce Admin access to create Custom Data Mapping, POS Layout, POS Layout Field, and POS View records
  • Familiarity with ending a shift in POS

Step 1: Create Custom Data Mapping records

Each field you add to the form needs a Custom Data Mapping record so that POS can save the value when the shift is ended.

  1. In Salesforce, go to Custom Data Mapping and select New.
  2. Fill in the fields as follows:

    Field Value
    Object API Name s_c__register_shift__c
    Field API Name Your chosen field name (e.g. manager_name)
    Data Type The type of data to validate and save (see Supported data types)
    Access Level Read/Write
  3. Save the record.
  4. Repeat for each field you want on the form.

:::note Fields without a matching Custom Data Mapping record, or where the Access Level is not Read/Write, are ignored when the shift is saved. :::

Step 2: Create the POS Layout record

  1. In Salesforce, go to POS Layout and select New.
  2. Fill in the fields as follows:

    Field Value
    Identifier end_shift_form
    Display Name End Shift Form (or any name you prefer)
    Object Name register_shift
    Type Form
  3. Save the record.

The end_shift_form identifier is what tells POS to apply this layout to the End Shift screen. The identifier must be entered exactly as shown.

Step 3: Add POS Layout Field records

Add a POS Layout Field record for each input you want on the form.

  1. In Salesforce, go to POS Layout Field and select New.
  2. Fill in the fields:

    Field Value
    POS Layout Select the End Shift Form layout you created
    Field Name Must exactly match the Field API Name in your Custom Data Mapping
    Display Name Label shown above the input on screen
    Type field
    Position Display order — lower numbers appear first
    POS View Leave blank for a standard text input, or link to a POS View for a custom input (see step 4)
  3. Save the record.
  4. Repeat for each field.

Step 4: Add a POS View for custom inputs (optional)

For dropdowns or other custom input elements, create a POS View with an HTML template and link it to the relevant layout field.

  1. In Salesforce, go to POS View and select New.
  2. Set an Identifier (e.g. end_shift_discrepancy_reasons).
  3. In the HTML Template field, enter your HTML. For a dropdown:

    html <select name="cash_discrepancy_reason"> <option value="">Select a reason</option> <option value="counting_error">Counting error</option> <option value="theft">Suspected theft</option> <option value="refund">Unrecorded refund</option> <option value="rounding">Rounding difference</option> <option value="other">Other</option> </select>

    :::note The name attribute in your HTML must match the Field Name on the POS Layout Field exactly. This is how POS maps the input value to the correct custom data field. :::

  4. Save the record.
  5. Open the POS Layout Field that should use this view, and set the POS View field to your new view.

Supported data types

Data type Accepted values
string, textarea, email, phone, url Text
integer, long Whole numbers
double, currency, percent Decimal numbers
boolean true or false
date Date (e.g. 2024-01-15)
datetime Date and time (e.g. 2024-01-15T10:30:00Z)
picklist, combobox Single selection
multipicklist Multiple selections

Configure the Notes field character limit (optional)

The End Shift screen includes a built-in Notes field. By default it allows up to 500 characters. You can increase this to a maximum of 10,000 characters by setting a store variable.

In your store’s Store Variables (or equivalent settings), add:

json { "shift": { "notes": { "character_limit": 2000 } } }

Override the secondary action button (optional)

By default, the End Shift form shows an Open Cash Drawer button as a secondary action. You can replace this with a different action by linking an Action Item record to your POS Layout.

  1. In Salesforce, create a new Action Item record:

    Field Value
    Display Name Button text shown in POS (e.g. Print shift report)
    Action Action identifier (e.g. print:shift_report)
  2. Open your End Shift Form POS Layout and set the Secondary Action Item field to the action item you just created.

Common action identifiers:

Action Behavior
cash_drawer:open Opens the connected cash drawer (default)
print:receipt Prints a receipt
print:shift_report Prints a shift report

Was this article helpful?

Was this article helpful?