Configure Background Address Validation: Field Mapping and Workflows

Configuration

Background address validation verifies addresses without any interaction from your users, for example for existing records or for data created by integrations and portals. You set it up with a classic Dataverse workflow. These steps must be done by an administrator or a user with system customization privileges.

Prefer Power Automate? The same validation is available as Power Automate actions, for example with Azure Maps, Google Maps Geocoding, Google Address Validation or PostGrid.

Choose the right workflow step

All Address Validation steps are under Add Step > Address Validation in the workflow designer (Melissa steps are under Melissa).

Address APIWorkflow stepWhat it needs
Azure MapsVerify with Azure MapsAn API Configuration and the address values, set directly on the step. No Field Mapping is needed. See Option 1.
Google Maps GeocodingVerify with Google Maps Geocoding
Google Address ValidationVerify with Google Address Validation
PostGridVerify with PostGrid / Verify with PostGrid InternationalAn API Configuration and the address values. See Validate Addresses with PostGrid in Dataverse Workflows.
Melissa Personator / Melissa GlobalPersonator Check / Global Check (under Melissa)A Field Mapping. See Configure Melissa Personator.
Other APIs, or existing workflowsVerify Address (legacy)A Field Mapping. See Option 2.

We recommend the dedicated steps for Azure Maps, Google Maps and PostGrid: they are simpler to set up, return a clear success or failure, and return the extended ZIP code and a standardized confidence level. Verify Address (legacy) remains available, so existing workflows keep working.

Option 1: Dedicated steps for Azure Maps and Google Maps

Before you start, create an API Configuration for your API (see Setup Verification API type and key).

  1. Go to the Power Apps Maker Portal and open the solution where you want to include your workflow.
  2. Select New > Automation > Process > Workflow.

    Create a workflow from a solution

  3. Select the table where the address to validate is located, enter a name for your workflow and select Create.

    New workflow dialog

  4. In the workflow designer, select Add Step > Address Validation > Verify with Azure Maps, Verify with Google Maps Geocoding or Verify with Google Address Validation.
  5. Select Set Properties and fill in the inputs. Use the Form Assistant (Dynamic Values) to take each input address value from the record's columns, for example Address 1: Street 1 for Input Street Address.
  6. Add a Check Condition on the step's Result Found output (equals Success) and, if you want, on Confidence Level. In the condition, add an Update Record step that writes the verified outputs to your address columns.
  7. Save and activate the workflow. You can run it on demand, or automatically when a record is created or its address changes.

Inputs

InputRequiredWhat to enter
API ConfigurationYesThe API Configuration record for the API you use.
Input Street AddressYesHouse number and street.
Input Unit NumberRecommendedApartment, suite or unit. If the API does not return a unit, the value you supply is kept.
Input CityRecommendedCity.
Input State/ProvinceRecommendedState, province or region.
Input Zip/Postal CodeOptionalZIP or postal code.
Input CountyOptionalCounty.
Input CountryRecommendedCountry name or ISO code (for example US, CA).

Outputs

OutputDescription
Result FoundSuccess when a verified address was returned; Failed otherwise (for example an invalid license, not enough address data, or an API key problem). Check Verification Details for the reason.
Street Address, Unit Number, City, State/Province, County, CountryThe standardized address components.
Zip/Postal CodeThe postal code (for US addresses, the 5-digit ZIP code).
Extended Zip/Postal CodeThe full postal code, for example ZIP+4 (Azure Maps and Google Address Validation only).
Full AddressThe complete formatted address on one line.
Latitude, LongitudeThe coordinates of the address.
Confidence LevelHow confident the API is in the result. Azure Maps and Google Address Validation return the standardized levels described in Understanding Address Confidence Levels. Google Maps Geocoding returns HIGH (rooftop), MEDIUM, LOW or VERY_LOW.
Entity TypeThe type of result returned, for example ROOFTOP (Google Maps Geocoding) or BUSINESS / RESIDENTIAL (Google Address Validation).
Verification DetailsOK, or the reason the address could not be verified.

The steps do not update the record themselves; your workflow decides what to write, which keeps the user's data safe when a result is not good enough.

Option 2: Field Mapping and Verify Address (legacy)

The legacy step reads the address from the columns defined in a Field Mapping record. Field Mappings are also used by Bulk Address Validation (Preview), by the Melissa Personator and Global buttons and workflow steps, and by the Melissa Personator and Global Power Automate actions.

Step 1: Create the Field Mapping record

  1. In the Address Validation for Power Apps app, go to Settings > Field Mappings.
  2. Create a new record and enter the following information:
    • Configuration Name: a unique name for the configuration record (for example, account-billingaddress).
    • Table Name: the schema name of the source table (for example, account).
    • API Configuration: the API Configuration (address validation API key) to use for this table.
    • Overwrite existing address with verified address: Yes or No. When set to Yes, you select one set of address columns used for both input and output: the process reads them, validates the address and overwrites them with the result. When set to No, you select one set of columns for the input address and a different set for the output, so the validated address is written to the output columns. This is often used to keep the data entered by users when Dataverse auditing is turned off.

    Field Mapping general information

Optional parameter - Output Language: by default, the verified address is returned in US English. Selecting Custom Language displays a field where you pick another language. The output language can be changed only when using the Google Maps API (supported languages). (Bing Maps also supported this option but is deprecated.)

Legacy parameter - Address Verification Button: ignore this option.

Step 2: Select the address columns

After completing the general information, fill out the columns on the address fields tab. Only text columns are allowed for address fields, except Latitude and Longitude, which require floating point number columns.

Field Mapping address fields

Step 3: Create the workflow

  1. Create the workflow as described in Option 1 (steps 1 to 3).
  2. In the workflow designer, select Add Step > Address Validation > Verify Address (legacy). In older versions, this step is named Verify Address.

    Add the Verify Address step

  3. Enter a description for the step (for example, Validate Account Address 1) and select Set Properties.
  4. Provide one of the two parameters. Both are optional in the user interface, but one is required: if both are provided, the lookup is used; if neither is provided, the workflow returns an error.
    • Configuration Name: the name of the Field Mapping record, or
    • Field Mapping Configuration: a lookup to the Field Mapping record.

    Verify Address step properties

  5. Add the steps that use the result, then save and activate the workflow.

The step does not write the verified address to the destination columns. It returns the verified address components as outputs, so you decide what to do with them. The example below writes the verified address to the account's Description column.

Using the Verify Address outputs in an Update step

Outputs of Verify Address (legacy)

The examples below use this address: 175 W Jackson Blvd, Ste 500, Chicago, Cook County, IL 60604-3024, United States of America.

OutputExpected value
Street AddressThe street address, for example 175 W Jackson Blvd.
Unit NumberThe unit number when found, for example Ste 500. When the API does not return a unit, the unit entered by the user is kept.
CityThe city, for example Chicago.
CountyThe county when found, for example Cook.
State/ProvinceThe state or province, for example IL.
Zip/Postal CodeThe ZIP or postal code, for example 60604-3024. Melissa consistently returns ZIP+4 (US only); Google and Azure Maps return it when found.
Full AddressThe full address on one line, for example 175 W Jackson Blvd, Ste 500, Chicago, IL 60604-3024.
LatitudeThe latitude, for example 41.87776.
LongitudeThe longitude, for example -87.63321.
ConfidenceHow confident the API is in the result. Google Maps returns HIGH (ROOFTOP), MEDIUM (RANGE_INTERPOLATED), LOW (GEOMETRIC_CENTER) or VERY_LOW (APPROXIMATE). Bing Maps (deprecated) returns LOW, MEDIUM, HIGH or UNKNOWN.
Entity TypeThe type of result returned, for example the Google location type. Bing Maps (deprecated) returns values such as ADDRESS or NEIGHBORHOOD.
Verification DetailsDepends on the API: OK or the reason for a failure (Google Maps), the list of Melissa result codes (Melissa Global and Personator), or the HTTP status code (Bing Maps, deprecated). Not supported for Canada Post Autocomplete.
Melissa Result CodesMelissa only. A comma-separated list of the Melissa result codes.
Melissa Result Code DescriptionsMelissa only. A comma-separated list of short descriptions of the Melissa result codes.

Was this article helpful?