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:
- Saving cards and addresses to a customer profile.
- Enabling 3D Secure.
- Using Interchecks to make quick payouts.
- Using Apple Pay and Google Pay (cards add-on services).
Payments
To process a payment for a first-time consumer:
Setup
- Provide your Public API key.
- 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.
- 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). - 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.
Server-to-server calls
- Capture the amount, paymentHandleToken and transactionType from the result object in the resultCallback function.
- If transactionType is PAYMENT, call the Payments API.
- 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:
- Make sure the initial payment has a status of COMPLETED - you can only initiate a refund for a transaction where Settlement/Payment is completed.
- 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 - 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
- Provide your Public API key.
- 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.
- 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). - 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.
Server-to-server calls
- Capture the amount, paymentHandleToken and transactionType from the result object in the resultCallback function.
- If transactionType is ORIGINAL_CREDIT, call the Original Credit API.
- 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.
{
"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.















