Transactions in Test Mode

Fund your Atlas business account with a simulated bank transfer, test checkout payments and payouts, and switch between test and live environments.

When your account is in test mode, no real money moves. You can simulate an inflow (money into your business account) by funding it with a test bank transfer or completing a checkout payment, and a payout (money out) with the Create Payout endpoint.

Fund your business account

In test mode, you fund your business account the same way you would in live mode: with a bank transfer to its virtual account. Copy your virtual account number from your Atlas dashboard, then enter it and the amount in the bank transfer form below. The funds reflect in your account after about 2 minutes, and Atlas then sends an IN_FLOW_SUCCESS_EVENT webhook to your configured URL.

Checkout

To test a checkout payment, create a checkout, open its URL in your browser, and pay with the test details for one of the methods below. Payment links open the same hosted checkout page, so the same details work when you test a payment link.

Card

You can test the checkout by card using these card details. The gateway response is controlled by the expiry date and CVV you provide, not the card number itself.

Tip

You can use any four-digit number as the card PIN when prompted during checkout.

VISA

Card Number

•••• •••• •••• 1019

Card Holder

TEST USER

Expires

01/39

click to flip
AUTHORIZED SIGNATURE
CVV100

Valid Thru

01/39

VISA
4508750015741019
Exp: 01/39CVV: 100
Approved

Card Number

•••• •••• •••• 0008

Card Holder

TEST USER

Expires

01/39

click to flip
AUTHORIZED SIGNATURE
CVV100

Valid Thru

01/39

5123450000000008
Exp: 01/39CVV: 100
Approved
VISA

Card Number

•••• •••• •••• 1019

Card Holder

TEST USER

Expires

05/39

click to flip
AUTHORIZED SIGNATURE
CVV100

Valid Thru

05/39

VISA
4508750015741019
Exp: 05/39CVV: 100
Declined

Card Number

•••• •••• •••• 0008

Card Holder

TEST USER

Expires

05/39

click to flip
AUTHORIZED SIGNATURE
CVV100

Valid Thru

05/39

5123450000000008
Exp: 05/39CVV: 100
Declined
VISA

Card Number

•••• •••• •••• 1019

Card Holder

TEST USER

Expires

04/27

click to flip
AUTHORIZED SIGNATURE
CVV100

Valid Thru

04/27

VISA
4508750015741019
Exp: 04/27CVV: 100
Expired Card
VISA

Card Number

•••• •••• •••• 1019

Card Holder

TEST USER

Expires

08/28

click to flip
AUTHORIZED SIGNATURE
CVV100

Valid Thru

08/28

VISA
4508750015741019
Exp: 08/28CVV: 100
Timed Out

Additional Visa number: 4012000033330026

Additional Mastercard numbers: 2223000000000007, 5111111111111118, 2223000000000023

Simulating responses by expiry date

Use the expiry dates below to trigger specific gateway responses regardless of the card number you use.

ExpiryGateway response
01/39APPROVED
05/39DECLINED
04/27EXPIRED_CARD
08/28TIMED_OUT
01/37ACQUIRER_SYSTEM_ERROR
02/37UNSPECIFIED_FAILURE
05/37UNKNOWN

Simulating responses by CVV

Use the CVV values below to simulate specific card verification responses.

CVVResponse
100MATCH
101NOT_PROCESSED
102NO_MATCH

Bank transfer

Use the form below to simulate a bank transfer. Enter the amount and one of these account numbers:

  • The account number shown on the checkout page, to simulate a customer paying by bank transfer.
  • Your business virtual account number, to fund your business account.

You can also open the Checkout Simulator as a standalone page.

Simulate a checkout payment

OPay

When a customer selects OPay at checkout, Atlas redirects them to OPay's hosted checkout page, where they choose one of OPay's own payment methods, such as OPay Wallet or bank card. You can simulate a payment with OPay Wallet.

OPay asks for a phone number twice. The first prompt appears before the OPay checkout page loads, and any 11-digit phone number works there. After you choose OPay Wallet on the checkout page, enter the test phone number, PIN, and OTP below. The OTP you enter determines whether the payment succeeds or fails.

Phone numberPINOTPResult
1259257649123456315632Success
1259257649123456315633Failure

Payouts

A payout is money leaving your Atlas account. You can initiate payouts in test mode the same way you would in live mode: a POST request to the Create Payout endpoint with the recipient's bank details and the amount you want to transfer.

In test mode, no money leaves your account and nothing reaches the recipient. Atlas marks the payout as successful, so you can test how your integration handles a completed payout.

For example:

curl -X POST "https://atlas.tryduplo.com/api/v1/payout/bank-transfer" \
  -H "Authorization: Bearer your_api_key" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "account_number": "0123456789",
    "bank_code": "090267",
    "bank_name": "Kuda Microfinance Bank",
    "account_name": "John Doe",
    "amount": 5000,
    "narration": "Payment for services rendered",
    "currency": "NGN",
    "source_reference": "SRC_PAYOUT_001"
  }'

Learn more about payouts and how they work in the single payout guide.

Switching to live mode

Once you've finished testing your integration, switch to live mode by toggling the environment selector in your Atlas dashboard. Replace your test API keys with live keys, and your application will process real transactions.

How is this guide?

Last updated on

On this page