---
schema_version: "1"
id: 8b79d0d3501aede913d791710fcb6682eb2a9fc699d07dfd7b085034c4e6c9e9
title: Identify a Customer by Phone Number
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/ai/264-0-0/agent_identify_customer_by_phone.md
canonical_url: https://help.salesforce.com/s/articleView?id=ai.agent_identify_customer_by_phone.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 7c274a059f50cb24b8a1fa3304d004b01968a4bf4bded61c69772937e7fe0274
description: Give your agent a way to identify a customer by phone number so that voice callers aren't asked to spell out an email address. You build a flow that looks up a contact by phone, wrap it in a custom action, and make that action the agent's only identification path.
products:
  - Agentforce
  - Cross Cloud
release: "264"
---
# Identify a Customer by Phone Number

Give your agent a way to identify a customer by phone number so that voice callers aren't asked to spell out an email address. You build a flow that looks up a contact by phone, wrap it in a custom action, and make that action the agent's only identification path.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col style="width:100%"></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: Lightning Experience</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: Enterprise, Performance, Unlimited, and Developer Editions. Required add-on licenses vary by agent type.</td></tr></tbody></table>

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="text-align:center;vertical-align:top;" id="d112864e61">User Permissions Needed</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d112864e61 ">&nbsp;</td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d112864e61 ">&nbsp;</td>

          </tr>
          <tr class="">
            <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d112864e61 ">To create an action and edit an agent:</td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d112864e61 ">
              <p>Manage Agentforce Service Agents AND Manage AI Agents</p>
              <p>OR</p>
              <p style="margin-bottom:0;">Customize Application</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d112864e61 ">To open, edit, or create a flow in Flow Builder:</td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d112864e61 ">Manage Flow</td>

          </tr>
        </tbody>
      </table>

Make sure that:

- You have an agent with at least one subagent that needs to identify the customer, for example to look up their orders, cases, or account.
- The agent user's permission set grants Read access to the Contact object and to the records the agent retrieves after it identifies the customer.

Voice callers can't reliably spell an email address aloud. Speech recognition confuses letters that sound alike, such as A and 8, B and D, or M and N, so an email address captured over voice often fails to match a contact record. A phone number is spoken as digits and read back digit by digit, which is far more accurate. For a voice agent, identify the customer by phone number, order number, account number, or date of birth rather than by email address.

Agents ship with a built-in action that identifies a customer by email address, but there's no built-in action that identifies a customer by phone number. You build one in Flow Builder, with no code, and then make it the only identification action the subagent can reach.

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ai-generative_ai-264-0-0-production-enus/f8ef6498-d7b2-44e3-9b34-ffd5a850aae9/images/icon_note.png)

Note You don't need a separate verification step to force identification. When a downstream action, such as an order lookup, requires a resolved contact record as input, the agent can't complete the customer's request until the phone identification action runs first. Identification becomes a data dependency rather than a routing gate.

1. Build a flow that looks up a contact by phone number.
    
    The flow takes a phone number, finds the matching contact, and returns that contact record to the agent.
    
    1. From Setup, in the Quick Find box, enter Flows, select **Flows**, and then create an **Autolaunched Flow (No Trigger)**.
    2. Add a text input variable for the phone number, and make it available for input.
    3. Add a **Decision** element that checks that the phone number isn't blank.
        
        The Decision lets the flow skip the lookup when no phone number is provided, so it never queries contacts with an empty filter and returns an arbitrary record.
    4. Add a **Get Records** element on the **Contact** object, filtered where the contact's phone field equals the input phone number, and store only the first matching record.
        
        ![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ai-generative_ai-264-0-0-production-enus/f8ef6498-d7b2-44e3-9b34-ffd5a850aae9/images/icon_note.png)
        
        Note The standard Contact phone field appears in the UI as **Business Phone**, and its API name is `Phone`. Filter on the phone field your customers actually provide, such as **Mobile Phone** if that's how they call in.
    5. Add a record output variable for the contact, make it available for output, and add an **Assignment** element that copies the found record into it.
    6. Save and **Activate** the flow.
2. Create a custom action from the flow.
    
    The action is how the agent calls your identification flow during a conversation.
    
    1. In Agentforce Builder, add a new action to the subagent that handles the customer's request.
    2. Choose **New action**, give it a clear name such as **Identify Customer by Phone**, and set the reference type to **Flow**. Then select the identification flow you activated.
        
        Write a description that tells the agent when to use the action, such as "Identify a customer by their phone number and return their contact record." A specific description is the main factor in whether the agent selects the action at the right moment. For more information, see [Best Practices for Agent Action Instructions](https://help.salesforce.com/s/articleView?id=ai.copilot_actions_instructions.htm&type=5&language=en_US).
    3. Require the phone number input so that the agent never calls the action without a value.
    4. Keep the contact output hidden from the conversation, and add loading text such as Let me pull up your account. so the caller isn't met with silence while the lookup runs.
3. Make phone identification the subagent's only identification path.
    
    If the email action stays in place, the agent can still choose it and ask the caller to spell out an email address.
    
    1. Confirm that the **Identify Customer by Phone** action is listed in the subagent's actions.
    2. Remove the built-in **Identify Customer by Email** action from the same subagent.
    3. Save your changes, and then commit a new agent version.
4. Test the identification path.
    
    Use the **Preview** panel in Agentforce Builder in **Simulate Mode** to have a short conversation with the agent. Confirm that the agent asks for a phone number instead of an email address, identifies the contact, and completes the follow-up lookup. For more information, see [Simulate and Live Test Modes](https://help.salesforce.com/s/articleView?id=ai.agent_simulate_and_live_modes.htm&type=5&language=en_US).

The agent identifies callers by phone number and no longer asks anyone to spell out an email address. Because the phone action is the only identification path on the subagent, the agent uses it every time before it runs an action that needs a resolved contact.

#### See Also

- [Create a Custom Action](https://help.salesforce.com/s/articleView?id=ai.agent_actions_custom.htm&release=264.0.0&type=5 "You can create a custom action from the asset library or from within an agent in Agentforce Builder. When you create an action from the asset library, it’s available to add to multiple agents and versions. When you create an action from within an agent in Agentforce Builder, it’s available only to that agent.")