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.

AccountsBankingCredit CardsDigital CommerceDigital WalletsFintechForeign 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"
        }
      }
    }
  }
}