Address Verification Service

What is Address Verification Service (AVS)?

Address Verification Service (AVS) is a security feature designed to combat fraudulent transactions, especially in situations where the physical card is not present. When a customer makes a purchase using a credit or debit card, AVS compares the billing address they enter during checkout with the billing address that the cardholder's bank has on record for that specific card.

The purpose of AVS is to help confirm that the person making a purchase is the genuine cardholder. When the provided address details match those on file with the cardholder's bank, the likelihood of a legitimate transaction increases.

How AVS Works

  1. Customer Enters Information:
    During a transaction, the customer provides their credit/debit card details along with their billing address.
  2. Merchant Sends Billing Details:
    The merchant includes the billing details provided by customer in it’s payment request to BR-DGE, which is forwarded to the payment processor.
  3. AVS Check:
    Before the payment is processed, the numeric parts of the billing address (typically the street number and postal code) are compared with the details stored against the card on file.
  4. AVS Result:
    Each processor produces their own AVS result, some use a response code with a description, while others provide a PASS/FAIL type response for street and postal code.
  5. Merchant Decision:
    Some payment processors allow you, as the merchant, to choose whether to approve or decline a payment subject to the result of the AVS check.
    Speak to your processor to find out whether they support decision making based on the AVS check result. Cybersource and Barclaycard SmartPay Fuse allow merchants to bypass the AVS results, and continue to authorisation.
    BR-DGE allow you to take advantage of this feature by setting ignoreAvs to true when making a payment.

Why is AVS Important?

  • Fraud Prevention:
    AVS is a crucial tool for you to identify and prevent fraudulent transactions, reducing financial losses from chargebacks.
  • Risk Assessment:
    AVS provides valuable information that helps you to better assess the risk level of a transaction. An AVS check failure could be a red flag.
  • Chargeback Protection:
    AVS can strengthen your defence when managing checkout fraud, and transaction disputes.

Limitations of AVS

While AVS can be a highly effective tool for reducing transactional fraud, it is not a foolproof system and has some limitations.

  • Numeric-Only Checking:
    AVS typically only verifies the numeric portions of an address. Meaning "123 Main Street" will get the same result as "123 Elm Street" if the numbers are correct.
  • False Positives:
    Legitimate transactions could be flagged due to minor discrepancies, such as a recent address changes not yet updated with the cardholders bank, or a typo in the address provided.
  • Geographical Limitations:
    AVS is primarily supported in The United States, Canada, and The United Kingdom; with limited support in other regions.
  • Not a Sole Solution:
    AVS should be used as part of a multi-layered fraud prevention strategy, alongside other tools like CVV verification, IP address analysis, and 3-D Secure.

Integration Options

To check if AVS responses are available through BR-DGE with your payment processor check out our dedicated payment processor overview pages.

📘

BR-DGE does not use the AVS result to determine whether to continue processing a payment. Your payment processor may offer this functionality.

REST API

  1. Send Billing Details to BR-DGE:
    When sending the payment to BR-DGE, include the customer’s billing address in the payment request.
{  
    "amount": 24000,  
    "channel": "ios",  
    "currencyCode": "GBP",  
    "customerOrderCode": "ABC123",  
    "customerSessionId": "123456",  
    "orderDescription": "Taxi fare",  
    "billingAddress": {  
        "firstName": "billingFirst",  
        "lastName": "billingLast",  
        "country": "GB",  
        "address1": "billingAddress1",  
        "address2": "billingAddress2",  
        "address3": "billingAddress3",  
        "town": "billingTown",  
        "postcode": "JJ43 7JJ",  
        "county": "billingCounty",  
        "phoneNumber": "+447891110000"  
    },  
    "paymentInstrument": {  
        "type": "card",  
        "nameOnCard": "John Doe",  
        "pan": "4242 4242 4242 4242",  
        "expiryDate": "03-30",  
        "cv2": "123"  
    }  
}
  1. AVS Check:
    BR-DGE will forward the billing address onto the payment processor who will check the numeric parts of address to check that they match what is stored against the card on file.
  2. AVS Result:
    Typically the payment processor returns the result of the AVS check in their response to a payment request.
    BR-DGE takes this value, as returned by the payment processor, and normalises the response in our own AVS response code. This code is returned in response to a BR-DGE payment request, including a description of what the code means.
"avsResult": {  
    "code": "I",  
    "message": "Both postal code and street address do not match."  
}

Hosted Payment Page

  1. Capture Billing Details:
    When a customer is completing a card payment using the BR-DGE Hosted Payment Page, the billing details are required before a customer can complete their payment. These details are forwarded to the payment processors
  2. AVS Check:
    BR-DGE will forward the billing address onto the payment processor who will check the address details with the scheme.
  3. AVS Result:
    After the customer has completed the card payment and is redirected back to your checkout page, you can query the GET /orders/{orderId}/status endpoint to retrieve the results of the AVS check
"avsResult": {  
    "code": "I",  
    "message": "Both postal code and street address do not match."  
}

AVS Response Codes

BR-DGE normalise all AVS results from the payment processor into the following AVS codes providing you with a single source of truth to use when managing AVS checking through BR-DGE.

AVS Code (avsResult.code)Description (avsResult.message)
APostal code matches, street address matches.
BPostal code matches, street address not checked.
CPostal code matches, street address does not match.
DPostal code not checked, street address matches.
EPostal code does not match, street address matches.
FPostal code not checked, street address not checked.
GPostal code not checked, street address does not match.
HPostal code does not match, street address not checked.
IBoth postal code and street address do not match.
JBoth postal code and street address were not provided.
KAVS is unavailable.
LPostal code was not provided, street address was not checked.
MPostal code was not provided, street address matches.
NPostal code was not provided, street address does not match.
OPostal code was not checked, street address was not provided.
PPostal code matches, street address was not provided.
QPostal code does not match, street address was not provided.

🚧

While the underlying meaning of each code will not change, BR-DGE may tweak the phrasing without any notice. As such do not derive logic from the AVS description. Please use the AVS code values for any conditional logic.

Support

If you require additional support with AVS please contact our support team.