Page tree
Skip to end of metadata
Go to start of metadata



Validates an order and returns an easy to use score that indicates if the order should be accepted, rejected or reviewed. The score is determined from a series of checks and cross checks that evaluate the validity and integrity of the order values. Additional codes and descriptive flags about the order are also returned to provide warnings and notes. Additionally, validated order addresses are corrected and standardized to meet USPS deliverability requirements to help ensure that your shipments and billing statements are delivered.


URL Endpoints


JSON: http://trial.serviceobjects.com/OV/api.svc/OrderInfo/{BIN}/{NUMBEROFITEMS}/{TRANSACTIONTOTAL}/{MCC}/{EMAIL}/{IPADDRESS}/{TIMEOFDAY}/{BILLINGCOMPANYNAME}/{BILLINGFIRSTNAME}/{BILLINGLASTNAME}/{BILLINGADDRESS}/{BILLINGADDRESS2}/{BILLINGCITY}/{BILLINGSTATE}/{BILLINGPOSTALCODE}/{BILLINGCOUNTRY}/{BILLINGPHONE}/{BILLINGADDRESSISRESIDENTIAL}/{SHIPPINGCOMPANYNAME}/{SHIPPINGFIRSTNAME}/{SHIPPINGLASTNAME}/{SHIPPINGADDRESS}/{SHIPPINGADDRESS2}/{SHIPPINGCITY}/{SHIPPINGSTATE}/{SHIPPINGPOSTALCODE}/{SHIPPINGCOUNTRY}/{SHIPPINGPHONE}/{SHIPPINGADDRESSISRESIDENTIAL}/{TESTTYPE}/{LICENSEKEY}?format=json


XML:

https://trial.serviceobjects.com/OV/api.svc/OrderValidate?BIN={BIN}&NumberOfItems={NUMBEROFITEMS}&TransactionTotal={TRANSACTIONTOTAL}&MCC={MCC}&Email={EMAIL}&IPAddress={IPADDRESS}&TimeOfDay={TIMEOFDAY}&BillingCompanyName={BILLINGCOMPANYNAME}&BillingFirstName={BILLINGFIRSTNAME}&BillingLastName={BILLINGLASTNAME}&BillingAddress={BILLINGADDRESS}&BillingAddress2={BILLINGADDRESS2}&BillingCity={BILLINGCITY}&BillingState={BILLINGSTATE}&BillingPostalCode={BILLINGPOSTALCODE}&BillingCountry={BILLINGCOUNTRY}&BillingPhone={BILLINGPHONE}&BillingAddressIsResidential={BILLINGADDRESSISRESIDENTIAL}&ShippingCompanyName={SHIPPINGCOMPANYNAME}&ShippingFirstName={SHIPPINGFIRSTNAME}&ShippingLastName={SHIPPINGLASTNAME}&ShippingAddress={SHIPPINGADDRESS}&ShippingAddress2={SHIPPINGADDRESS2}&ShippingCity={SHIPPINGCITY}&ShippingState={SHIPPINGSTATE}&ShippingPostalCode={SHIPPINGPOSTALCODE}&ShippingCountry={SHIPPINGCOUNTRY}&ShippingPhone={SHIPPINGPHONE}&ShippingAddressIsResidential={SHIPPINGADDRESSISRESIDENTIAL}&TestType={TESTTYPE}&LicenseKey={LICENSEKEY}}


OrderValidate Inputs



Name

Type

Required

Description

Bin

String


6-Digit Card Bank Identification Number. Please do not enter a full credit card number. If more than 6 digits are entered then the service will return a User Input error.

NumberOfItemsString
An integer value that represents the number of items attached to this order.
TransactionTotalString
The total dollar amount for the current order. Values can be represented in either $XXX,XXX.XX currency format or XXXXXX.XX decimal format.
MCCString

Merchant Category Code, a 4-digit number used by the bankcard industry to classify suppliers into market segments. Please supply your MCC if you know it.

EmailString
Email address.
IPAddressString
IP address. Please note that IPv6 is not currently supported.
TimeOfDayString
The local time of day in 24-hour notation using the HHMM format.
BillingCompanyNameString
Billing company name.
BillingFirstNameStringYesBilling first name.
BillingLastNameStringYesBilling last name.
BillingAddressStringYesBilling address.
BillingAddress2String
Billing address line two. This is rarely used and does not contribute to the USPS Delivery Point Verification coding of an address. If you have an apartment or suite number then it should be included at the end of the billing address and separated by a comma.
BillingCityStringYes*Billing city - *Required if the billing postal code is not provided.
BillingStateStringYes*Billing State - *Required if the billing postal code is not provided.
BillingPostalCodeStringYes*Billing Postal code - *Required if the billing city & state are not provided.
BillingCountryString
Billing Country.
BillingPhoneString
Billing phone number. Must be a 10 digit phone number, no extensions. Currently, accepts any number combination in the North American Numbering Plan (NANP).
BillingAddressIsResidentialString
Enter TRUE or FALSE to indicate if the billing address is for a residence.
ShippingCompanyNameString
Shipping company name.
ShippingFirstNameStringYes**Shipping first name. **Required for some Test Types
ShippingLastNameStringYes**Shipping last name. **Required for some Test Types
ShippingAddressStringYes**Shipping address. **Required for some Test Types
ShippingAddress2String
Shipping address line two. This is rarely used and does not contribute to the USPS Delivery Point Verification coding of an address. If you have an apartment or suite number then it should be included at the end of ShippingAddress and separated by a comma.
ShippingCityStringYes**Shipping city. ** Required for some Test Types and when a shipping postal code is not provided.
ShippingStateStringYes**Shipping state. ** Required for some Test Types and when a shipping postal code is not provided.
ShippingPostalCodeStringYes**Shipping postal code. ** Required for some Test Types and when a shipping city & state are not given.
ShippingCountryString
Shipping country.
ShippingPhoneString
10 digit phone number, no extensions. Currently, accepts any number combination in the North American Numbering Plan (NANP).
ShippingAddressIsResidentialString
Enter TRUE or FALSE to indicate if the shipping address is a residence.
TestTypeStringYes

The name of the type of validation you want to perform on this. Please refer to the Test Types section in this guide for more information.

LicenseKey

String

Yes

Your license key to use the service.
Sign up for a free trial key at
https://www.serviceobjects.com/products/ecommerce/order-verification


*  Required value.

** Required value for test types BusinessToConsumer & BusinessToBusiness.


Test Types

The test type dictates how an order will be validated. Different Test Types will have different required values and will determine what type of checks, cross checks and scoring mechanism will be used to validate an order.


Important Note!
Every call to Order Validation requires a Test Type and it is important to choose a test Test Type that fits your business needs and the data being validated.


A Test Type is like a set of instructions for how a given order should be processed. It tells the service which components (Address, Phone, Name, Email, IP Address or BIN) should be present, which tests should be run and how to score these tests. As such, if a test type is used that does not fit the given data, very unpredictable results may occur!



TestTypeDescription
BusinessToConsumerUse this test type to validate an order that requires shipping and for orders submitted by a general consumer. It instructs the service to run all component section tests and to check for consumer level information.
BusinessToBusinessUse this test type to validate an order that requires shipping and for orders submitted by a business. It instructs the service to run all component section tests and to check for business level information.
BusinessToConsumerNoShippingUse this test type to validate an order that does not require shipping and was submitted by a general consumer. It instructs the service to run component section tests that do not require shipping and to check for consumer level information.
BusinessToBusinessNoShippingUse this test type to validate an order that does not require shipping and was submitted by a business. It instructs the service to run component section tests that do not require shipping and to check for business level information.


OrderValidate Outputs


Name

Type

Values

Description

OverallScoreString0 – 1000-59 = BAD, 60-74 = REVIEW, 75-100 = GOOD
ComponentScoresStringVariesA list of scores for each test component. How much a component score affects the overall score is dependent on the given test type. The scores can be used to determine the quality of an individual component at a glance.

NoteCodes

String

Varies

Indicates if the order should be accepted, rejected or reviewed along with other notes.

NoteCodeDescriptionsStringVariesEnumerated list. Human readable note code descriptor flag.
WarningCodesStringVariesEnumerated list. Indicates if one or more problems were found with the order.

WarningCodeDescriptions

String

Varies

Enumerated list. Human readable warning code descriptor flag.

BillingAddress

String

Varies

The corrected billing address if the address is valid. Otherwise, an echo of the input is returned.

BillingAddress2

String

Varies

An echo of the billing address line two input value. If the input value was really meant to be a part of the billing address then the output will return empty.

BillingCity

String

Varies

The corrected billing city if the address is valid. Otherwise, an echo of the input is returned.

BillingState

String

Varies

The corrected billing state if the address is valid. Otherwise, an echo of the input is returned.

BillingPostalCode

String

Varies

The corrected billing postal code if the address is valid. Otherwise, an echo of the input is returned.

BillingCountry

String

Varies

The corrected billing country if the address is valid. Otherwise, an echo of the input is returned.

ShippingAddress

String

Varies

The corrected shipping address if the address is valid. Otherwise, an echo of the input is returned.

ShippingAddress2

String

Varies

An echo of the shipping address line two input value. If the input value was really meant to be a part of the billing address then the output will return empty.

ShippingCityStringVariesThe corrected shipping city if the address is valid. Otherwise, an echo of the input is returned.
ShippingStateStringVariesThe corrected shipping state if the address is valid. Otherwise, an echo of the input is returned.
ShippingPostalCodeStringVariesThe corrected shipping postal code if the address is valid. Otherwise, an echo of the input is returned.
ShippingCountryStringVariesThe corrected shipping country if the address is valid. Otherwise, an echo of the input is returned.
ErrorErrorVariesSee Error page.


References


  • No labels