On This Page
Account Verification with a Zero Amount Authorization
Account verification with zero amount authorization is a standard e-commerce practice
where you send a zero amount transaction to verify a card is valid and whether the card
is lost or stolen. You cannot capture a zero amount authorization.
Most card networks refer to card account validation as zero amount authorization (ZAA).
These card networks have their own names for the service:
- Discover Zero Dollar Authorization
- Visa Account Verification
Processor-Specific Information
- Visa Platform Connect
- AVS and CVN are supported.
- Card types: Mastercard, Visa
- Supported for Internet, MOTO, and card-present transactions. Do not try to perform a zero amount authorization for a recurring payment, installment payment, or payer authorization transaction.
Endpoint
Set the
ccAuthService_run
field to
true
.Send the request to
https://ics2ws.ic3.com/commerce/1.x/transactionProcessor
.Account Name Inquiry
Account name inquiry (ANI) verifies that the cardholder’s name matches the name on
their issuer bank account. ANI verifications run automatically during a zero amount
authorization before payment authorizations or full financial transactions,
including account funding transactions (AFTs) and original credit transactions
(OCTs). You can initiate an ANI during account setup, periodically, or on demand.
Use the match results to decide whether to proceed, retry, or flag for fraud checks.
Pre-transaction ANI verification reduces fraud risk, especially in AFT and OCT
transactions.
ANI is automatically enabled for your account. To disable ANI at the transaction
level, include
businessRules_checkANI
in the authorization request and set the value
to N
.Supported card types are Mastercard and Visa.
The response includes the full name match results in these fields:
- ccAuthReply_evName
- ccAuthReply_nameMatch
For each name field you send in the request, the response includes the match result codes
in these fields:
- ccAuthReply_evFirstName
- ccAuthReply_evFirstNameRaw
- ccAuthReply_evLastName
- ccAuthReply_evLastNameRaw
- ccAuthReply_evMiddleName
- ccAuthReply_evMiddleNameRaw
Controlling ANI Results
By default, an ANI zero amount authorization will not be declined. You can change this
behavior by including the
businessRules_declineANIFlags
request field to specify a
list of ANI result codes from the response that will tell the system to decline the
authorization.Required Fields for Account Verification with Zero Amount Authorization
When relaxed requirements for address data and the expiration date are being used,
not all fields in this list are required. It is your responsibility to determine
whether your account is enabled to use this feature and which fields are required.
For details about relaxed requirements, see Relaxed Requirements for Address Data and Expiration Date in Payment Transactions.
- billTo_city
- billTo_country
- billTo_email
- billTo_firstName
- billTo_lastName
- billTo_postalCode
- billTo_state
- billTo_street1
- card_accountNumber
- card_expirationMonth
- card_expirationYear
- ccAuthService_cardVerificationIndicator
- Set the value totrue.
- ccAuthService_run
- Set the value totrue.
- merchantID
- merchantReferenceCode
- purchaseTotals_currency
- purchaseTotals_grandTotalAmount
Related Information
Country-Specific Required Fields for Account Verification with Zero Amount Authorization
Use these country-specific required fields to process a zero amount authorization.
Argentina
- billTo_merchantTaxID
- Required for Mastercard transactions.
- transactionLocalDateTime
- Required in Argentina when the time zone is not included in your account. Otherwise, this field is optional.
Brazil
- billTo_personalID
- Required for combo card transactions.
- ccAuthService_overridePaymentDetails
- Required for combo card line-of-credit and prepaid-card transactions.
Saudi Arabia
- transactionMode
Taiwan
- Name: card_hashedAccountNumber
Related Information
Optional Fields for Account Name Inquiry
- billTo_middleName
- businessRules_checkANI
- Possible values:
- Y: Include account name inquiry
- N: Skip account name inquiry
- businessRules_declineANIFlags
- Possible values separated by a space:
- Y: Match
- O: Partial match
- N: No match
- U: Unverified
- R: Retry
Related Information
Simple Order Example: Account Verification with a Zero Amount Authorization
Request
billTo_city=Sao Paulo billTo_country=BRbillTo_email=null@cybersource.combillTo_firstname=Julia billTo_lastname=Fernandez billTo_postalCode=01310-000 billTo_state=SP billTo_street1=R. Augusta card_accountNumber=41111111XXXXXXXX card_expirationMonth=12 card_expirationYear=2023 ccAuthService_run=true merchant_id=MID23 merchant_referenceCode=Merchant_REF purchaseTotals_currency=mxn purchaseTotals_grandTotalAmount=0
Response to a Successful Request
additional_processor_response=e1cdcafc-cdbb-4ef7-8788-a1234e844805 request_id=6461515866500167772420 decision=ACCEPT reasonCode=100 merchantReferenceCode=Merchant_REF purchaseTotals_currency=mxn cardCategory=FccAuthService_reconciliationID=ZUDCXJO8KZRFXQJJ ccAuthReply_amount=0 ccAuthReply_avsCode=5 ccAuthReply_authorizationCode=570110 ccAuthReply_processorResponse=1 ccAuthReply_authorizedDateTime=2022-03-01T161947Z ccAuthReply_paymentNetworkTransactionID=111222
Simple Order Example: Account Verification with Account Name Inquiry
Request
This example includes optional fields.
<requestMessage> <merchantID>mid1234567</merchantID> <merchantReferenceCode>mrc987654321</merchantReferenceCode> <billTo> <firstName>John</firstName> <lastName>Doe</lastName> <street1>1295 Charleston Road</street1> <city>Mountain View</city> <state>CA</state> <postalCode>94043</postalCode> <country>US</country> <email></email> </billTo> <purchaseTotals> <currency>USD</currency> <grandTotalAmount>0</grandTotalAmount> </purchaseTotals> <card> <accountNumber>4111XXXXXXXXXXXX</accountNumber> <expirationMonth>12</expirationMonth> <expirationYear>2023</expirationYear> <cardType>001</cardType> </card> <ccAuthService run="true"/> <cardVerificationIndicator>true</cardVerificationIndicator> </requestMessage>
Response to a Successful Request
<c:replyMessage> <c:merchantReferenceCode>mrc987654321</c:merchantReferenceCode> <c:requestID>mid1234567</c:requestID> <c:decision>ACCEPT</c:decision> <c:reasonCode>100</c:reasonCode> <c:purchaseTotals> <c:currency>USD</c:currency> </c:purchaseTotals> <c:ccAuthReply> <c:reasonCode>100</c:reasonCode> <c:amount>0.00</c:amount> <c:authorizationCode>888888</c:authorizationCode> <c:avsCode>X</c:avsCode> <c:avsCodeRaw>I1</c:avsCodeRaw> <c:authorizedDateTime>2025-10-21T17:53:54Z</c:authorizedDateTime> <c:processorResponse>100</c:processorResponse> <c:evName>Y</c:evName> <c:evNameRaw>01<c:evNAmeRaw> <c:reconciliationID>66737280B9CGUCCP</c:reconciliationID> <c:evFirstNameRaw>01</c:evFirstNameRaw> <c:evFirstName>Y</c:evFirstName> <c:evMiddleNameRaw>01</c:evMiddleNameRaw> <c:evMiddle>Y</c:evMiddle> <c:evLastNameRaw>01</c:evLastNameRaw> <c:evLastName>Y</c:evLastName> <c:paymentNetworkTransactionID>123456789619999</c:paymentNetworkTransactionID> </c:ccAuthReply> <c:card> <c:cardType>001</c:cardType> </c:card> </c:replyMessage>