RuPay Expired Card Test Card Numbers

RuPay · Expired Card: Expired cards should fail before authorization. MockCard simulates expired_card so expiry validators and gateway responses stay in sync.

RuPay is common in India-first stacks (Razorpay, domestic acquirers). Test RuPay-specific decline paths without waiting on gateway sandbox quotas.

When to use: Test client-side expiry checks, saved-card flows, and dunning when a stored instrument expires.

CI tip: Use distinct brands (Visa vs Amex) to catch length and CVV validation bugs.

Typical decline_code in webhook payloads: expired_card.

visa

•••• •••• •••• ••••

Cardholder Name

CVV •••

Expires ••/••

Click card to flip

More RuPay scenarios

Same scenario, other networks

Need webhook race conditions or 3DS abandonment? See payment failure testing and the API docs. Compare plans on pricing.

API example

const res = await fetch("https://mockcard.io/api/v1/generate", {
  method:  "POST",
  headers: {
    "Content-Type": "application/json",
    "X-Api-Key":    process.env.MOCKCARD_API_KEY ?? "",
  },
  body: JSON.stringify({
    brand:    "visa",      // visa | mastercard | rupay | amex
    scenario: "success",  // success | insufficient_funds | 3ds_challenge …
  }),
});

const card = await res.json();
// { card_number, expiry_month, expiry_year, cvv, brand, scenario }
console.log(card.card_number, card.cvv);