Visa · Schema

Visa Merchant

Schema representing a merchant in the Visa network, used across Merchant Search, Merchant Screening, Merchant Offers, and ATM Locator APIs.

AccountsBankingCredit CardsDigital CommerceDigital WalletsFintechForeign ExchangeFraud PreventionMerchantsMoney MovementPaymentsTokenizationFortune 500

Properties

Name Type Description
visaMerchantId string Visa-assigned unique identifier for the merchant
visaStoreId string Visa-assigned unique identifier for a specific merchant store location
merchantName string Registered business name of the merchant
merchantCategoryCode string Four-digit Merchant Category Code (MCC) classifying the merchant's business type
merchantUrl string Merchant's official website URL
merchantLogoUrl string URL of the merchant's logo image
merchantAddress object
phoneNumber string Merchant's contact phone number
cardAcceptorId string Card Acceptor Identification Code (CAID) assigned by the acquirer
acquiringBin string Bank Identification Number of the merchant's acquiring institution
terminalId string Point-of-sale terminal identifier
acceptsVisa boolean Whether the merchant accepts Visa payment cards
acceptsVisaCommercial boolean Whether the merchant accepts Visa commercial payment products
supportsEnhancedData boolean Whether the merchant provides enhanced transaction data (Level 2/3)
terminationStatus string Current termination status from the MATCH/TMF database
riskIndicators object
offers array Active merchant offers from VMORC
View JSON Schema on GitHub

JSON Schema

visa-merchant-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://developer.visa.com/schemas/visa/merchant.json",
  "title": "Visa Merchant",
  "description": "Schema representing a merchant in the Visa network, used across Merchant Search, Merchant Screening, Merchant Offers, and ATM Locator APIs.",
  "type": "object",
  "required": [
    "merchantName"
  ],
  "properties": {
    "visaMerchantId": {
      "type": "string",
      "description": "Visa-assigned unique identifier for the merchant"
    },
    "visaStoreId": {
      "type": "string",
      "description": "Visa-assigned unique identifier for a specific merchant store location"
    },
    "merchantName": {
      "type": "string",
      "description": "Registered business name of the merchant"
    },
    "merchantCategoryCode": {
      "type": "string",
      "description": "Four-digit Merchant Category Code (MCC) classifying the merchant's business type",
      "pattern": "^\\d{4}$"
    },
    "merchantUrl": {
      "type": "string",
      "format": "uri",
      "description": "Merchant's official website URL"
    },
    "merchantLogoUrl": {
      "type": "string",
      "format": "uri",
      "description": "URL of the merchant's logo image"
    },
    "merchantAddress": {
      "$ref": "#/$defs/MerchantAddress"
    },
    "phoneNumber": {
      "type": "string",
      "description": "Merchant's contact phone number"
    },
    "cardAcceptorId": {
      "type": "string",
      "description": "Card Acceptor Identification Code (CAID) assigned by the acquirer",
      "maxLength": 15
    },
    "acquiringBin": {
      "type": "string",
      "description": "Bank Identification Number of the merchant's acquiring institution"
    },
    "terminalId": {
      "type": "string",
      "description": "Point-of-sale terminal identifier",
      "maxLength": 8
    },
    "acceptsVisa": {
      "type": "boolean",
      "description": "Whether the merchant accepts Visa payment cards"
    },
    "acceptsVisaCommercial": {
      "type": "boolean",
      "description": "Whether the merchant accepts Visa commercial payment products"
    },
    "supportsEnhancedData": {
      "type": "boolean",
      "description": "Whether the merchant provides enhanced transaction data (Level 2/3)"
    },
    "terminationStatus": {
      "type": "string",
      "description": "Current termination status from the MATCH/TMF database",
      "enum": [
        "NONE",
        "TERMINATED",
        "UNDER_REVIEW"
      ]
    },
    "riskIndicators": {
      "$ref": "#/$defs/RiskIndicators"
    },
    "offers": {
      "type": "array",
      "description": "Active merchant offers from VMORC",
      "items": {
        "$ref": "#/$defs/MerchantOffer"
      }
    }
  },
  "$defs": {
    "MerchantAddress": {
      "type": "object",
      "description": "Physical address of the merchant location",
      "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}$"
        },
        "latitude": {
          "type": "number",
          "format": "double",
          "description": "Latitude coordinate of the merchant location"
        },
        "longitude": {
          "type": "number",
          "format": "double",
          "description": "Longitude coordinate of the merchant location"
        }
      }
    },
    "RiskIndicators": {
      "type": "object",
      "description": "Risk-related indicators for the merchant from screening services",
      "properties": {
        "riskScore": {
          "type": "number",
          "description": "Computed risk score for the merchant",
          "minimum": 0,
          "maximum": 100
        },
        "terminationReasonCode": {
          "type": "string",
          "description": "Reason code if the merchant has been terminated"
        },
        "addedToMatchDate": {
          "type": "string",
          "format": "date",
          "description": "Date the merchant was added to the MATCH/TMF database"
        }
      }
    },
    "MerchantOffer": {
      "type": "object",
      "description": "A promotional offer associated with the merchant",
      "properties": {
        "offerId": {
          "type": "integer",
          "description": "Unique identifier for the offer"
        },
        "offerTitle": {
          "type": "string",
          "description": "Title of the offer"
        },
        "offerDescription": {
          "type": "string",
          "description": "Description of the offer terms"
        },
        "validityStartDate": {
          "type": "string",
          "format": "date",
          "description": "Start date of the offer validity period"
        },
        "validityEndDate": {
          "type": "string",
          "format": "date",
          "description": "End date of the offer validity period"
        },
        "redemptionUrl": {
          "type": "string",
          "format": "uri",
          "description": "URL for redeeming the offer"
        }
      }
    }
  }
}