# Testing cards

| Card Number            | Notes                                                                 |
|------------------------|-----------------------------------------------------------------------|
| 4000000000000077       | Charge will succeed and funds will be added directly to your available balance. |
| 4242424242424242       | Charge will succeed.                                                  |
| 4000000000000002       | Charge will be declined with a card declined.                        |
| 4000000000000069       | Charge will be declined with an expired card.                        |
| 4000000000000127       | Charge will be declined with an incorrect cvc.                      |
| 4000000000000259       | Charge will succeed and it will later be disputed as fraudulent.     |

Payment Request

```json
{
  "amount": "15.00",
  "currency": "USD",
  "card": {
    "nameOnCard": "Christina Chan",
    "cardNumber": "4000000000000077",
    "expirationMonth": "03",
    "expirationYear": "2019",
    "securityCode": "123"
  },
  "personalContact": {
   "email": "cchan@paystand.com"
  }
}
```

# Testing banks

> ## 👍  Payments, Banks, Merchant Customers.
>
> The following test bank account and routing number can be used for creating test transactions, creating banks, or when creating a merchant customer.

| Account Number      | Routing Number | Notes                                                                         |
|---------------------|----------------|-------------------------------------------------------------------------------|
| 000123456789        | 110000000      | Resource status will transition to posted then transition to paid. (USD payments) |
| 000123456789        | 11000-000      | Resource status will transition to posted then transition to paid. (CAD payments) |

Payment Request (ACH)

```json
{
  "amount": "15.00",
  "currency": "USD",
  "bank": {
    "accountNumber": "000123456789",
    "routingNumber": "110000000",
    "country": "USA",
    "currency": "USD"
  },
  "personalContact": {
   "email": "cchan@paystand.com"
  }
}
```

Payment Request (EFT)

```json
{
  "amount": "15.00",
  "currency": "CAD",
  "bank": {
    "accountNumber": "000123456789",
    "routingNumber": "11000-000",
    "country": "CAN",
    "currency": "CAD"
  },
  "personalContact": {
   "email": "cchan@paystand.com"
  }
}
```

## Verifying a Bank

Paystand usually requires Bank resources to be verified before they can be used for other operations. E.g. Withdrawing money, or being used for payments or payouts.

Bank resources can be verified in 2 ways:

- Directly by using a BankLogin session
- Indirectly by using micro-deposits

### Micro-deposits

When micro deposits are initiated in a test environment, the values below can be used to successfully or unsuccessfully verify the bank.

| Amounts                            | Notes                                             |
|------------------------------------|---------------------------------------------------|
| ["32", "45"]                     | Will successfully verify                            |
| Any other amounts other than ["32", "45"] | Verification will fail                              |

Successful Verification

```json
{
  "amounts": ["32","45"]
}
```

Failed Verification

```json
{
  "amounts": ["01","99"]
}
```

# Testing bank logins

| Username          | Password         | BankName          | BankKey | MFA Question                | MFA Answer |
|-------------------|------------------|-------------------|---------|------------------------------|------------|
| paystand_test      | paystand_good    | Wells Fargo        | wells   | You say tomato, I say...?   | tomato     |
| paystand_test      | paystand_good    | Bank of America    | bofa    | You say tomato, I say...?   | tomato     |
| paystand_test      | paystand_good    | Chase              | chase   | You say tomato, I say...?   | tomato     |
| paystand_simple    | paystand_good    | All Banks         | wells   | N/A                          | N/A        |

## Multi-Factor Authentication (MFA) Questions

| MFA Question                             | MFA Type                       | MFA Answer                                                 |
|------------------------------------------|--------------------------------|-----------------------------------------------------------|
| "You say tomato, I say...?"             | Questions / Selections        | `tomato` will succeed<br>`again` is a valid response for type questions that will return another question mfa. |
| "What is the name on the bank account?"| Questions                     | `paystand`                                                |
| "What is the account holder type?"     | Questions                     | `individual` or `company`                                |
| "Account number"                        | Questions                     | `9876543210`                                            |
| "Routing number"                        | Questions                     | `111121111`                                            |
