Skip to content
Log in

Capture address fields when creating a new POS customer

On this page

By default, the POS new customer form captures first name, last name, phone, and email. Use this process to add address fields to that form, so a cashier records the address at the same time as the name and contact details.

The form supports three sets of address fields:

  • Billing address (billingstreet, billingcity, billingstate, billingpostalcode, billingcountry) — saved to the Billing Address on the customer’s Account record in Salesforce.
  • Shipping address (shippingstreet, shippingcity, shippingstate, shippingpostalcode, shippingcountry) — saved to the Shipping Address on the customer’s Account record in Salesforce.
  • Mailing address (mailingstreet, mailingcity, mailingstate, mailingpostalcode, mailingcountry) — saved to the Mailing Address on the customer’s Contact record in Salesforce.

Use billing or shipping when the address is for delivery or order purposes, or when your fulfillment or reporting works from the Account. Use mailing when the address belongs to the individual contact. For example, direct mail or marketing tools that draw from the Contact’s Mailing Address rather than the Account.

The form is controlled by a POS Layout record with the identifier customer_form, and each field on it is a POS Layout Field record.

:::warning A customer_form layout replaces the default form, it does not add to it. As soon as the layout has one or more POS Layout Fields, the POS shows only those fields, so first name, last name, phone, and email disappear unless you add them yourself. The form also cannot be submitted without a first name, a last name, and either a phone number or an email address. Step 2 adds those four fields back. :::

Before you start

  • You need StoreConnect Administrator permissions to create POS Layout (Pos_Layout__c) and POS Layout Field (Pos_Layout_Field__c) records.
  • Check whether a POS Layout with Identifier customer_form already exists in your org. If it does, skip Step 1 and add your fields to it.

Step 1: Create a customer form layout

  1. In Salesforce, go to the POS Layouts list (or search for it in the App Launcher).
  2. Click New.
  3. Complete the record:

    Field Value
    Name Customer form
    Type Form
    Object Name contact
    Identifier customer_form
  4. Click Save.

:::note Both values have to be exactly these. The POS finds this layout by looking for the identifier customer_form, and it uses Object Name to work out which object’s fields to sync to the device. Set it to contact. With customer, the POS skips the layout when it builds the data schema, and any mailing address field you add in Step 3 is dropped when the customer is saved. :::

For everything else a layout can do, including action items and custom views, see POS layouts.

Step 2: Add the four default fields

The layout replaces the default form, so add these four fields first. Create one POS Layout Field record for each.

  1. Open the POS Layout record you created.
  2. In the POS Layout Fields related list, click New.
  3. Set Field Name, Display Name, and Position, then click Save.
  4. Repeat for each of the four fields.
Field Name Display Name Position
firstname First name 1
lastname Last name 2
phone Phone 3
email Email 4

Position sets the order the fields appear in, ascending, starting from 1.

Step 3: Add the address fields

Add one POS Layout Field record for each part of the address you want the cashier to record, continuing the Position numbering from Step 2.

You do not have to add all five fields from a set. A store that only needs a suburb and postcode can add just those two.

The Position values in the tables below assume you are adding one set. If you add fields from more than one set, carry the numbering upward rather than restarting at 5, so billing runs 5 to 9 and mailing 10 to 14. Give every field on the layout its own Position: the POS sorts the form by that number, so two fields sharing one appear in an order you have not chosen.

Billing address (saves to the Account’s Billing Address in Salesforce):

Field Name Display Name Position
billingstreet Street 5
billingcity City 6
billingstate State 7
billingpostalcode Postcode 8
billingcountry Country 9

Shipping address (saves to the Account’s Shipping Address in Salesforce):

Field Name Display Name Position
shippingstreet Street 5
shippingcity City 6
shippingstate State 7
shippingpostalcode Postcode 8
shippingcountry Country 9

Mailing address (saves to the Contact’s Mailing Address in Salesforce):

Field Name Display Name Position
mailingstreet Street 5
mailingcity City 6
mailingstate State 7
mailingpostalcode Postcode 8
mailingcountry Country 9

:::note Field names are matched case-insensitively, so billingstreet and BillingStreet both work. There is no billingstateprovince or shippingstateprovince field in Salesforce. Use billingstate and shippingstate. :::

Step 4: Confirm the fields appear in the POS

Adding layout fields changes the POS data schema. The POS picks the change up the next time it loads, and re-syncs contact records so the new fields are available on the device.

  1. Reload the POS in the browser.
  2. Go to the Customers list and click Create new customer. To check the in-cart path instead, open a cart, add a customer, then click Create new customer.
  3. Confirm the form shows the four default fields followed by your address fields, in Position order.
  4. Enter a customer’s details, including an address, then click Create new customer. In the in-cart path, the button is Create & add to cart.

Open the new record in Salesforce to confirm the address was saved. Billing and shipping address fields appear on the Account record; mailing address fields appear on the Contact record.

Was this article helpful?

Was this article helpful?