Testing in the Sandbox Environment

Sandbox Testing

Testing the Widget with Aerosync Test Banks

The production environment contains thousands of banks that a user can connect with, but in the sandbox environment we provide an Aerosync-branded test bank called, "Aerobank" to develop and test against.

Login Credentials

When prompted to log in to AeroBank, use one of the following username/password combinations depending on the scenario you want to test:

Aerobank

This represents the non-oauth flow.

Log in and simulate a successful login, MFA, or incorrect credentials.

UsernamePasswordBehavior
syncno_mfaLogin succeeds immediately — no MFA step
syncmfaLogin succeeds, then MFA is required before the account connects
syncany other string valueReturns incorrect credentials error, prompts user to try entering credentials again

Aerobank - MFA Scenario

When you log in with sync / mfa, the flow will pause and ask a security question:

"What city were you born in?"

AnswerBehavior
correctMFA passes — account connects successfully
any other string valueMFA fails — connection is rejected

Aerobank OAuth

Simulates an OAuth flow.

UsernamePasswordBehavior
syncno_mfaLogin successful - continues to consent and account selection screens
syncany other string valueReturns incorrect credentials error, prompts user to try entering credentials again

Triggering Error States

Wrong Password at Login

Enter any username/password combination that is not one of the valid pairs above (e.g., sync / wrongpassword, or baduser / no_mfa). The login will be rejected with an invalid credentials error.

Wrong MFA Answer

After logging in with sync / mfa, enter anything other than correct when answering the security question. The MFA step will fail and the connection will be denied.


Testing AeroPass in the Sandbox with AeroStub (Bypass OTP)

Testing the AeroPass network flow in Sandbox normally requires a real one-time passcode (OTP). AeroStub lets you skip that by accepting a set of static OTP codes, so you can run the full flow without a real phone or code.

AeroStub applies to the AeroPass network flow only. You must launch the widget with an aeroPassUserUuid.

Before you start

You needWhat it is
AeroStub enabledOne-time setup by the Aerosync team. See Prerequisite — Ask Aerosync to enable AeroStub.
configurationIdThe unique ID assigned to you that applies your widget customizations.
aeroPassUserUuidIdentifies the AeroPass user. This is required for the AeroPass network flow.

Prerequisite — Ask Aerosync to enable AeroStub

Raise a support request to the Aerosync team to enable AeroStub for your configurationId.

AeroStub is available in lower environments only and is never enabled in production, so it is safe to leave on for testing. You only need to request this setup once.

Running the flow

  1. Launch the AeroSync widget in Sandbox with your configurationId and aeroPassUserUuid.
  2. Click Continue.
  3. On the passcode screen, enter one of the static OTP codes below:
    • Enter 0000 to test the happy path.
    • Enter an error code to test a failure state.

Static OTP codes

CodeResult
0000✅ Success — authentication passes, and the flow continues.
0001❌ Code expired. Returns OTP_EXPIRED.
0002❌ Too many attempts. Returns TOO_MANY_ATTEMPTS.
0003❌ Account not found. Returns ACCOUNT_NOT_FOUND.
0004❌ Server error. Returns SERVER_ERROR.
Any other code❌ Invalid code. Returns INVALID_OTP.

Testing the API with Aerosync Test Banks

All test users are pre-populated with the following profile data:

FieldValue
NameJohn Doe
Email[email protected]
Phone+1 (555) 123-4567
Address123 Main Street, Chicago, IL 60625

Account Balances

Each linked connection includes two accounts — Aero Checking and Aviator Savings — both with randomly generated balances. Expect different values every time a new connection is created.

FieldRange
Available balance$1,000.00 – $10,000.00
Current balanceAvailable + $10.00 – $500.00
CurrencyUSD

Balances are also refreshed slightly each time a balance refresh is requested (a random delta of up to $500 is added or subtracted), so values will shift between aggregation runs.

Transaction History

Each account is seeded with up to 2 years of historical transactions, and new transactions are added daily. Transactions are not real — amounts, merchants, and categories are randomly generated.

Volume

  • 5–10 transactions per day, spread throughout the morning
  • 2 payroll credits on the 1st and 15th of each month — $3,250.00 each, labeled "Direct Deposit Payroll"

Mix

  • ~85% debits, ~15% credits

Debit categories include: groceries, restaurants, gas, utilities, healthcare, shopping, entertainment, travel, and personal care.

Credit categories include: refunds, cashback, bank transfers, dividends, interest, and bonuses.

Amount Ranges

Amounts vary by category. A few examples:

CategoryRange
Coffee$3.50 – $14.00
Groceries$15.00 – $180.00
Flights$150.00 – $350.00
Payroll$3,250.00 (fixed)
Bonus$200.00 – $1,500.00


Did this page help you?