Global · Card issuing

Virtual USD Card Top-Up

Sometimes you don't want cash — you want to pay for AWS, Adobe, Meta ads or a Netflix plan. Convert gift-card value into a virtual USD card and spend it anywhere cards are accepted online.

You have gift-card value and a bill in dollars that your local card keeps declining. This rail turns the card's balance into a usable USD card number instead of local currency you'd only convert back.

At a glance

What this rail delivers.

Top-up time

1–2 min

Currency

USD

Per-card ceiling

$5,000

Success rate

97.8%

How it works

From gift card to settled payout.

  1. 01

    Lock the USD value

    The card's rate is applied in dollars — no local FX leg, because the destination is already USD.

  2. 02

    Create or pick a card

    Issue a fresh single-merchant card, or top up an existing one from your WePesa wallet.

  3. 03

    Spend it

    Card number, expiry and CVV appear in the wallet immediately after the top-up settles.

Coverage

Providers, banks, and wallets we settle to.

Use caseWorksNotesTypical settle
Cloud & SaaS (AWS, Adobe, Figma)YesRecurring billing supported1–2 min
Ad platforms (Meta, Google, TikTok)YesUse a dedicated card per account1–2 min
Streaming & app storesYesNetflix, Spotify, Apple, Google Play1–2 min
Travel & hotel bookingsPartialPre-auth holds may need extra headroom1–2 min
Crypto exchange purchasesNoBlocked by the issuer's MCC rules
ATM / physical retailNoVirtual, online-only

Limits & fees

Exactly what lands in your account.

TierPer top-upPer cardFee
New seller$200$500Absorbed
ID verified$1,000$5,000Absorbed
Hub / pro accountBy agreementBy agreementAbsorbed
Cards per account5 active

Rail fees are absorbed by WePesa unless a row says otherwise. The quote you lock is the amount that settles.

Reliability

How we keep the rail up when the network isn't.

One card per merchant

Issue a dedicated card for each subscription. If a merchant leaks or over-charges, you freeze that one card and nothing else breaks.

Pre-auth headroom

Hotels and rentals hold more than they charge. The top-up screen suggests headroom so a booking doesn't decline at the counter.

Decline transparency

Declines show the real issuer reason — insufficient balance, blocked merchant category, or 3DS failure — instead of a generic error.

Convertible either way

Unspent balance moves back into the WePesa wallet and out to M-Pesa, PIX, UPI, MoMo or USDT at any time.

For builders

Trigger payouts programmatically.

POST /v1/payouts — virtual card

json

{
  "rail": "virtual_card",
  "destination": { "card_id": "vc_2b81", "create_if_missing": true },
  "source_card": { "brand": "amazon_us", "face_value_usd": 100 },
  "quote_id": "qt_9dd402"
}

// 201 Created
{
  "id": "po_9Vc1",
  "status": "queued",
  "amount_usd": 84.00,
  "card_last4": "4417",
  "eta_seconds": 90
}

API access is available to verified Hub accounts. Sandbox keys are issued same day.

FAQ

What sellers ask about this rail.

Is the card a real Visa or Mastercard?+

Yes — an issued virtual card number that works on standard online card rails, subject to the merchant categories listed above.

Can I use it for Meta or Google ads?+

Yes, and it's one of the most common uses. Issue a dedicated card per ad account so a billing dispute never affects the rest.

Why was my transaction declined?+

Usually insufficient balance including the merchant's pre-auth, or a blocked category such as crypto purchases and gambling. The wallet shows the exact issuer reason.

Can I withdraw cash from it?+

No — it's online-only. Move the balance back into your wallet and cash out over a local rail instead.

Does unspent balance expire?+

No. It stays in your WePesa balance and can be paid out over any supported rail.

Fund a virtual card.

Lock a quote, upload the card, watch the payout land. Escrow protected end to end.

Related

Keep exploring.