Which Operation Should I Use?

Picking which operation you want to use should be decided carefully…

Depending on your environment and needs, you will need to use different operations for their corresponding strengths. As of this writing, we recommend GetBestMatches as it will yield the highest level of accuracy while making any necessary corrections to your input values without changing the original intent of the address.

GetBestMatches also includes extra information such as DPV codes, residential delivery indicator (RDI), and the possibility of appending suite information.

I Have Address2 elements.  What should I do?  How do I give you Address2 if I’m using an operation that doesn’t have an Address2 input?

You can either switch operations, or you can concatenate your Address2 data onto your Address1 line, separated by a comma…

The operation will interpret everything after the comma as secondary address information. If you need fragment elements, it is highly recommended that you use ValidateAddressWithDPV or ValidateAddressWithFragments. If not, use ValidateAddressWithExtras to save you from having to concatenate the Address2 to the Address1 field. For example, if your address is: 123 Main Street Building C Anytown, CA 99999 You could pass it in as: 123 Main Street, Building C Anytown CA 99999

I have an Address1 and an Address2, but the service returns both values in Address1. I need Address2 to be returned in Address2 and not in Address1.

Moving secondary address data, such as “Apt 4” and “Unit B”, to Address1 is required by USPS…

Address2 should be reserved for extraneous information such as “C/O John Smith” or “Leave package around back”. The standardized format returned by service is what you should use to help ensure that the mail is correctly delivered. However, if you wish to store the primary and secondary address data separately for your own records, then the service does return this information as properly parsed address fragments. For example, to recreate Address1 without the secondary address data, append the following output fields together, separated by spaces: FragmentHouse + FragmentPreDir + FragmentStreet + FragmentSuffix + FragmentPostDir To get the secondary address data by itself: FragmentUnit + Fragment + FragmentPMBPrefix + FragmentPMBNumber

I have an Address3.  What should I do with it?

We currently don’t support any handling of the Address3 field…

Passing it in as part of either the Address1 or Address2 fields is not recommended, as it may inhibit validation. If this information must be included, then your best option is to append all your address lines together separated by spaces, and sent through our ValidateAddressSingleLine operation along with city, state, and zip code appended.

The Sample Code is Giving Strange Errors or is Crashing!

Most likely, the sample code cannot connect to Service Objects…

Many environments will not allow you to connect out on port 80, or will clip out XML data from these requests/responses. The easiest way to check for this is to open a browser on the machine running the sample code. In your browser, navigate to:


AV3 – Service Reference

Then try to run one of the operations with your trial key. If you get a browser error, or get no data back, then the sample code isn’t able to connect either. Contact your systems administrator to resolve why you are not able to connect to Service Objects.

Address Validation says it can’t find my street!

DOTS Address Validation doesn’t know about every address, especially empty lots or new streets…

Often, it won’t be able to validate these locations. In general, we are as good as the USPS at identifying addresses. If they have an address we don’t, we will have it within 30 days after our monthly update is run.

For GetBestMaches, what are the minimum required fields?

Besides the license key the best results will occur when you supply at minimum either (address, city and state) or (address and zip)..

Does Address Validation do delivery point validation?  I need to know if the USPS can deliver to this address.

Yes, we do…

We recommend using our “GetBestMatches” operation, but our “ValidateAddressWithSuiteLink”, “ValidateAddressWithDPV” and “ValidateAddressWithRDI” operations also include DPV information.

What does the IsResidential flag help with?

In some situations residential deliveries can cost more so this flag helps with shipping strategies and costs.

What is CASS?

The Coding Accuracy Support System (https://www.serviceobjects.com/blog/cass-dpv-higher-standard-address-accuracy/) enables the United States Postal Service (USPS) to evaluate the accuracy of software that corrects and matches street addresses.

Is Address Validation CASS-certified?  Can I use it to get postal discounts?

Yes and No, our core address validation engine is CASS certified…

It meets and exceeds all requirements for address correction except bulk mail discounts. AV does not print the UPSP forms required for bulk mail discounts, because of this we are not formally CASS certified. You cannot use AV for bulk-rate postal discounts.

What are the possible errors that AV will return if an address is invalid?

Please refer to/display/devguide/AV3+-+Errors

What can barcode digits help me with?

They allow clients to verify the uniqueness of an address…

Each address in the US is given an unique barcode digit. By comparing these addresses in a system, duplicate address records can be identified.

What does “Multiple Addresses Match” mean?  How do I get a single result?

“Multiple Addresses Match” means that AV found the address, but couldn’t resolve it from other addresses that were very similar, typically because of directional elements…

For example, if you validate “123 Main street, Anytown, CA”, but in Anytown, CA, there is only a “West Main street” and an “East Main street”, then this will result in a “Multiple Addresses Match”. You will need to specify either West Main or East Main as the street name to get a corrected, single address.

There are other cases in which “multiple addresses match” will occur, but are rare and often have to do with a difference in zip+4, or suite numbers.

We do not currently have the GetPossibleMatches operation from Address Validation 2, but we will in the future.

I need to know exactly how long each of the output fields could be.  What is your standard field length?

Please email us atmailto:support@serviceobjects.com, and we’ll send you the exact field length specifications…

As a general rule, you won’t get a field longer than 80 characters.

Does AV validate suite or apartment numbers?

If you use any of our DPV-enabled operations (ValidateAddressWithDPV, ValidateAddressWithRDI, ValidateAddressWithSuiteLink) then yes.

Does AV validate PO Boxes/box numbers?


PO boxes are correctable and are indeed validated. Out of range PO Box numbers will yield the appropriate error.

I need both address correction and geocoding information. How can I get both at once?

We offer alternative services to provide this information…

Please see DOTS Address Insight.

Additionally, if we run batches for you (see question below) we can provide both address correction and geocoding simultaneously.

If you have a need for special information or format, email us at support@serviceobjects.com

Where do you get your address information?

The short answer is the US Postal Service…

We gather our data from many various sources.

How often do you update your address data?

We’ll update our information monthly, but in some special situations, we may update it more frequently.

I am not a programmer.  How do I use DOTS Address Validation US?

Service Objects runs batches for you…

A free batch trial is available at https://www.serviceobjects.com/upload-center.


  1. DOTS Address Validation – US 3: Delivery Point Validation Explained
  2. CASS and DPV: A Higher Standard for Address Accuracy
  3. Address Deduplication Using USPS Barcodes
  4. PO Boxes versus Private Mail Boxes (PMBs)
  5. Unique Zip Codes – What Are They?
  6. Anatomy of a Service: DOTS Address Validation 3
  7. Address Validation’s Alphabet Soup
  8. Character Limitations in Shipping Address Fields – There is a Solution