Visa · Schema

Visa Payment Account

Schema representing a Visa payment account with attributes used across Payment Account Validation, Payment Account Attributes Inquiry, Account Updater, and Card on File services.

AccountBankingCredit CardsDigital CommerceDigital WalletFintechForeign ExchangeFraud PreventionMerchantsMoney MovementPaymentsTokenizationFortune 500

Properties

Name Type Description
primaryAccountNumber string Primary Account Number (PAN) of the Visa card
paymentAccountReference string Payment Account Reference (PAR) that uniquely identifies a cardholder account across multiple tokens and PANs
cardExpiryDate string Card expiration date in YYYY-MM format
cardholderName string Name of the cardholder as printed on the card
cardTypeCode string Code indicating the type of card account
cardProductType string Product type of the Visa card (e.g., Classic, Gold, Platinum, Infinite)
issuerName string Name of the financial institution that issued the card
issuerCountryCode string ISO 3166-1 numeric country code of the card issuer
binNumber string Bank Identification Number (first 6-8 digits of the PAN)
accountStatus string Current status of the payment account
fastFundsIndicator string Indicates whether the issuer participates in Fast Funds service for the account
pushPaymentsIndicator string Indicates whether the account can receive push payment transactions
onlineGamblingBlockIndicator string Indicates whether online gambling transactions are blocked for this account
billingAddress object
cardOnFileDetails array List of merchants with this card stored on file
tokenDetails array Token references associated with this account
View JSON Schema on GitHub

JSON Schema

visa-account-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://developer.visa.com/schemas/visa/account.json",
  "title": "Visa Payment Account",
  "description": "Schema representing a Visa payment account with attributes used across Payment Account Validation, Payment Account Attributes Inquiry, Account Updater, and Card on File services.",
  "type": "object",
  "required": [
    "primaryAccountNumber"
  ],
  "properties": {
    "primaryAccountNumber": {
      "type": "string",
      "description": "Primary Account Number (PAN) of the Visa card",
      "minLength": 13,
      "maxLength": 19
    },
    "paymentAccountReference": {
      "type": "string",
      "description": "Payment Account Reference (PAR) that uniquely identifies a cardholder account across multiple tokens and PANs",
      "maxLength": 29
    },
    "cardExpiryDate": {
      "type": "string",
      "description": "Card expiration date in YYYY-MM format",
      "pattern": "^\\d{4}-(0[1-9]|1[0-2])$"
    },
    "cardholderName": {
      "type": "string",
      "description": "Name of the cardholder as printed on the card"
    },
    "cardTypeCode": {
      "type": "string",
      "description": "Code indicating the type of card account",
      "enum": [
        "CREDIT",
        "DEBIT",
        "PREPAID",
        "DEFERRED_DEBIT",
        "CHARGE"
      ]
    },
    "cardProductType": {
      "type": "string",
      "description": "Product type of the Visa card (e.g., Classic, Gold, Platinum, Infinite)"
    },
    "issuerName": {
      "type": "string",
      "description": "Name of the financial institution that issued the card"
    },
    "issuerCountryCode": {
      "type": "string",
      "description": "ISO 3166-1 numeric country code of the card issuer",
      "pattern": "^\\d{3}$"
    },
    "binNumber": {
      "type": "string",
      "description": "Bank Identification Number (first 6-8 digits of the PAN)",
      "pattern": "^\\d{6,8}$"
    },
    "accountStatus": {
      "type": "string",
      "description": "Current status of the payment account",
      "enum": [
        "ACTIVE",
        "INACTIVE",
        "BLOCKED",
        "CLOSED"
      ]
    },
    "fastFundsIndicator": {
      "type": "string",
      "description": "Indicates whether the issuer participates in Fast Funds service for the account",
      "enum": [
        "Y",
        "N",
        "D"
      ]
    },
    "pushPaymentsIndicator": {
      "type": "string",
      "description": "Indicates whether the account can receive push payment transactions",
      "enum": [
        "Y",
        "N"
      ]
    },
    "onlineGamblingBlockIndicator": {
      "type": "string",
      "description": "Indicates whether online gambling transactions are blocked for this account",
      "enum": [
        "Y",
        "N"
      ]
    },
    "billingAddress": {
      "$ref": "#/$defs/Address"
    },
    "cardOnFileDetails": {
      "type": "array",
      "description": "List of merchants with this card stored on file",
      "items": {
        "$ref": "#/$defs/CardOnFileMerchant"
      }
    },
    "tokenDetails": {
      "type": "array",
      "description": "Token references associated with this account",
      "items": {
        "$ref": "#/$defs/TokenReference"
      }
    }
  },
  "$defs": {
    "Address": {
      "type": "object",
      "description": "Physical address associated with the account",
      "properties": {
        "street": {
          "type": "string",
          "description": "Street address"
        },
        "city": {
          "type": "string",
          "description": "City name"
        },
        "state": {
          "type": "string",
          "description": "State or province code"
        },
        "postalCode": {
          "type": "string",
          "description": "Postal or ZIP code"
        },
        "country": {
          "type": "string",
          "description": "ISO 3166-1 alpha-2 country code",
          "pattern": "^[A-Z]{2}$"
        }
      }
    },
    "CardOnFileMerchant": {
      "type": "object",
      "description": "Details of a merchant that has the card stored on file",
      "properties": {
        "merchantName": {
          "type": "string",
          "description": "Name of the merchant"
        },
        "merchantId": {
          "type": "string",
          "description": "Unique identifier of the merchant"
        },
        "enrollmentDate": {
          "type": "string",
          "format": "date",
          "description": "Date the card was stored on file with this merchant"
        },
        "transactionType": {
          "type": "string",
          "description": "Type of stored credential usage",
          "enum": [
            "RECURRING",
            "INSTALLMENT",
            "UNSCHEDULED",
            "SUBSCRIPTION"
          ]
        }
      }
    },
    "TokenReference": {
      "type": "object",
      "description": "Reference to a token associated with the payment account",
      "properties": {
        "tokenReferenceId": {
          "type": "string",
          "description": "Unique identifier for the token"
        },
        "tokenType": {
          "type": "string",
          "description": "Type of the token",
          "enum": [
            "DEVICE",
            "ECOMMERCE",
            "NETWORK"
          ]
        },
        "tokenStatus": {
          "type": "string",
          "description": "Current status of the token",
          "enum": [
            "ACTIVE",
            "SUSPENDED",
            "DEACTIVATED"
          ]
        },
        "tokenRequestorId": {
          "type": "string",
          "description": "Identifier of the entity that requested the token"
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/visa-account"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.