# StoreConnect Support

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](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](#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 |

---

## Follow StoreConnect

- [Email Newsletter](https://getstoreconnect.com/c/lp-newsletter)
- [LinkedIn Newsletter](https://www.linkedin.com/build-relation/newsletter-follow?entityUrn=7444956928444862464)
- [YouTube](https://www.youtube.com/channel/UCngKdP2x8l1wcbAKW3tvU8g)
- [LinkedIn](https://www.linkedin.com/company/storeconnect)
- [X / Twitter](https://x.com/storeconnecthq)

## Popular Links

- [Partners](https://getstoreconnect.com/partners)
- [News](https://getstoreconnect.com/articles/news)
- [Events](https://getstoreconnect.com/articles/events)
- [Feature Comparison](https://getstoreconnect.com/how-we-compare)
- [Download a free trial](https://appexchange.salesforce.com/appxListingDetail?listingId=a0N3A00000FMkeKUAT)
- [Book a Demo](https://getstoreconnect.com/contact)

## Documentation

- [Help documentation](https://support.storeconnect.com/help-documentation)
- [Videos & tutorials](https://support.storeconnect.com/videos-tutorials)
- [Developer reference](https://support.storeconnect.com/developer-reference)
- [Release notes](https://support.storeconnect.com/release-notes)
- [Troubleshooting](https://support.storeconnect.com/troubleshooting)
- [Trust Center](https://trust.getstoreconnect.com/)
- [Status Page](https://status.storeconnect.com/)

## Contact

- info@getstoreconnect.com
- US +1 415 745 3230
- AUS +61 2 8365 2308

100 S Ashley Dr, Suite 600-2461
Tampa FL 33602-600 USA

Level 22, Sydney Place
180 George Street
Sydney, NSW, 2000, AUS

---

StoreConnect Support — https://support.storeconnect.com