Skip to main content
This guide walks you through issuing a virtual card on the sandbox environment. By the end, you will have a cardholder with an active virtual card ready to simulate transactions.
Prerequisites
  • A UQPAY sandbox account with Card Issuance enabled
  • An API token from the Access Token endpoint
  • The UQPAY CLI installed (recommended), or curl
1

Create a cardholder

A cardholder represents the person who will use the card. Create one with a name, email, phone number, and country code.
Response:
Save the cardholder_id — you need it to create a card.
Some card products require Enhanced KYC. If cardholder_status returns PENDING, the cardholder must complete identity verification before you can issue a card. See KYC verification.
2

Find a card product

Card products define the BIN, card scheme, funding mode, and supported currencies. List the products available on your account.
Look for a product with card_form containing VIR (virtual). For sandbox simulation, use a product with BIN 40963608 — this is the only BIN that supports the Simulate Authorization endpoint.Example product (abbreviated):
Save the product_id to use in the next step.
3

Create a virtual card

Issue a virtual card to the cardholder using the product you selected.
Response:
The card starts in PENDING status. Within a few seconds, it transitions to ACTIVE and a card.create.succeeded webhook fires. Virtual cards do not require activation.
4

Verify the card

Retrieve the card to confirm it is active.
Response:
The card is ACTIVE with an available balance of 1000.00 USD. It is ready to simulate transactions.

What’s next

Simulate a transaction

Use the Simulator API to test authorization and reversal flows.

Core concepts

Learn about card forms, funding modes, and configuration options.

Spending controls

Set per-transaction limits and merchant category restrictions.

Card lifecycle

Freeze, unfreeze, or cancel a card.