Address Verification
POST |
paymentcardauthorizations/AAVS Base path: Pre-production https://api.apim-a.adc.pp.travelport.io:443/11/payment/ Production https://api.apim-a.adc.prod.travelport.io:443/11/payment/ |
Related Content: Pay APIs Guide
The address verification request can help prevent fraudulent activity by verifying that a customer’s payment card address and/or postal code matches the address recorded in the card issuer's system. Address verification is offered by select local authorization vendors, including Visa, American Express, MasterCard, and Discover.
Request
Also see Authorization and Common Pay API Headers.
Query Parameters
None.
Request Body

The following cardholder data is optional in the authorization request. If Address is sent, an address verification is performed and a subsequent Address Verification request is not needed.
Object |
Description / Example |
Required / Optional / Conditional |
Length |
Type (AN: Alphanumeric |
PaymentCardAuthorizationRequest |
Top level object for request. |
Required |
|
|
PaymentCardAuthorizationQueryRequest |
Top level object. |
Required |
|
|
PaymentCardRequest |
Top level object for request. |
Required |
|
|
|
Validating airline carrier code. Example: “A8’ for All Around Airline airlineMerchantCode is not the payment card vendor but rather the transaction's merchant of record; for example, BA for a ticket issued on British Airways.
|
Required |
<= 3 |
AN
|
|
Credit card expiration date in MMYY format. Example: 0824 |
Required |
4 |
N
|
|
Agent ID. |
Required |
<= 10 |
AN |
|
Date and time of transaction in YYYY-MM-DDTHH:MM:SS format. Example: 2027-08-20T04:12:16 |
Required |
|
AN
|
|
Two letter card vendor code. Supported values:
|
Required |
2 |
AN
|
|
Payment card account number. Length is validated based on card type. |
Required |
<= 19 |
AN |
CurrencyAmount |
Top level object. |
Required |
3 |
|
|
Amount of transaction with no decimal. Example: $200.56 in USD should be sent as 20056 |
Required |
>= 1 |
N
|
|
ISO currency code. Example: USD or GBP |
Required |
3 |
A |
|
Number of decimal places in the currency. |
Optional |
1 |
N |
CardHolder |
Top level object. |
Required |
3 |
|
|
Name as displayed on payment card. |
Required |
<= 30 |
AN |
Address
|
Top level object. If sent all fields must be populated. |
Conditional |
5 |
|
|
Address of cardholder. Array of address lines. Each address line has a maximum of 20 characters. Example: 123 Main St |
Conditional |
<= 20 per |
Array of AN |
|
Cardholder city. |
Conditional |
<= 20 |
AN |
StateProv |
Top level object. |
Conditional |
1 |
|
|
State or province code. Example: CO for Colorado |
Conditional |
<= 10 |
AN |
Country |
Top level object. |
Conditional |
1 |
|
|
Country code. Example: GB for Great Britain |
Conditional |
2 |
AN |
|
Postal code. No special characters or blanks. |
Conditional |
<= 10 |
AN |
Response
All Pay API requests return the same response structure, in which completionCode and completionCodeDescription provide the status of the transaction. See Payment Card Authorization for the response body table.
Example Request

{
"PaymentCardAuthorizationRequest": {
"PaymentCardAuthorizationQueryRequest": {
"PaymentCardRequest": {
"airlineMerchantCode": "AA",
"expireDate": "1223",
"agentSignOn": "ZD1C05",
"localDateTime": "2022-06-08T09:45:00",
"paymentCardCode": "VI",
"PrimaryAccountNumber": "4012001037141112",
"CurrencyAmount": {
"value": "000",
"code": "USD"
},
"CardHolder": {
"@type": "CardHolder",
"Person": {
"Address": [
{
"AddressLine": [
"201 Tenth Street"
],
"City": "Denver",
"StateProv": {
"value": "CO"
},
"Country": {
"value": "US"
},
"PostalCode": "30329"
}
]
}
}
}
}
}
}
Example Response

{
"PaymentCardAuthorizationResponse": {
"@type": "PaymentCardAuthorizationResponse",
"transactionId": "f6d6174f-f18d-42b5-9da6-0250eda47a5a:ppnd114",
"PaymentCardAuthorization": {
"@type": "PaymentCardAuthorization",
"completionCode": "000",
"avsResult": "G",
"completionCodeDescription": "No reason to decline a request",
"PrimaryAccountNumber": "4012001037141112"
}
}
}