Testing
This page includes test card numbers, banking numbers, and other information to make sure your integration works as planned. Use it to trigger different flows in your integration and ensure they are handled accordingly.
sandbox
environment (i.e. https://sandbox-api.tilled.com).
Basic Test Card Numbers
NUMBER | BRAND | CVC* | DATE |
---|---|---|---|
4111 1111 1111 1111 | Visa (Credit) | Any 3 digits | Any future date |
4900 7700 0000 0001 | Visa (Debit) | Any 3 digits | Any future date |
5100 4000 0000 0000 | Mastercard | Any 3 digits | Any future date |
6011 2345 6789 0123 | Discover | Any 3 digits | Any future date |
3701 234567 89017 | American Express | Any 4 digits | Any future date |
ACH Debit Testing
The following table includes examples of well-known ABA routing numbers for ach_debit
payment methods. The account_number
can be any 4 or 17-digit number.
Bank name | ABA Routing Number |
---|---|
TD Bank Connecticut | 011103093 |
TD Bank Florida | 067014822 |
Bank of America | 011000138 |
Wells Fargo Bank | 021101108 |
HSBC | 021004823 |
EFT Direct Debit Testing
The following table includes examples of well-known institution_id
or Bank Codes for eft_debit
payment methods. The account_number
can be any 4 or 12-digit number and the transit_number
can be any 5-digit number.
Bank name | Bank Code (or institution number) |
---|---|
Bank of Montreal | 001 |
Scotiabank (The Bank of Nova Scotia) | 002 |
Royal Bank of Canada | 003 |
The Toronto-Dominion Bank | 004 |
National Bank of Canada | 006 |
Simulating Charge Declines
The following exact amounts will result in the associated error code on a payment intent. This is only accessible for card
. Example: 777701 = $7777.01.
Amounts | Error Code |
---|---|
777701 | ChargeDeclineCode.INSUFFICIENT_FUNDS |
777702 | ChargeDeclineCode.AVS_CHECK_FAILED |
777703 | ChargeDeclineCode.GENERIC_DECLINE |
777704 | ChargeDeclineCode.CALL_ISSUER |
777705 | ChargeDeclineCode.EXPIRED_CARD |
777706 | ChargeDeclineCode.PICKUP_CARD |
777707 | ChargeDeclineCode.INVALID_NUMBER |
777708 | ChargeDeclineCode.LIMIT_EXCEEDED |
777709 | ChargeDeclineCode.NOT_PERMITTED |
777710 | ChargeDeclineCode.INCORRECT_CVC |
777711 | ChargeDeclineCode.SERVICE_NOT_ALLOWED |
777712 | ChargeDeclineCode.INVALID_EXPIRY |
777713 | ChargeDeclineCode.CARD_NOT_SUPPORTED |
777714 | ChargeDeclineCode.RESTRICTED_CARD |
777715 | ChargeDeclineCode.FRAUDULENT |
777716 | ChargeDeclineCode.PROCESSING_ERROR |
Simulating ACH Debit Returns
ACH payments in the sandbox
environment transition from "status": "processing"
to the expected status at 8AM EST on the following day after the payment is made.
In the production
environment, the settlement and payout times for ACH payments can vary based on the Merchant's payout speed. You can learn more about this in our Payout Speeds and funding times article.
The following exact amounts will result in the associated error code on a payment intent. This is only accessible for ach_debit
. Example: 888801 = $8888.01.
Amounts | Error Code |
---|---|
888801 | ChargeDeclineCode.INSUFFICIENT_FUNDS |
888802 | ChargeDeclineCode.NOT_PERMITTED |
888803 | ChargeDeclineCode.BANK_ACCOUNT_BLOCKED |
888804 | ChargeDeclineCode.ACCOUNT_CLOSED |
888805 | ChargeDeclineCode.ACCOUNT_FROZEN |
888806 | ChargeDeclineCode.ACCOUNT_NUMBER_INVALID |
888807 | ChargeDeclineCode.AUTHORIZATION_REVOKED |
888808 | ChargeDeclineCode.INVALID_FIELD |
888809 | ChargeDeclineCode.NO_ACCOUNT |
888810 | ChargeDeclineCode.NOT_AUTHORIZED |
888811 | ChargeDeclineCode.NOT_RECOGNIZED |
888812 | ChargeDeclineCode.STOP_PAYMENT |
Simulating Address Verification Responses
By default, all card
transactions with valid billing_details
addresses will pass the address verification checks. To simulate a different response, add a single letter code from the table below as a prefix to the billing_details.street
property. Example: billing_details.street='11 123 Main Street'
will produce failed checks where the address matches, but postal code does not. These checks are available on the payment_method.card.checks
property.
PREFIX | CHECKS | DESCRIPTION |
---|---|---|
10 | address_line1_check=pass , address_postal_code_check=pass |
Both street and postal code match. |
11 | address_line1_check=pass , address_postal_code_check=fail |
Street matches, but postal code does not. |
12 | address_line1_check=fail , address_postal_code_check=pass |
Postal code matches, but street does not. |
18 | address_line1_check=unchecked , address_postal_code_check=unchecked |
Address information is unavailable |
15 | address_line1_check=unavailable , address_postal_code_check=unavailable |
Address information is unavailable |
Example:
billing_details.street
is prefixed with 11
and therefore the card.checks.address_postal_code_=fail
1{
2 "id": "pm_7jzakGs4bVgTo82EDLZcS",
3 "type": "card",
4 "card": {
5 "brand": "visa",
6 "last4": "1111",
7 "checks": {
8 "cvc_check": "pass",
9 "address_line1_check": "pass",
10 "address_postal_code_check": "fail"
11 },
12 "exp_year": 2026,
13 "exp_month": 8
14 },
15 "billing_details": {
16 "name": "John Doe",
17 "address": {
18 "zip": "80302",
19 "street": "11 123 Main Street", // Note the '11' prefix
20 "country": "US"
21 }
22 },
23 ...
24}
Simulating Disputes
AMOUNTS | DESCRIPTION | DISPUTE STATUS | STATUS HISTORY |
---|---|---|---|
777797 | Retrieval | warning_under_review | warning_needs_response, warning_under_review |
777798 | Retrieval followed up with chargeback | needs_response | warning_needs_response, warning_under_review, needs_response |
777799 | Chargeback | needs_response | needs_response |
When evidence is submitted, providing the explicit values (exact match) below for the evidence_description will trigger the dispute to be resolved as won or lost.
Evidence Description | Resulting Dispute Status |
---|---|
REVERSAL | won |
LOSS | lost |
Testing Plaid Bank Account Verification
To test the Plaid Bank Account Verification feature in the Merchant Onboarding Application, please follow the instructions below:
- In the Bank Account Verification section of the Merchant Application, click the Connect Account button, and then select Continue in the pop-up.
- On the Select your institution page, choose any one of the supported banking institutions by Plaid, and click Continue.
- Use the following test credentials to sign in to the Bank Account when prompted:
- Username:
user_good
- Password:
pass_good
- Username:
- After entering the credentials above, you will be directed to the Verify your identity page. Click the Get code button and then, enter
1234
as the input for the Code and, click the Submit button. - You can now proceed with the remaining steps for Plaid bank account verification.
Webhooks
To test your integration, perform actions using the API (in test mode) to send legitimate events to your endpoint. For instance, creating a charge triggers the charge.succeeded
event that contains the charge data. You can then use the API to verify the resulting event data.