# Payment methods for testing > Test your payment integration with sandbox card numbers, ACH accounts, and decline scenarios. Simulate successful transactions, declined payments, and CVV failures for comprehensive testing Use these test cards and accounts to simulate transactions in your sandbox. You can use these example cards and accounts to make test transactions via the API or any of Payabli's hosted payment solutions, like the virtual terminal or payment pages. ## Simulate a successful transaction Use these test cards and accounts for transactions in sandbox. ### Cards Use these with any future expiration date.
Payment Method Card Number CVV
Visa 4012000098765439 999
Mastercard 5146315000000055 998
Mastercard BIN 2 2223000048400011 998
Discover 6011000993026909 996
American Express 374101000000608 or 371449635392376 9997
Diner's Club 36256000000725 123
JCB 3566000000000000 123
### ACH Use this with any account type. | Payment Method | Account Number | Routing Number | | -------------- | -------------- | ------------------------------------------- | | ACH | 123123123 | Any real routing number, such as 102103407. | ## Simulate a decline You can use test cards to simulate declines. This is useful for testing how your application handles declined transactions. ### Decline rate limiting Using a test card repeatedly in a short period can sometimes cause it to be blocked. As a best practice, Payabli recommends adhering to the fraud control limits. See [fraud control](/developers/api-reference/api-overview#rate-limits) for more information. Reach out to your Payabli Solution Engineer with any questions or issues related to testing declines. ### Transaction declines You can simulate a transaction decline by using the following card in a transaction request with any future date for the expiration date:
Payment Method Card Number CVV
Visa 4532802195368947 999
The transaction request should return a decline response like this: ```json { "responseText": "Declined", "isSuccess": false, "pageIdentifier": null, "responseData": { "authCode": null, "referenceId": "124-d541b0a9d1774bf3871f1d967abaaaaaa", "resultCode": 2, "resultText": "201: Do not honor. The customer’s issuing bank is unwilling to accept the transaction.. DECLINED", "avsResponseText": null, "cvvResponseText": null, "customerId": 12345, "methodReferenceId": null } } ``` ### Stored method declines To simulate a decline when charging a stored payment method, you can store a payment method with any of the following test cards and a future expiration date. The stored payment method can be charged with an amount of **\$0.20 (20 cents)** to cause a declined transaction.
Payment Method Card Number CVV
Visa 4012000098765439 999
American Express 374101000000608 or 371449635392376 9997
The request to charge the stored payment method should return a decline response like this: ```json { "responseText": "Declined", "isSuccess": false, "pageIdentifier": null, "responseData": { "authCode": null, "referenceId": "124-d541b0a9d1774bf3871f1d967abaaaaaa", "resultCode": 2, "resultText": "201: Do not honor. The customer’s issuing bank is unwilling to accept the transaction.. DECLINED", "avsResponseText": null, "cvvResponseText": null, "customerId": 12345, "methodReferenceId": null } } ``` ### Invalid CVV declines To simulate a decline due to an invalid CVV, you can use any of the following test cards with an incorrect CVV:
Payment Method Card Number CVV
Visa 4012000098765439 Anything but 999
Mastercard 5146315000000055 Anything but 998
Mastercard BIN 2 2223000048400011 Anything but 998
Discover 6011000993026909 Anything but 996
American Express 374101000000608 or 371449635392376 Anything but 9997
The transaction request should return a decline response like this: ```json { "responseText": "Declined", "isSuccess": false, "pageIdentifier": null, "responseData": { "authCode": null, "referenceId": "226-ab732d2a1c7e4117a32133f9e92673b2", "resultCode": 2, "resultText": "850: AVS or CVV failed.. DECLINED", "avsResponseText": "AVS not available", "cvvResponseText": "CVV2/CVC2 no match", "customerId": 1799, "methodReferenceId": null } } ``` ## Related resources See these related resources to help you get the most out of Payabli. * **[Pay In schemas](/guides/pay-in-schemas-overview)** - Learn about Pay In (money in) transaction schemas * **[Pay In statuses](/guides/pay-in-status-reference)** - Learn about Pay In (money in) statuses