Search Overlay

Typical Scenarios for Card Payments

Cards can be used in various scenarios. This page covers the simple journey of a first-time consumer making payments and withdrawals.

For other scenarios, see:

Payments

To process a payment for a first-time consumer:

Setup

  1. Provide your Public API key.
  2. Provide the following parameters in the options object:
    • currency, amount, merchantRefNum, customer - mandatory parameters.
    • paymentMethodDetails - mandatory, but can be sent as an empty object.
      With multiple accounts, provide accountId for the account you want to use to process the payment.
  3. Invoke a resultCallback function to capture the transaction details.
    To understand the payment handle status before taking the next action, invoke a closeCallback function (optional).
  4. Checkout tokenizes the information provided by the consumer and responds with a paymentHandleToken.
    • The payment is authorized following completion of the Payments API call.
    • The funds are transferred following completion of the settlement process.

Initialization of Checkout

New card payment

   

Saved card payment

  

Edit/ delete cards and addresses

     

Server-to-server calls

  1. Capture the amountpaymentHandleToken and transactionType from the result object in the resultCallback function.
  2. If transactionType is PAYMENT, call the Payments API.
  3. We send transaction and settlement details in the payments response, which you can use for reconciliation.
    • Make a note of the id returned in the payments response because it can be used for void authorization, settlement and refunds.

The Payments API call is actually an authorization call that allows for immediate settlement if the parameter settleWithAuth = True. Otherwise, you must trigger a separate Settlement API call to complete the capture.

Payments code example

<html>
<head>
<script src="https://hosted.test.paysafe.com/checkout/v2/paysafe.checkout.min.js"></script>
</head>

<body>
<button onclick="checkout()">Deposit</button>
</body>

<script>
function checkout() {
var API_key = "c3V0LTM0ODg2MDpCLXFhMi0wLTVkM2VjYjMwLTEtMzAyYzAyMTQyYTM3NjgxMmE2YzJhYzRlNmQxMjI4NTYwNGMwNDAwNGU2NWI1YzI4MDIxNDU1N2EyNGFiNTcxZTJhOWU2MDVlNWQzMjk3MjZjMmIzZWNjNjJkNWY=";
options = {
currency: "USD",
amount: 540,
merchantRefNum: "162938285366512",
customer: {
firstName: "John",
lastName: "Doe",
email: "DoeJohn.0309@gmail.com",
},
environment: "TEST",
paymentMethodDetails: {
card: { accountId: 1001461040
}
},
};

paysafe.checkout.setup(
API_key,
options,
function resultCallback(instance, error, result) {
if (result && result.paymentHandleToken) {
instance.showSuccessScreen( "Your goods are now purchased. Expect them to be delivered in next 5 business days.");
if (instance.isOpen()) {
instance.close();
}
// make AJAX call to Payments API
} else {
console.error(error); // Handle the error
instance.showFailureScreen( "The payment was declined. Please, try again with the same or another payment method.");
}
},
function(stage, expired) {
if (stage) {
switch (stage) {
case "PAYMENT_HANDLE_NOT_CREATED" :
case "PAYMENT_HANDLE_CREATED" :
case "PAYMENT_HANDLE_REDIRECT" :
case "PAYMENT_HANDLE_PAYABLE" :
default:
}
}
else {
console.log(expired) //Add action in case Checkout is expired
}
}
);
}
</script>
</html>

Void authorization

Void authorization is the process of canceling or voiding an authorized payment before it is settled or captured, due to an error or customer request for example.

To void an authorization:

  • Call the Void Authorization API
    POST: /paymenthub/v1/payments/{paymentid}/voidauths
    • Partial void authorizations are also possible.
    • Void authorization does not work if the transaction has already been settled.

Settlement

Settlement is the process of transferring funds between the cardholder's issuing bank and the merchant's acquiring bank.

After a card transaction is authorized and completed, the transaction amount is held in the consumer's account as a pending charge or authorization - the actual transfer of funds from the consumer's account to your merchant account does not happen immediately.

If settleWithAuth = True, you can trigger the request for settlement along with the Payments API call. Otherwise, trigger a separate Settlement API call to complete the capture:

  • POST: /paymenthub/v1/payments/{{paymentid}}/settlements
    • Partial settlement of the amount is also possible.
    • We send the settlement request to the acquirer in the next batch; the settlement remains in a pending state until completion.
    • You cannot trigger settlement for transactions that have been voided.
    • The settlement response contains the following:
      id - use this for reconciliation purposes in the case of discrepancies
      availableToRefund - the maximum refund amount.

Refunds

Only the merchant can initiate a refund.

To process a refund transaction:

  1. Make sure the initial payment has a status of COMPLETED - you can only initiate a refund for a transaction where Settlement/Payment is completed.
  2. Call the Refunds API to create a refund request using the Settlement ID (or the Payment ID if settleWithAuth is TRUE):
    POST: /paymenthub/v1/settlements/{settlementId }/refunds
  3. We return a refund response containing details of the completed payment and a unique identifier for referring to each individual refund (partial or full).
    The status of the refund changes from PENDING to COMPLETED when the refund is processed - you are notified of all status changes via your configured webhooks.
    In case of discrepancies, use the id for reconciliation purposes.

Withdrawals

To process a withdrawal/ Original Credit:

Setup

  1. Provide your Public API key.
  2. Provide the following parameters in the options object:
    • currency, amount, merchantRefNum, customer - mandatory parameters.
    • paymentMethodDetails - mandatory, but can be sent as an empty object.
      With multiple accounts, provide accountId for the account you want to use to process the payment.
  3. Invoke a resultCallback function to capture the transaction details.
    To understand the payment handle status before taking the next action, invoke a closeCallback function (optional).
  4. Checkout tokenizes the information provided by the consumer and responds with a paymentHandleToken.
    • The funds are transferred following completion of the Original Credits API call.

For secure withdrawals, ensure the consumer's email address is locked.

Initialization of Checkout

   

Server-to-server calls

  1. Capture the amountpaymentHandleToken and transactionType from the result object in the resultCallback function.
  2. If transactionType is ORIGINAL_CREDIT, call the Original Credit API.
  3. We send transaction and settlement details in the payments response, which you can use for reconciliation.

Withdrawal code example

<html>
<head>
<script src="https://hosted.test.paysafe.com/checkout/v2/paysafe.checkout.min.js"></script>
</head>

<body>
<button onclick="checkout()"> Withdrawal </button>
</body>

<script>
function checkout() {
var API_key = "c3V0LTM0ODg2MDpCLXFhMi0wLTVkM2VjYjMwLTEtMzAyYzAyMTQyYTM3NjgxMmE2YzJhYzRlNmQxMjI4NTYwNGMwNDAwNGU2NWI1YzI4MDIxNDU1N2EyNGFiNTcxZTJhOWU2MDVlNWQzMjk3MjZjMmIzZWNjNjJkNWY=";
options = {
currency: "USD",
amount: 540,
merchantRefNum: "162938285366512",
payout:true,

customer: {
firstName: "John",
lastName: "Doe",
email: "DoeJohn.0309@gmail.com",
},
environment: "TEST",
paymentMethodDetails: {
card: { accountId: 1001461040
}
}
};

paysafe.checkout.setup(
API_key,
options,
function resultCallback(instance, error, result) {
if (result && result.paymentHandleToken) {
instance.showSuccessScreen( "Your goods are now purchased. Expect them to be delivered in next 5 business days.");
if (instance.isOpen()) {
instance.close();
}
//Check paymentHandleToken Stage to initiate next step
} else {
console.error(error); // Handle the error
instance.showFailureScreen( "The payment was declined. Please, try again with the same or another payment method.");
}
},
function(stage, expired) {
if (stage) {
switch (stage) {
case "PAYMENT_HANDLE_NOT_CREATED" :
case "PAYMENT_HANDLE_CREATED" :
case "PAYMENT_HANDLE_REDIRECT" :
case "PAYMENT_HANDLE_PAYABLE" :
default:
}
}
else {
console.log(expired) //Add action in case Checkout is expired
}
}

);
}
</script>
</html>

Verification

This is a standalone API service that you can use to validate card details, such as address, CVV, etc.

See the Verification API.

API Code examples

{
"merchantRefNum": "b258f16a125e9f699aed",
"amount": 540,
"currencyCode": "USD",
"dupCheck": true,
"settleWithAuth": false,
"paymentHandleToken": "SCF6lgolLdYlj8hB",
"customerIp": "172.0.0.1",
"description": "Magazine subscription"
}
{
"merchantRefNum": "b258f16a125e9f699aed",
"amount": 540,
"currencyCode": "USD",
"dupCheck": true,
"settleWithAuth": false,
"paymentHandleToken": "SCF6lgolLdYlj8hB",
"customerIp": "172.0.0.1",
"description": "Magazine subscription"
}
{
"merchantRefNum": "b258f16a125e9f699aed",
"amount": 540,
"currencyCode": "USD",
"dupCheck": true,
"settleWithAuth": false,
"paymentHandleToken": "SCF6lgolLdYlj8hB",
"customerIp": "172.0.0.1",
"description": "Magazine subscription"
}
{
"merchantRefNum": "b258f16a125e9f699aed",
"amount": 540,
"currencyCode": "USD",
"dupCheck": true,
"settleWithAuth": false,
"paymentHandleToken": "SCF6lgolLdYlj8hB",
"customerIp": "172.0.0.1",
"description": "Magazine subscription"
}

{
"id": "dbc52204-aa49-4f0c-8c85-d7c860e16fb0",
"paymentType": "CARD",
"paymentHandleToken": "SCF6lgolLdYlj8hB",
"merchantRefNum": "50ded0ce31d47c51c6d9",
"currencyCode": "USD",
"settleWithAuth": false,
"txnTime": "2023-07-31T18:32:44Z",
"billingDetails": {
"nickName": "Home",
"street": "TEST",
"city": "CA",
"zip": "12345",
"state": "CA",
"country": "US"
},
"customerIp": "172.0.0.1",
"status": "COMPLETED",
"amount": 500,
"description": "Magazine subscription",
"availableToSettle": 500,
"gatewayResponse": {
"code": "VPS",
"responseCode": "00",
"avsCode": "X",
"authCode": "859176",
"avsResponse": "NOT_PROCESSED",
"cvvVerification": "MATCH",
"serializable": true
},
"merchantDescriptor": {
"dynamicDescriptor": "OnlineStore",
"phone": "1234567899"
},
"card": {
"cardExpiry": {
"month": "10",
"year": "2025"
},
"holderName": "Dilip",
"cardType": "VI",
"cardBin": "453091",
"lastDigits": "2345",
"cardCategory": "CREDIT"
}
}
{
"id": "dbc52204-aa49-4f0c-8c85-d7c860e16fb0",
"paymentType": "CARD",
"paymentHandleToken": "SCF6lgolLdYlj8hB",
"merchantRefNum": "50ded0ce31d47c51c6d9",
"currencyCode": "USD",
"settleWithAuth": false,
"txnTime": "2023-07-31T18:32:44Z",
"billingDetails": {
"nickName": "Home",
"street": "TEST",
"city": "CA",
"zip": "12345",
"state": "CA",
"country": "US"
},
"customerIp": "172.0.0.1",
"status": "COMPLETED",
"amount": 500,
"description": "Magazine subscription",
"availableToSettle": 500,
"gatewayResponse": {
"code": "VPS",
"responseCode": "00",
"avsCode": "X",
"authCode": "859176",
"avsResponse": "NOT_PROCESSED",
"cvvVerification": "MATCH",
"serializable": true
},
"merchantDescriptor": {
"dynamicDescriptor": "OnlineStore",
"phone": "1234567899"
},
"card": {
"cardExpiry": {
"month": "10",
"year": "2025"
},
"holderName": "Dilip",
"cardType": "VI",
"cardBin": "453091",
"lastDigits": "2345",
"cardCategory": "CREDIT"
}
}
{
"id": "dbc52204-aa49-4f0c-8c85-d7c860e16fb0",
"paymentType": "CARD",
"paymentHandleToken": "SCF6lgolLdYlj8hB",
"merchantRefNum": "50ded0ce31d47c51c6d9",
"currencyCode": "USD",
"settleWithAuth": false,
"txnTime": "2023-07-31T18:32:44Z",
"billingDetails": {
"nickName": "Home",
"street": "TEST",
"city": "CA",
"zip": "12345",
"state": "CA",
"country": "US"
},
"customerIp": "172.0.0.1",
"status": "COMPLETED",
"amount": 500,
"description": "Magazine subscription",
"availableToSettle": 500,
"gatewayResponse": {
"code": "VPS",
"responseCode": "00",
"avsCode": "X",
"authCode": "859176",
"avsResponse": "NOT_PROCESSED",
"cvvVerification": "MATCH",
"serializable": true
},
"merchantDescriptor": {
"dynamicDescriptor": "OnlineStore",
"phone": "1234567899"
},
"card": {
"cardExpiry": {
"month": "10",
"year": "2025"
},
"holderName": "Dilip",
"cardType": "VI",
"cardBin": "453091",
"lastDigits": "2345",
"cardCategory": "CREDIT"
}
}
{
"id": "dbc52204-aa49-4f0c-8c85-d7c860e16fb0",
"paymentType": "CARD",
"paymentHandleToken": "SCF6lgolLdYlj8hB",
"merchantRefNum": "50ded0ce31d47c51c6d9",
"currencyCode": "USD",
"settleWithAuth": false,
"txnTime": "2023-07-31T18:32:44Z",
"billingDetails": {
"nickName": "Home",
"street": "TEST",
"city": "CA",
"zip": "12345",
"state": "CA",
"country": "US"
},
"customerIp": "172.0.0.1",
"status": "COMPLETED",
"amount": 500,
"description": "Magazine subscription",
"availableToSettle": 500,
"gatewayResponse": {
"code": "VPS",
"responseCode": "00",
"avsCode": "X",
"authCode": "859176",
"avsResponse": "NOT_PROCESSED",
"cvvVerification": "MATCH",
"serializable": true
},
"merchantDescriptor": {
"dynamicDescriptor": "OnlineStore",
"phone": "1234567899"
},
"card": {
"cardExpiry": {
"month": "10",
"year": "2025"
},
"holderName": "Dilip",
"cardType": "VI",
"cardBin": "453091",
"lastDigits": "2345",
"cardCategory": "CREDIT"
}
}

{
"amount": 500,
"merchantRefNum": "becb95a1b57a11c8498c"
}
{
"amount": 500,
"merchantRefNum": "becb95a1b57a11c8498c"
}
{
"amount": 500,
"merchantRefNum": "becb95a1b57a11c8498c"
}
{
"amount": 500,
"merchantRefNum": "becb95a1b57a11c8498c"
}

{
"id": "bcc346b7-4a67-4f9d-aa11-30363d9237be",
"merchantRefNum": "becb95a1b57a11c8498c",
"txnTime": "2023-08-01T10:27:38Z",
"status": "COMPLETED",
"amount": 500
}
{
"id": "bcc346b7-4a67-4f9d-aa11-30363d9237be",
"merchantRefNum": "becb95a1b57a11c8498c",
"txnTime": "2023-08-01T10:27:38Z",
"status": "COMPLETED",
"amount": 500
}
{
"id": "bcc346b7-4a67-4f9d-aa11-30363d9237be",
"merchantRefNum": "becb95a1b57a11c8498c",
"txnTime": "2023-08-01T10:27:38Z",
"status": "COMPLETED",
"amount": 500
}
{
"id": "bcc346b7-4a67-4f9d-aa11-30363d9237be",
"merchantRefNum": "becb95a1b57a11c8498c",
"txnTime": "2023-08-01T10:27:38Z",
"status": "COMPLETED",
"amount": 500
}

{
"merchantRefNum": "50ded0ce31d47c51c6d9",
"dupCheck": true,
"amount": "400"
}
{
"merchantRefNum": "50ded0ce31d47c51c6d9",
"dupCheck": true,
"amount": "400"
}
{
"merchantRefNum": "50ded0ce31d47c51c6d9",
"dupCheck": true,
"amount": "400"
}
{
"merchantRefNum": "50ded0ce31d47c51c6d9",
"dupCheck": true,
"amount": "400"
}

{
"id": "eb5e9b7e-ea0b-4f2e-92ad-4dea0192de67",
"merchantRefNum": "50ded0ce31d47c51c6d9",
"txnTime": "2023-07-31T18:32:56Z",
"status": "PENDING",
"amount": 400,
"availableToRefund": 400
}
{
"id": "eb5e9b7e-ea0b-4f2e-92ad-4dea0192de67",
"merchantRefNum": "50ded0ce31d47c51c6d9",
"txnTime": "2023-07-31T18:32:56Z",
"status": "PENDING",
"amount": 400,
"availableToRefund": 400
}
{
"id": "eb5e9b7e-ea0b-4f2e-92ad-4dea0192de67",
"merchantRefNum": "50ded0ce31d47c51c6d9",
"txnTime": "2023-07-31T18:32:56Z",
"status": "PENDING",
"amount": 400,
"availableToRefund": 400
}
{
"id": "eb5e9b7e-ea0b-4f2e-92ad-4dea0192de67",
"merchantRefNum": "50ded0ce31d47c51c6d9",
"txnTime": "2023-07-31T18:32:56Z",
"status": "PENDING",
"amount": 400,
"availableToRefund": 400
}

{
"merchantRefNum": "b258f16a125e9f699aed",
"amount": 300,
"dupCheck": true
}
{
"merchantRefNum": "b258f16a125e9f699aed",
"amount": 300,
"dupCheck": true
}
{
"merchantRefNum": "b258f16a125e9f699aed",
"amount": 300,
"dupCheck": true
}
{
"merchantRefNum": "b258f16a125e9f699aed",
"amount": 300,
"dupCheck": true
}

{
"id": "23336c5b-52fc-453e-818d-2cf2d1604f34",
"merchantRefNum": "b258f16a125e9f699aed",
"txnTime": "2023-08-01T09:51:22Z",
"status": "PENDING",
"amount": 300
}
{
"id": "23336c5b-52fc-453e-818d-2cf2d1604f34",
"merchantRefNum": "b258f16a125e9f699aed",
"txnTime": "2023-08-01T09:51:22Z",
"status": "PENDING",
"amount": 300
}
{
"id": "23336c5b-52fc-453e-818d-2cf2d1604f34",
"merchantRefNum": "b258f16a125e9f699aed",
"txnTime": "2023-08-01T09:51:22Z",
"status": "PENDING",
"amount": 300
}
{
"id": "23336c5b-52fc-453e-818d-2cf2d1604f34",
"merchantRefNum": "b258f16a125e9f699aed",
"txnTime": "2023-08-01T09:51:22Z",
"status": "PENDING",
"amount": 300
}

{
"amount": 500,
"merchantRefNum": "a43b5cf5-b54f-40c7-98b2-00b285559bb9",
"currencyCode": "USD",
"paymentHandleToken":"SCz6MQkKafSoDq9y",
"customerIp": "204.91.0.12",
"description": "Winning payment from Loto 649"
}
{
"amount": 500,
"merchantRefNum": "a43b5cf5-b54f-40c7-98b2-00b285559bb9",
"currencyCode": "USD",
"paymentHandleToken":"SCz6MQkKafSoDq9y",
"customerIp": "204.91.0.12",
"description": "Winning payment from Loto 649"
}
{
"amount": 500,
"merchantRefNum": "a43b5cf5-b54f-40c7-98b2-00b285559bb9",
"currencyCode": "USD",
"paymentHandleToken":"SCz6MQkKafSoDq9y",
"customerIp": "204.91.0.12",
"description": "Winning payment from Loto 649"
}
{
"amount": 500,
"merchantRefNum": "a43b5cf5-b54f-40c7-98b2-00b285559bb9",
"currencyCode": "USD",
"paymentHandleToken":"SCz6MQkKafSoDq9y",
"customerIp": "204.91.0.12",
"description": "Winning payment from Loto 649"
}

{
"id": "9fe57153-ef51-48aa-9564-d8c3641dda6b",
"paymentType": "CARD",
"paymentHandleToken": "SCXy40DiykK67DsU",
"merchantRefNum": "becb95a1b57a11c8498c",
"currencyCode": "USD",
"txnTime": "2023-08-01T10:18:51Z",
"billingDetails": {
"street": "TEST",
"city": "CA",
"zip": "12345",
"state": "CA",
"country": "US"
},
"customerIp": "204.91.0.12",
"status": "PENDING",
"amount": 900,
"description": "Winning payment from Loto 649",
"card": {
"cardExpiry": {
"month": "10",
"year": "2025"
},
"holderName": "Dilip",
"cardType": "VI",
"cardBin": "453091",
"lastDigits": "2345",
"cardCategory": "CREDIT"
}
}
{
"id": "9fe57153-ef51-48aa-9564-d8c3641dda6b",
"paymentType": "CARD",
"paymentHandleToken": "SCXy40DiykK67DsU",
"merchantRefNum": "becb95a1b57a11c8498c",
"currencyCode": "USD",
"txnTime": "2023-08-01T10:18:51Z",
"billingDetails": {
"street": "TEST",
"city": "CA",
"zip": "12345",
"state": "CA",
"country": "US"
},
"customerIp": "204.91.0.12",
"status": "PENDING",
"amount": 900,
"description": "Winning payment from Loto 649",
"card": {
"cardExpiry": {
"month": "10",
"year": "2025"
},
"holderName": "Dilip",
"cardType": "VI",
"cardBin": "453091",
"lastDigits": "2345",
"cardCategory": "CREDIT"
}
}
{
"id": "9fe57153-ef51-48aa-9564-d8c3641dda6b",
"paymentType": "CARD",
"paymentHandleToken": "SCXy40DiykK67DsU",
"merchantRefNum": "becb95a1b57a11c8498c",
"currencyCode": "USD",
"txnTime": "2023-08-01T10:18:51Z",
"billingDetails": {
"street": "TEST",
"city": "CA",
"zip": "12345",
"state": "CA",
"country": "US"
},
"customerIp": "204.91.0.12",
"status": "PENDING",
"amount": 900,
"description": "Winning payment from Loto 649",
"card": {
"cardExpiry": {
"month": "10",
"year": "2025"
},
"holderName": "Dilip",
"cardType": "VI",
"cardBin": "453091",
"lastDigits": "2345",
"cardCategory": "CREDIT"
}
}
{
"id": "9fe57153-ef51-48aa-9564-d8c3641dda6b",
"paymentType": "CARD",
"paymentHandleToken": "SCXy40DiykK67DsU",
"merchantRefNum": "becb95a1b57a11c8498c",
"currencyCode": "USD",
"txnTime": "2023-08-01T10:18:51Z",
"billingDetails": {
"street": "TEST",
"city": "CA",
"zip": "12345",
"state": "CA",
"country": "US"
},
"customerIp": "204.91.0.12",
"status": "PENDING",
"amount": 900,
"description": "Winning payment from Loto 649",
"card": {
"cardExpiry": {
"month": "10",
"year": "2025"
},
"holderName": "Dilip",
"cardType": "VI",
"cardBin": "453091",
"lastDigits": "2345",
"cardCategory": "CREDIT"
}
}

Webhooks

For more information about webhooks, see Configure Webhooks.

Test cards

You can use the following test card numbers to test card payments in Paysafe Checkout. Use any 3 (or 4 for Amex cards) digit number for the CVV in the merchant test environment.

Card Type Card Number 3D Secure Enabled Issuing Country
Visa 4530910000012345 X CA
4510150000000321 X CA
4500030000000004 YES CA
4003440000000007 YES CA
4515031000000005 YES CA
4538261230000003 YES CA
4037112233000001 X US
4037111111000000 YES US
4107857757053670 YES UK
Visa Debit 4724090000000008 X CA
4835641100110000 YES CA
4900880000000008 YES US
4900770000000001 X US
4206720389883775 YES UK
Visa (Electron) 4917480000000008 X UK
4917484589897107 X UK
Visa Prepaid 4262370314214521 X US
Mastercard 5191330000004415 X CA
5457490000008763 X CA
5411420000000002 YES CA
5258110000000005 YES CA
5192810000000009 YES CA
5100400000000000 X US
5200400000000009 YES US
5186750368967720 YES UK
Mastercard Debit (Maestro) 6277411477100000 YES CA
6277411477200002 X CA
5036150000001115 X US
5036160000001114 YES US
5573560100022200 YES UK
6759950000000162 X UK
Mastercard Prepaid 5116545114321338 X US
American Express 373511000000005 X CA
373522010100107 YES CA
370123456789017 X US
370123456789116 YES US
375529360131002 X Ireland
Discover 6011234567890123 X US
JCB 3569990000000009 X Japan
Interac 5076010000000007 X CA
5076020000000006 X CA
5076020000000000001 X CA

Simulating CVV responses

To simulate a specific card security code response, use a CVV value from the table below with your transaction.

CVV Value CVV Response Code Description
111 MATCH Match

222

NOT_PROCESSED Not processed
555

UKNOWN

Unknown response
666

NO_MATCH

No match

Simulating AVS responses

By default, all transactions have an AVS response of "MATCH" (address information matches). To simulate a different response, add a single prefix code from the table below in front of the value you include for the street parameter.

Prefix AVS Code Description
10 MATCH Both the address and zip code match
11, 16 MATCH_ADDRESS_ONLY Address matches, but zip code does not
12, 17 MATCH_ZIP_ONLY Zip code matches, but address does not
13 NO_MATCH No part of the address matches
18 NOT_PROCESSED Address information is unavailable
15 UNKNOWN Unknown response from issuer/bank

Error codes

For detailed error codes specific to cards, see Card Errors.