# Fat Zebra test cards

> Test card numbers and other details for Fat Zebra's sandbox, and the result each one gives.

Use these details to try payments in a Fat Zebra sandbox (test) account. They work only in the sandbox: never use them in live, and never put real card or bank details into a sandbox.

You need a Fat Zebra sandbox account first: see [Fat Zebra sandbox credentials](/payment-providers/fat-zebra-sandbox/). The shared test credentials on that page can't use 3D Secure, so the 3D Secure cards below need your own sandbox account with 3D Secure turned on.

:::note[Where these details come from]
These are Fat Zebra's test details, not ours. They were copied from Fat Zebra's [Test Card Numbers](https://docs.fatzebra.com/docs/test-card-numbers), [3DS Cards for Testing](https://docs.fatzebra.com/docs/testing) and [Response Codes](https://docs.fatzebra.com/docs/response-codes) pages on 19 October 2026, and were correct on that date as far as those pages show. Fat Zebra can change or withdraw them at any time, and we can't confirm that they work. Check Fat Zebra's pages for the current details, and ask Fat Zebra if one doesn't behave as described.
:::

## How to choose a test result

- Some cards always give the same result, whatever the amount ([Test Card Numbers](https://docs.fatzebra.com/docs/test-card-numbers)).
- With the other cards, the last two digits of the amount set Fat Zebra's response code ([Test Card Numbers](https://docs.fatzebra.com/docs/test-card-numbers)). We send the amount to Fat Zebra in cents, so enter the amount in the checkout as usual: 50.05 gives response code 05.
- The 3D Secure cards set the authentication result ([3DS Cards for Testing](https://docs.fatzebra.com/docs/testing)). They need your own sandbox account with 3D Secure turned on by Fat Zebra, and **Enable 3DS** ticked in the Fat Zebra connection here.

## Cards

Fat Zebra says to use only its test card numbers in the sandbox: real card numbers won't be processed. Its testing page doesn't say which expiry date or CVC to use. Our own tests with Fat Zebra's sandbox use the expiry `12/30` and CVC `123`.

### Successful payments

| Card | Number | Notes |
| --- | --- | --- |
| Visa | `4005 5500 0000 0001` | Always approved |
| Mastercard | `5123 4567 8901 2346` | Always approved |
| American Express | `3456 789012 34564` | Always approved |
| JCB | `3530 1113 3330 0000` | Always approved |
| China UnionPay | `6250 9460 0000 0016` | Always approved |
| Discover | `6011 1111 1111 1117` | Result set by the amount: use an amount ending in `.00` to approve |
| Diners Club | `3670 010200 0000` | Result set by the amount: use an amount ending in `.00` to approve |

### Declines and errors

These cards are always declined:

| Number or trigger | Result |
| --- | --- |
| Visa `4557 0123 4567 8902` | Declined (05) |
| Mastercard `5313 5810 0012 3430` | Declined (05) |
| American Express `3714 496353 98431` | Declined (05) |
| JCB `3566 0020 2036 0505` | Declined (05) |
| China UnionPay `6250 9470 0000 0014` | Declined (05) |

Our own tests with Fat Zebra's sandbox also find that a card with a past expiry date is rejected when the card is saved (they use `4111 1111 1111 1111` with `01/20`).

With the cards below, the last two digits of the amount set Fat Zebra's response code. For example, AUD 50.09 gives response code 09.

| Card | Number |
| --- | --- |
| Visa | `4242 4242 4242 4242` |
| Visa | `4111 1111 1111 1111` |
| Mastercard | `5555 5555 5555 4444` |
| Mastercard | `2221 0012 3456 7896` |
| American Express | `3700 000000 00002` |
| China UnionPay | `6222 8212 3456 0017` |
| Discover | `6011 3325 6061 8887` |
| Diners Club | `3670 010200 0000` |

| Amount ends in | Result |
| --- | --- |
| `.00` | Approved |
| `.05` | Declined: do not honour |
| `.09` | Declined: acquirer busy |
| `.14` | Declined: invalid card number |
| `.51` | Declined: insufficient funds |
| `.54` | Declined: expired card |
| `.82` | Declined: CVV validation error |
| `.91` | Declined: card issuer unavailable |
| `.96` | Declined: system error |

Fat Zebra lists every response code on its [Response Codes](https://docs.fatzebra.com/docs/response-codes) page.

### 3D Secure

| Number | Result |
| --- | --- |
| Visa `4000 0000 0000 1000`<br />Mastercard `5200 0000 0000 1005`<br />American Express `3400 000000 01007` | Frictionless, authenticated (liability shift) |
| Visa `4000 0000 0000 1026`<br />Mastercard `5200 0000 0000 1021`<br />American Express `3400 000000 01023` | Frictionless, authentication attempted: issuer not taking part (liability shift) |
| Visa `4000 0000 0000 1091`<br />Mastercard `5200 0000 0000 1096`<br />American Express `3400 000000 01098` | Challenge, then authenticated (liability shift) |
| Visa `4000 0000 0000 1109`<br />Mastercard `5200 0000 0000 1104`<br />American Express `3400 000000 01106` | Challenge, then failed (error 006) |
| Visa `4000 0000 0000 1018`<br />Mastercard `5200 0000 0000 1013`<br />American Express `3400 000000 01015` | Frictionless, failed (error 004) |
| Visa `4000 0000 0000 1042`<br />Mastercard `5200 0000 0000 1047`<br />American Express `3400 000000 01049` | Frictionless, rejected by the issuer (error 005) |
| Visa `4000 0000 0000 1034`<br />Mastercard `5200 0000 0000 1039`<br />American Express `3400 000000 01031` | Authentication unavailable from the issuer (error 003) |
| Visa `4000 0000 0000 2446`<br />Mastercard `5200 0000 0000 2037`<br />American Express `3400 000000 02732` | Enrolment check failed (error 002) |
| Visa `4000 0000 0000 1117`<br />Mastercard `5200 0000 0000 1112`<br />American Express `3400 000000 01114` | Card enrolled, but challenge unavailable from the issuer (error 007) |
| Visa `4000 0000 0000 1067`<br />Mastercard `5200 0000 0000 1062`<br />American Express `3400 000000 01064` | Server error (no error code) |
| Visa `4000 0000 0000 1075`<br />Mastercard `5200 0000 0000 1070`<br />American Express `3400 000000 01072` | Timeout (no error code) |

None of the failed results give a liability shift. Fat Zebra lists more scenarios on its [3DS Cards for Testing](https://docs.fatzebra.com/docs/testing) page.

## Apple Pay and Google Pay

We take Apple Pay and Google Pay as network tokens, through our own wallet integration rather than Fat Zebra's. To test them, see [Testing Apple Pay and Google Pay](/platforms/testing/apple-pay-google-pay/).