Posts Tagged ‘address validation US’

What is RDI in Address Validation?

RDI or a Residential Indicator is a feature in our Address Validation products that indicates if the United States Postal Service (USPS) considers an address to be a residence or a business. It’s quite a popular piece of information, and for good reason; not only do our clients make use of this feature to make informed decisions but we use it to enhance several of our validation services.

It can be found in our Address Validation – US service, in the field, “IsResidential”.  Other services, like Address Insight and Lead Validation, use it to help distinguish between Business and Residential Leads.

What does ‘residential’ address mean to the USPS?

Since the RDI value comes directly from the USPS, one might assume that this value relates to mailing and shipping; and you would be absolutely right. In short, this value will tell you whether or not the USPS will provide shipping discounts to an address. For the USPS, it is generally cheaper to mail to residential addresses than business ones, and these saving are reflected in their shipping cost.

So will every business address always be marked as a business by the USPS? Well, not exactly. As with any system, there are edge cases and exceptions to the rule. The USPS is no different in this case. Here are some common examples of where it is difficult to accurately identify RDI addresses:

  • In rural communities that don’t have clear cut distinctions between business or residential areas.
  • Apartments and/or suites on top of businesses and retail stores, which are common in a lot of downtown or commercial areas.
  • Assisted living facilities.
  • Residential lofts in industrial parks.

So, while this is an extremely helpful piece of information, it’s important to know what the USPS – and by extension our services – mean when an address is recognized as a business or a residence; which again is related to the shipping costs associated with an address. That being said, the vast majority of the time, the RDI value is also a reliable indicator if an address is a business or a residence.

What can RDI do for me?

RDI can be used for a number of purposes.

  • Some of our customers use it to help better target their marketing and sales efforts, splitting them between residential and business, especially for mailing campaigns.
  • The RDI flag can also help identify when updated address information is needed for their client. For example, if a business deals primarily with B2B transactions and a residential address is provided, it might be worth double-checking to ensure the address is correct.  This same example can also suggest that an incorrect address was entered deliberately, which might be a precursor to fraud.
  • RDI can also be used to separate out addresses that may have cost differences when sending physical mail to them. As mentioned previously, the USPS charges less to deliver to residential addresses, while other carriers like FedEx and UPS charge less to deliver to businesses. With this in mind, RDI can be used to minimize shipping expenses when sending out physical mail.

We work with our customers to continue to find new ways to leverage the RDI flag for deeper customer insights, improved marketing and sales performance and create cost-saving business logic.


How Address Validation-US Standardizes an Address for the USPS

Our DOTS Address Validation US 3 web service works hard to clean up and standardize your addresses to the United States Postal Service (USPS) formatting standards. Why is this important? A poorly formatted address can create support issues, impact customers satisfaction and increase postal costs.

When working with a large majority of mailers, we find that they do not know the exact formatting the USPS desires.  Even more common, these formats are rarely accounted for when collecting and recording addresses to their contact and customer databases.  Standardizing addresses is one of the many functions of our address validation service and below are some common examples of how they are handled.

Address 2 field

Did you know that the Address 2 field is not meant for suite or apartment numbers? With that said, it is very common to see suite or secondary unit information is included in the Address 2 field, as shown in the following example:

Address1: 123 Main St West

Address2: Suite 300 c/o John Smith

City: Los Angeles

State: CA

PostalCode: 90001

What’s wrong with this address? The USPS expects suite information to be part of the main address line, Address1, and not on a separate line. In this case, our address validation web service can identify the misplaced information in the Address 2 field and correct the field to the following:

Address1: 123 Main St West Suite 300

Now the suite information has been moved to its proper location, to ensure your address meets the format the USPS is looking for.

Bottoms up with the USPS

Many people don’t realize that the USPS reads your address from the bottom up, and expects the following format for business addresses:

Name or attention line
Delivery address
City, State, ZIP code

So the bottom line of the address should consist of the city, state and ZIP code, and then the next line up should be a complete, deliverable address that will pass the USPS’s Delivery Point Validation (DPV) process.

Now, let’s compare this with the input fields in Address Validation US, which are as follows:

Business name
Address 1
Address 2
Postal code

These closely mirror the USPS’ business address format, but with one key distinction: our Address 2 field is meant for data that doesn’t tie directly to postal deliverability, such as “c/o John Smith.”

What does this mean for you?

Address Validation US takes user input errors into account when parsing the input address fields. It is aware of the common mistakes users make and will take actions to correct and standardize the address. This takes the burden off of you to account for every potential user input error, letting the address validation service do the heavy lifting, so your addresses can be corrected, standardized and validated to be as genuine, accurate, and up to date as possible.

What about third-party shippers?

Incidentally, third-party shipping companies like UPS, FedEx, and the like, do not have the same formatting requirements as the USPS but they have their own limitations. As an example, most limit Address1 character length to 25-35 characters. If you bump up against these limits there are solutions to prevent critical deliverability information from being dropped. Our Address Validation web service breaks an input address into fragment parts and these fields can be leveraged to fit character limitations. For more information on how this works, check out, Character Limitations in Shipping Address Fields – There is a Solution.

Combining best practices with address validation

An informed approach to data collection can help prevent issues when initially collecting the data. For example, if an Address 2 field is not included in your web form, users have less of a chance of improperly including non-deliverability information. If your field uses more clearly defined fields such as Company, Name, or Attention line, an end-user may be less inclined to put extraneous information in the delivery fields.  You can also include a specific field for Suite or Apt number, so it is clear what is expected of the user.  You can then decide to append this to your address1 field or let our service do it for you.

We see the best results from a combination of well-labeled input fields, along with the corrections and standardization from Address Validation US. This leads to more successful mailing campaigns with fewer undelivered parcels and greater postal discounts.

Unique Zip Codes – What Are They?

If you have ever run into a unique ZIP code while doing address lookups or validation, then there is a good chance that they may have caused some confusing results for you. Take the following address as an example:

123 Not a Real Street
Schenectady NY, 12345

To most users, this address looks like it is fake. But if you send it to an address checker like DOTS Address Validation – US, to be validated and standardized, then you will get a response like the following.

Our service indicates that this is a valid mailing address. So what gives? This might lead one to believe that something went wrong in the address checker or validation engine. But there is a perfectly reasonable explanation for cases like this. If we take a look at the DPV Notes returned by our service, we will see Code 3, which indicates that the ZIP code provided is a unique ZIP code.

What are unique ZIP codes?

In short, unique ZIP codes are high volume mail receivers that receive mail at one location and then distribute the mail internally. Unique ZIP codes generally are used by large organizations, government buildings, universities or large medical facilities. For these cases, the USPS would drop off all the mail at one single location, and then the mail recipients would distribute it to the necessary parties internally. Since all that mail is distributed internally, the USPS and our services by extension will mark every address with a unique ZIP code as valid and deliverable.

How should we handle unique ZIP codes?

Great question! These are cases that would certainly require some type of additional logic to process. If you have a user submitted form, perhaps you could process this by asking the user to double check the postal code entered. This could help ensure that the unique ZIP code was not entered by mistake.

If you are cleaning up a database and find a number of unique ZIP codes in your data, this might be a case where you would want to contact the owner or operating organization of the ZIP code to ensure that the addresses obtained are valid.

Each use case is different. If you want some assistance or suggestions on how to best handle unique ZIP codes for your case, reach out to us at We’re always happy to make recommendations and help customers get the most out of their data.


Understanding unique ZIP codes before you encounter them can be key to preventing any hiccups that may occur when using Address Validation – US and address checking in a production environment. Preparation and knowing different scenarios like this are key.

We strongly recommend reviewing our developer’s guide and all the possible DPV Note codes that the service can return. If you have any questions, don’t hesitate to ask us; we’re always ready to help educate our customers to be their own data experts.

In case you were wondering, the ZIP code 12345 belongs to the world headquarters for General Electric.

NCOA Live Best Practices for Contact Address Validation

NCOA Live Best Practices

If you want to use our National Change-of-Address web service, DOTS NCOA Live, for contact address validation but are hesitant to dive in due to the complex nature of the service; this article is meant to set your worries aside. This blog will serve as a comprehensive guide to getting the most out of your NCOA Live subscription while addressing common questions, pitfalls, and recommended workflows. Additional information can also be found in our NCOA Live developer guide. With NCOA Live, businesses can easily update address information to maintain accurate and up-to-date contact records by accessing the USPS dataset of mail forwarding notifications.

Filling Out the Processing Acknowledgement Form

Before you can begin using NCOA Live, the USPS requires you to complete their simple Processing Acknowledgement Form (PAF) to access change-of-address data. Most of the fields in this form will be straightforward. You can look up your North American Industry Classification System (NAICS) code and business address here. To ensure correct PAF filing, we recommend using the USPS lookup tool to confirm your address and some of the additional details that the PAF requires. Please see the image below for reference.

Ensure accurate and up-to-date contact address validation and maintain your competitive edge with DOTS NCOA Live from Service Objects.

Ensuring that your address has a ZIP+4 and a DPV Confirmation Indicator of “Y” will prevent any issues in the filing process.

Getting Your License Key and Service Endpoints

After successful filing the PAF, we will provide a license key and the service endpoint. These items will enable requests to the NCOA Live web service to check for change-of-addresses. Due to the flexible nature of our services, NCOA Live is accessible from almost any tool or programming language that can make a web service call. Specific coding examples for the service can be found in our developer guide’s sample code section.

We have sample code in most of the popular programming languages, including PHP, JAVA, Ruby, Python, ColdFusion, and C#, just to name a few. We can also provide customized code if needed and our Application Engineering team would be happy to answer any questions you may have about integrations and programming language-specific concerns.

Handling JobID Creation

Arguably the most challenging aspect of the NCOA Live web service is the USPS requirement that submissions for change-of-address lookups include an open JobID. The JobID links to your account and keeps track of the transactions you run. Each new JobID remains valid for one week, expiring at 11:50 pm Sunday evening. Opening a new JobID requires the following:

  1. Building an array of 100-500 addresses (100 minimum to create a job)
  2. Creating a personalized JobID (alpha-numeric string of fewer than 50 characters)
  3. Submitting the addresses, JobID, and license key to the “RunNCOA Live” operation

After submitting the initial 100-500 records for the current week’s JobID, anywhere from 1-500 records can be processed per batch. Every transaction run during that week will operate under this new JobID. At the end of the week, the JobID closes, and we update the internal change-of-address data that powers our service. The following week, another NCOA Live operation can be initiated with a new JobID following the steps listed above.

Checking for Errors and Parsing the Response

The first step to safely parsing the response is to check for any root level errors. Root level errors are largely uncommon and generally related to issues with the service or license key. If root errors appear, please don’t hesitate to contact Service Objects and we will work with you to resolve them. If there are no root level errors, you can start working with the valid response data.

The NCOA Live response returns a result with multiple nested fields. See table below for the response fields and a brief description.

RunNCOA Live Outputs

Parent ObjectChildValuesDescription
NameInVariesThe raw input name.
RawInputAddressAddressVariesThe raw input address line.
Address2VariesThe raw input address2 line.
CityVariesThe raw input city.
StateVariesThe raw input state.
ZipVariesThe raw input Zip code.
CASSInputAddressAddressVariesThe standardized address line.
Address2VariesThe standardized secondary.
CityVariesThe standardized city name.
StateVariesThe standardized state.
ZipVariesThe standardized Zip+4
USPSFootnotesVariesA concatenated string of relevant 2-digit USPS "Footnote" codes that give additional information about the input address.
The name that matched the COA record.
AddressVariesThe primary address line that the resident moved to.
Address2VariesThe secondary address line.
CityVariesThe city name.
StateVariesThe state abbreviation.
ZipVariesThe Zip+4.
CarrierRouteVariesThe Carrier Route code for the COA address.
BarcodeDigitsVariesThe PostNet barcode for the COA address.
COAFoundWhether or not a match was found in the COA data. Does not imply that a valid address could be found.
NCOAReturnCodeVariesThe USPS's NCOALink Return Code providing additional information about the nature of the COA match.
Short English description of the COA information. Longer descriptions found below.
ExtendedNCOAReturnCode(See below)USPS's Extended NCOA Return Code comprising a series of key/value strings.
DiagnosticsDiscountCode1-4A code representing discount level.
DiscountDescription(See below)An English description of the discount level.
StatusCode2-8A code representing the level of quality of the input address post-validation. Higher is better.
StatusDescription(See below)An English description of the level of quality of the input address post-validation.
ServiceFlagsVariesUSPS Service Flags output explains what additional address services were run such as RDI, eLOT, etc.
ErrorTypeVariesEnglish description of the error type. See "Error Codes" below.
TypeCode1,2,3,4Unique error type code. See "Errors" below.
DescVariesEnglish description of the error. See "Errors" below.
DescCodeVariesUnique code for the error. See "Errors" below.
JobIDVariesThe JobId sent to the service.

The response data comes back as a list of results corresponding to the addresses submitted. If specific address errors are detected at this level, they fall under our Domain Specific errors and apply to individual addresses. Reading the error’s description provides insight into why the service was not able to validate or return change-of-address information. Detailed notes about the individual error codes are available in the developer guide and can be seen in the table below.

Error Type 4: Domain Specific

1Job not found for this License Key.The job does not exist. Please try again with a different job id. *
2Job has been closed.The job can no longer be used. Please try again with a new job id. *
3First transaction of a job must contain 100 records or more.Please try again with at least 100 unique and valid addresses. *
4Issue connecting to NCOA engine.Please try again. If the issue persists then please contact technical support. *
5Street not found.Indicates that the street name was not found for the general area (city/state or zip).
6Address not found.Indicates that a reliable address candidate was not found. Portions of the address may be incorrect or it may be too ambiguous to return a reliable candidate.
7Street number or box number out of range.The address is invalid. The street and area appear to be correct but the number is wrong.
8Multiple addresses match.Indicates that multiple candidates were found that are equally likely given the input.
9nsufficient address data. Indicates that a reliable address candidate was not found. Portions of the address may be missing or incorrect.
10DPV Lockout. Contact Service Objects immediately.Returned for a specific type of address case known as a false positive.
11Request cannot contain more than 500 addresses. Please try again with no more than 500 addresses in a single request. *
12License Key is not linked to a valid PAF Id. Please contact Service Objects and complete a USPS NCOA Processing Acknowledgement Form (PAF) to register your license key with the service. *
Performing weekly NCOA data update. Please try again in a few minutes with a new Job Id.
USPS releases new NCOALink data every week and requires that we use the newest data, so we must close all jobs using the older dataset. *
14Expired PAF agreement. Please contact Service Objects. Your USPS NCOA Processing Acknowledgement Form (PAF) has expired. Please contact Service Objects to renew and continue using the service. *
15Unable to create new NCOA Job. Please try again. If the problem persists then please contact Service Objects.There was a problem creating the new job. Please contact Service Objects and notify technical support of the error. *

* This is not a billable error and it will not count as a transaction against the license key.

The flexible framework of NCOA Live’s outputs allows you to integrate the results into your application to best meet your needs. We recommend exploring the various outputs such as the RawInputAddress, CASSInputAddress, and likely the most relevant information, the NCOAMatch. Because it delivers new address information in real-time, the NCOA Live service can be easily integrated into existing workflows and databases.

Maintain Better Mailing Lists with Easy Contact Address Validation

The USPS National Change-of-Address database provides a valuable resource for organizations who depend on up-to-date contact data. NCOA Live leverages the USPS dataset of forwarding notifications with a flexible API interface to provide you with the latest address information for clients and prospects. More details on all the elements of our NCOA Live service are available in our developer guide. And we are always here to help you with any questions or integration challenges you may encounter. Don’t hesitate to reach out to us today!


Integrating your address validation applications should be as painless as possible. A technical consultation can provide insight into the data fields submission and find connections between validated data and the goals and requirements of your business.

DOTS Address Validation 3: Understanding the Tools at Your Disposal

Here at Service Objects, we have a team of engineers standing by to help you get the most out of our data validation services. Our goal is to understand your business needs and use the expert knowledge we have gained from over 15 years in the data validation business, to help meet these needs. We provide in-depth developer guides and offer complimentary technical consultation to help your developers leverage our services in the most efficient and productive manner possible. We also want to make sure that you understand the full power and utility of our services and the best ways to integrate them. Understanding how our services work and what they return makes integration simpler and ensures you are using them optimally.

Before we get started, it is important to know that many of our services have multiple operations. These operations have been created to meet different business needs within the services’ overall purpose. For example, DOTS Address Validation 3 has eight different operations, from full address validation and correction to parsing address elements into fragments. At first, it might seem overwhelming to discern which operation is right for your needs, but once the differences are understood, we can choose the best operation to meet them. For our example, we will use the recommended operation, GetBestMatches, for Address Validation 3 as this satisfies most of our customers’ address validation needs. So, let’s dive in.

More inputs = better address verification

Because humans are not perfect, the data coming into the service can vary wildly in terms of format. Address Validation 3 takes these varying inputs, standardizes them, and then verifies the address. It also cross-references the optional input, BusinessName, with the address data provided to return the most accurate result. Address Validation 3 uses either Postal Code or City and State inputs to complete its analysis. Ultimately, the more inputs you can provide, the more cross-referencing can be performed, and the address can be corrected and validated to the highest accuracy possible.

Below are the input fields from our recommended operation, GetBestMatches. Some sections can be understood by their name alone, and others may require reading the description to get a better understanding of what they offer.


GetBestMatches inputs

Name Type Description
BusinessName String Name of business associated with this address. Used to append Suite data.
Address String Address line of the address to validate.
For example, “123 Main Street”.
Address2 String This line is for address information that does not contribute to DPV coding an address. For example,”C/O John Smith” does not help validate the address, but is still useful in delivery.
City String The city of the address to validate.
For example, “New York.”  The city isn’t required, but if one is not provided, the Zip code is required.
State String The state of the address to validate.  For example, “NY.”  This does not need to be contracted; full state names will work as well.  The state isn’t required, but if one is not provided, the Zip code is required.
PostalCode String The zip code of the address to validate.  A zip code isn’t required, but if one is not provided, the City and State are required.
LicenseKey* String Your license key to use the service.
Sign up for a free trial key at


Usually, your inputs are largely fixed based on the data you are collecting, but the outputs can vary based on the operation being used. Understanding the outputs available and how you want to use them ensures you are leveraging the service to its fullest extent. Below is a table showing the available output fields from our recommended operation, GetBestMatches. As you will see, some sections can be understood by their Name alone, while others may require further description to better understanding what they return. These descriptions are provided in the Description field.


GetBestMatches outputs

Name Type Values Description
Addresses Address[] Varies The corrected address candidates.
IsCASS String “true” or “false” Indicates if the unaltered input address is CASS certified. See “What is CASS?” below for more information.
Error Error Varies Error object indicating why the service could not return a result. See “Errors” below for more information.



Name Type Values Description
Address1 String Varies The corrected address line 1.
Address2 String Varies The corrected address line 2.
City String Varies The corrected city name.
State String Varies The corrected state name.
Zip String Varies The corrected zip code + 4.
IsResidential String “true” or “false” Indicates if the address is for a residence.
DPV* String 1-4 Number that correlates to a DPV (Delivery Point Validation) result. An indicator displaying whether or not the address is recognized as deliverable by the USPS.
DPVDesc* String Varies Explains DPV result.
DPVNotes* String Varies Number that correlates to DPV notes description. Service Objects may add or change Note descriptions, but will never modify existing codes.
DPVNotesDesc* String Varies Details about the DPV result. Service Objects may add or change Note descriptions, but will never modify existing codes.
Corrections* String Varies Number that correlates to a Corrections Description. Service Objects may add or change Correction descriptions, but will never modify existing codes.
CorrectionsDesc* String Varies Description of what was corrected in an address. Service Objects may add or change Correction descriptions, but will never modify existing codes.
BarcodeDigits String Varies The post office delivery barcode digits.
CarrierRoute String 4 chars 4 chars: 1 for the route type, 3 for the route code. Identifies a group of addresses when prepended by 5-digit Zip.
CongressCode String Varies The congress code is the congressional district number.
CountyCode String Varies The county code of the given address.
CountyName String Varies The name of the county in which the given address lies.
FragmentHouse String Varies The parsed house number of the given address.
FragmentPreDir String Varies The parsed pre-directional of the address’s street.  “North” in “North Main St West.”
FragmentStreet String Varies The parsed name of the street in the given address.  “Main” in “North Main St West.”
FragmentSuffix String Varies The parsed suffix of the street in the given address.  “St” in “North Main St West.”
FragmentPostDir String Varies The parsed post-directional of the address’s street.  “West” in “North Main St West.”
FragmentUnit String Varies The parsed unit type (e.g. “Apt” or “Ste”)
Fragment String Varies The parsed “Fragment” box, apartment, or unit number. Same as FragmentPMBNumber.
FragmentPMBPrefix String Varies The parsed type of the apartment, box, unit, etc.  For example, “APT” or “BOX.”
FragmentPMBNumber String Varies The parsed apartment, box, unit, etc. number of the given address.


Effective address validation begins with painless integration

Integrating your applications with Service Objects should be as painless as possible. Our developer guides show the many different services and operations we offer while providing sample code in most of the major programming languages. And if we don’t have what you need, just ask, it is what we are here for.

Some common questions we see about address validation

Due to the broad nature of our products, the consultations we have with our clients vary depending on need. For beginners, we recommend starting with our online guide, Getting Started with Service Objects. This reference manual includes information about each of our individual services and can help guide you through your Address Validation 3 integration.

While our knowledge extends beyond the FAQ section in our developer guides, the technical questions we receive cover many topics, from 3rd party plugins to concurrency and multi-threaded applications, failover configurations, and response parsing/interpretation.

Below are some questions that we have received while helping clients integrate with our Address Validation 3 service. The inquiries arise from common business requirements and may even help answer questions you have about your integration.


Q: How will I know if an address that is validated is deliverable?

A: Delivery Point Validation (DPV) – The DPV codes are extremely useful in determining the deliverability of your address. They are broken down into four different codes:

DPV Code Description
1 Yes, the input record is a valid mailing address
2 No, the input record is not in the DPV database of valid mailing addresses
3 The apartment or rural route box number is not valid, although the house number or rural route is valid
4 The input record is a valid mailing address but is missing the apartment or rural route box number


General workflows revolve around accepting address with DPV Code 1s and discarding DPV Code 2s. The DPV Code 1 will indicate that if you sent mail to the address via the United States Postal Service, it would be delivered. DPV Code 2 means the address was deemed not deliverable, and mail would not successfully arrive at that address. DPV Codes 3 and 4 are both indicators that some piece of information was missing on the input, and you will want to create business logic to determine how these cases are handled. For cases like this, we find that many clients will prompt their end user for a corrected house number of apartment/suite/rural route box number, possibly in real-time. 


Q: How do I ensure my service requests are successfully processed?

A: Implementing Failover Logic – All of our sample code highlights our recommended best practices and procedures. We show how to code for service outages at our primary data centers, and how to failover to our backup servers. With that said, we guarantee a 99.999% uptime, ensuring the web services are available to you at all times. With proper failover logic in place, failing to get back validated data is a non-issue.


Q: I have validated all of my records, but now I want to remove duplicates. Is there an easy way to do this?

A: BarcodeDigits – This little nugget of gold hiding in plain sight. From a programmer’s point of view, the barcode is a perfect primary key for an address. The barcode digit is a unique identifier for a premise. You can use this field instead of doing difficult string comparisons against individual address fragments.


Q: We do direct mailings to the addresses we collect, but the shipping company places a character limit on the address fields. Can we use the Address Validation 3 service to adhere to the shipping company’s limitation?

A: Fragments – When an address is validated it is also broken up into its component parts. The parts can be used to get around shipping label limitations by piecing back together the address how you need it. For example, an address label could be constructed like the following:

Line 1: FragmentHouse + FragmentPreDir + FragmentStreet + FragmentSuffix + FragmentPostDir

Line 2: FragmentUnit + Fragment + FragmentPMBPrefix + FragmentPMBNumber


Q: I am getting an error back from the service and need help to interpret it. Also, where is my validated address?

A: Errors – Errors come back as their own object in code or parent object in XML/JSON. Digging into the error object fields will help you understand what went wrong with your call to the service, or why your inputs were not valid. If you receive an error object back from the Address Validation 3 service, you can immediately assume that you will not be receiving a validated address. Errors are broken into four categories:

  • Authorization – This type of error revolves around an issue with your license key. Sometimes the wrong key is being used for the service, or you may have exhausted your purchased transactions. If this happens, please reach out to our customer care (or call 800.694.6269) team to resolve the issue.
  • User Input – These occur when the input data is incorrect. Often, this error happens because a field is missing or a parameter name is misspelled.
  • Service Objects Fatal – Very rarely, if ever, will you see this type of error. Chances are we have already been made aware of the issue from our 24/7/365 monitoring services. However, please let us know if you encounter one by sending an email to We support our services 24/7/365 and guarantee 99.999% uptime with our financially backed Master Service Level Agreement.
  • Domain Specific – This indicates that the service ran to completion, but the data was not valid. Each of the individual errors within the domain-specific category will help you to understand what part of the address was deemed invalid.

These are just a few tips to help you with your integration of Address Validation 3. If you would like further clarification on any of the fields or have questions about how a service will work to fit your needs, please don’t hesitate to reach out to our support team.


Automated address validation comes with many benefits, but variables in data input businesses receive require a responsive, flexible and customized verification solution.

Difficulties in the Trivial: Diving Deeper into the Intricacies of Address Validation

“Can’t you just add that feature today!?”

“Can you add a simple update for this!?”

“It’s obvious, it really shouldn’t take very long to implement!”

Software developers hear statements like this more than about half a million times over their career.  It raises my eyebrows every time I hear it, typically giving me a little chuckle inside. In all honesty, it is not a surprise that those kinds of inquiries come up and that they come up as often as they do. After all, these queries come from people that do not code so, from their perspective, the questions seem legitimate.

Errors, Intent and Responsive Address Validation

Fundamentally, these are legitimate questions. The misconceptions that trigger this type of confusion often stem from how well humans can quickly find patterns, errors and solutions. So rapidly, in fact, many problems appear to have “fast” or “obvious” solutions.

For example, to us, it may seem obvious that in our Service Objects address the typo “Cta Street” should be “Cota Street” or “Santa Barbra” should be “Santa Barbara.”  These errors are relatively easy to identify, fix and classify right? For humans, the answer is yes. For a computer, on the other hand, the answer is, well…maybe.

At its heart, the issue involves underlying questions about conceptual intent and programming capabilities. For example, when the name of a city is corrected, what does that mean for the data related to the corresponding physical address? Does St. Louis being changed to Saint Louis maintain the fidelity of the locational intent? What about changing Santa Barbara to nearby Goleta? Would these solutions fall within what would be expected behavior?

While both actions result in changes to a piece of information, each solution is based on a different procedure. The first follows a standardized correction of the name of a specific location, which is a type of change to the input. The second, on the other hand, signifies a change in the place itself.

Variations on a Standard: Address Line 2

When it comes to address validation, there are more than enough address variations to examine that constitute a standard address format, and that’s just talking about Address Line 1.  Though Address Line 2 is not a standard address field, it has been a custom to see that field in one of it’s many variations on forms when we fill out our address.

Address Line 2 has often left users confused as to what information should be included in that field. While many argue Address Line 2 is designed for apartment numbers, suites, and similar secondary information, there is no consensus. In fact, the USPS does not recognize Address Line 2 as a standard address field.

Reactive Address Verification

In practice, the field is often used for apartment and suite numbers, but also for other details like ‘care of’ or to give additional information to the mail delivery person.  Almost anything can go into Address Line 2, and increasingly, people expect Address Line 2 data to be handled as part of the entire address validation protocol.

Ultimately, this field adds a significant layer of complexity to an address validation solution. Take for instance the scenario where someone enters “Apt 2 A C O Sally” on Address Line 2. Typically, someone would not enter the data that way, but you may be surprised how often something like this does come up. Visually, we can easily identify the intention of the data. An address validation process, on the other hand, will find identification and categorization of this information difficult. For example, what does “Apt 2 A C O Sally” signify? Is it Apt 2A, Care of Sally? Or is just Apt 2? Furthermore, once we identify the “Care Of” details, does that information need to be preserved on the output?

Standardized Solutions and a Custom Fix

In some situations, Service Objects can create a solution capable of handling the complexities of multiple address data inputs beyond the standard format. In other instances, the best result is a happy medium. Sometimes a specific solution can be tailored to a particular client based on their individual needs. Always, our updates can fine-tune operations and benefit all of our clients.

We use our extensive validation knowledge and industry standards and expectations to help govern which approach we take. Situations like these represent what our teams look at all the time, and we are always finding ways to make improvements. Our services are based on almost 20 years of experience.

When we update logic in the system, we often walk a fine line between what the code should do versus what it already does.  We always want to improve our processes without negatively impacting clients already used to expected behavior. Improvements capable of changing the expected results for current users will often be bundled up in a new version, but usually, we can find ways to update current versions, so clients always have the latest and greatest option without needing to make any changes.

As we know, the devil is in the details. By drilling down to the smallest and most incremental element of an address input, Service Objects provides the highest level of data verification and address validation services. In fact, our focus on details allows us to be experts in the validation services field, so your organization doesn’t have to be.