How VA 2.0 Handles Consumer Contact Updates

Prev Next

Overview

When consumers update their contact information (such as phone number, email, or address) in VA 2.0, ACE captures and applies those changes in real time.

This article explains:

  • What happens to updated contact data

  • How text messaging preferences are handled

  • Which workflow triggers may apply

  • How to automate verification and prioritization of new records

What Happens When a Consumer Updates Their Information

When a consumer enters contact information in VA 2.0:

  • The data is inserted into the consumer's profile in ACE only if that field is currently blank on the primary account.

  • Existing contact information is never overwritten, preserving original data integrity while still capturing missing details.

  • Each new contact detail is recorded in an account note, which:

    • Is visible to agents for review.

    • Allows agents to manually apply the update if deemed appropriate.

    • Balances consumer self-service with agent oversight.

Phone Number & Text Messaging Preferences

When a consumer updates their phone number in VA 2.0:

  • If “Text me” is set to true, the phone number is automatically opted in for text messaging.

  • If “Text me” is set to false, an opt-out confirmation message is sent.

This opt-in/opt-out logic honors consumer consent preferences.

Examples of Contact Update Behavior

Example 1: No Existing Phone Number

  • The ACE record has no phone number listed.

  • The consumer adds a new phone number in VA 2.0 and enables "Text me."

  • Result in ACE:

    • The phone number is inserted into the consumer's profile.

    • It is verified, marked as priority 1, and opted in for text messaging.

    • A note is added to the account documenting the update.

Image displays Example 1 — new phone number added, verified, prioritized, and opted in.

Example 2: Existing Phone Number Present

  • The ACE record already contains a primary phone number.

  • The consumer enters a different phone number in VA 2.0 and enables "Text me."

  • Result in ACE:

    • If the existing primary phone number is Verified:

      • New number is added, verified, and opted in for text messaging.

      • New number is set to priority 2 (immediately after the existing Verified number).

    • If the existing primary phone number is not Verified:

      • New number is added, verified, and opted in for text messaging.

      • New number is set to priority 1.

    • An account note records the consumer’s submission.

    • Agents may choose to promote the new number or keep the current primary.

Image Displays Example 2 — account notes logging phone updates, consent changes, and trigger initiations from VA 2.0.

Example 3: No Existing Email Address

  • The ACE record has no email on file.

  • The consumer adds an email address in VA 2.0.

  • Result in ACE:

    • The email is inserted into the account.

    • It is verified, assigned priority 1, and marked as OPTED_IN.

    • An account note is created to log the update.

Example 4: Email Update with Existing Email Present

  • The ACE record already has an email address on file.

  • The consumer enters a new email address in VA 2.0.

  • Result in ACE:

    • The new email is added as an additional primary with a lower priority (e.g., 2).

    • It is verified and marked as OPTED_IN.

    • An account note is created documenting the update.

    • Agents can choose whether to promote the new email.

Example 5: No Existing Mailing Address Present

  • The ACE record has no mailing address on file.

  • The consumer provides a new address through VA 2.0.

  • Result in ACE:

    • The full address is inserted into the consumer’s profile.

    • It is marked as active, assigned priority 1, and classified as Demographic Type = Primary.

    • The source field is blank, and the address is not automatically verified.

    • A series of account notes are generated, documenting:

      • Trigger initiations (onAfterVirtualAgentPersonContactUpdate and onAfterVirtualAgentPersonUpdate)

      • Component-level changes (Address1, Address2, City, State, Zip) from <empty> to the new values

      • The full address creation event with formatting

    • Agents can view these notes and optionally verify or adjust the record as needed.

Image displays Example 5 — new address added from VA 2.0 with priority 1.

Example 6: Existing Mailing Address Present

  • The ACE record an existing Mailing address on file.

  • The consumer provides a new address through VA 2.0.

  • Result in ACE:

    • The full address is inserted into the consumer’s profile.

    • It is marked as active, assigned priority 2, and classified as Demographic Type = Primary.

    • The source field is blank, and the address is not automatically verified.

    • A series of account notes are generated, documenting:

      • Trigger initiations (onAfterVirtualAgentPersonContactUpdate and onAfterVirtualAgentPersonUpdate)

      • Component-level changes (Address1, Address2, City, State, Zip) from <empty> to the new values

      • The full address creation event with formatting

    • Agents can view these notes and optionally verify or adjust the record as needed.

Workflow Triggers to Consider

Two key triggers are involved when consumers update contact details:

  • onAfterVirtualAgentPersonContactUpdate: Initiates after a consumer updates address, phone, or email.

  • onAfterVirtualAgentPersonUpdate: Initiates when a consumer updates name, DOB, SSN, and contact info.

Caution

These two triggers may initiate simultaneously. Carefully configure your workflows to avoid duplication or conflicts.

Optional Automation: Verify and Prioritize New Demographics

You can optionally use the onAfterVirtualAgentPersonUpdate trigger, connected to an Action Path, to run a JavaScript flow action to automatically verify and prioritize new demographic address, phone, and email records submitted by consumers in VA 2.0.

This automation can be added in two ways:

  1. Existing Action Path – Insert the JavaScript flow action into the Action Path already linked to onAfterVirtualAgentPersonUpdate trigger.

  2. New Action Path – Create a new Action Path, add the JavaScript flow action, and link it to onAfterVirtualAgentPersonUpdate trigger.

Important

A trigger can only be connected to one Action Path at a time. If onAfterVirtualAgentPersonUpdate is already linked, you must either add the JavaScript to that existing Action Path or disconnect it before creating a new action path.

Caution

Exercise extreme care when creating Action Paths to be applied to your workflow. Incorrect configuration or execution can cause significant issues, including duplicate updates or unintended data changes.

Review all potentially associated workflows before making new Action Paths active.

For assistance adding or modifying Action Paths, contact Support.

Configure the Action Path

Image Displays onAfterVirtualAgentPersonUpdate Action Path and Flow Action

  1. Navigate to Setup → Workflow → Action Paths and create a new Action Path.

  2. Provide the following details:

    1. Label: onVirtualAgentPersonUpdate

    2. Description: JavaScript flow action to automatically verify and prioritize new consumer demographic records—address, phone, and email

  3. Add Flow Actions:

    1. Label: JavaScript (VA 2.0): Verify Consumer Demographic Updates & Set Priority

    2. Class Name: Javascript

    3. Script: See example below.

  4. Save the Action Path.

var demographicAddress = new DemographicAddress().loadMatch(
    debt.getDebtID(),
    Demographic.Type.PRIMARY,
    vaPerson.getAddress1(),
    vaPerson.getCity(),
    vaPerson.getState(),
    vaPerson.getZip()
);
if (demographicAddress != null && demographicAddress.exists())
{
    demographicAddress.setVerified(true);
    demographicAddress.setVerifiedDate(DateTime.now());
    demographicAddress.save();
    demographicAddress.makeFirstPriority();
}
    
var demographicPhone = new DemographicPhone().load(debt.getDebtID(), vaPerson.getPhoneCall());
if (demographicPhone.exists())
{
    demographicPhone.setVerified(true);
    demographicPhone.save();
    demographicPhone.makeFirstPriority();
}
    
var demographicEmail = new DemographicEmail().load(debt.getDebtID(), vaPerson.getEmail());
if (demographicEmail.exists())
{
    demographicEmail.setVerified(true);
    demographicEmail.save();
    demographicEmail.makeFirstPriority();
}

Connect the Action Path and Trigger

  1. Go to Setup → Workflow → Trigger, select New.

  2. Event Type: onAfterVirtualAgentPersonUpdate

  3. Active: true

  4. Flow Action ID: Select the onVirtualAgentPersonUpdate action path from the dropdown.

  5. Save.

Image Displays onAfterVirtualAgentPersonUpdate Trigger Connected with the Action Path

SQL Report for Consumer Demographic Updates in VA 2.0

This example SQL report can be used to identify consumer demographic updates made in VA 2.0 for review as needed.

SELECT
    debt_note.debt_id,
    debt_note.create_date::timestamp,
    debt_note.parameters[1] AS "String:Contact Field",
    debt_note.parameters[2] AS "String:Previous Contact Detail",
    debt_note.parameters[3] AS "String:VA Contact Update"
FROM 
    debt_note
WHERE
    debt_note.create_date >= CURRENT_DATE - INTERVAL '1 day'
    AND debt_note.note_type = 'VIRTUAL_AGENT'
    AND debt_note.user_id = (
        SELECT user_id 
        FROM auth_user_passwd 
        WHERE username = 'virtual_agent'
    )
    AND debt_note.parameters[1] IN (
        'Email Address', 'Phone Call', 'Address1', 'Address2', 
        'City', 'State', 'Zip', 'First Name', 'Last Name'
    )
    AND debt_note.identifier = 'note.va_person.field.change'
ORDER BY 
    debt_note.create_date, 
    debt_note.debt_id, 
    debt_note.parameters[1]

Please Note:

This report displays all consumer demographic updates submitted through VA 2.0 based on account notes created at the time of submission. It functions independently of the optional JavaScript automation for verifying and prioritizing records, meaning it will return the same update history whether or not that automation is enabled in your workflows.

Example Report Output:

Image Displays Example SQL Report Output for Consumer Demographic Updates from VA

Communication Preferences Are Respected

All contact updates respect the consumer’s Do Not Call, Do Not Email, Do Not Mail, and Do Not Text flags set on the primary account.

Related Resources

Virtual Agent 2.0 Workflow and Triggers