Skip to main content
The MCC Code Check (kyb.mcc_code_check_v3) analyzes a business’s online presence, products, and services to determine the most appropriate Merchant Category Code (MCC) for payment processing and risk assessment.

Overview

Merchant Category Codes (MCCs) are four-digit numbers used by credit card networks to classify businesses. This check:
  • Analyzes business description and stated activities
  • Reviews website content and web presence data
  • Identifies products and services offered
  • Cross-references against the official MCC code database
  • Provides alternative MCC candidates with reasoning

Check ID

kyb.mcc_code_check_v3

Response Schema

The check result payload uses the MCCCodeCheckResultV2 schema:

Primary Fields

type
string
required
Always "MCCCodeCheckResultV2" - identifies the payload type.
mcc_code
string
The determined 4-digit Merchant Category Code.Example: "7372"
mcc_title
string
The official title for the MCC code.Example: "Computer Programming Services"
mcc_code_description
string
Full description of what businesses typically fall under this MCC code.Example: "Merchants classified with this MCC provide computer programming services, systems design, website design, data entry, and data processing services."
sub_mcc_category
string
Optional sub-category for more specific classification (used when customer-specific MCC mappings are configured).Example: "Butcher Shop"
source_id
string
Reference ID for the data source that supported this MCC determination.

Candidate MCC Codes

candidate_mcc_codes
array
List of alternative MCC codes that were considered, with reasoning.

Example Response

The check result includes a wrapper with metadata and the payload containing the MCC classification:
{
  "command_id": "kyb.mcc_code_check_v3",
  "command_name": "MCC Code Check",
  "status": "complete",
  "passed": true,
  "recommendation": "7372",
  "explanation": "The analysis determined MCC 7372 (Computer Programming Services) as the most accurate classification based on the business's primary activities in software development and data processing...",
  "payload": {
    "type": "MCCCodeCheckResultV2",
    "mcc_code": "7372",
    "mcc_title": "Computer Programming Services",
    "mcc_code_description": "Merchants classified with this MCC provide computer programming services, systems design, website design, data entry, and data processing services.",
    "candidate_mcc_codes": [
      {
        "code": 7372,
        "title": "Computer Programming Services",
        "short_reason": "Primary match - Business develops AI-powered software solutions involving computer programming, systems design, and data processing services.",
        "source_id": "owfzyz"
      },
      {
        "code": 7379,
        "title": "Computer Related Services",
        "short_reason": "Secondary consideration - Could apply for consulting aspects but less specific than 7372 for their software development focus.",
        "source_id": "schjuw"
      }
    ],
    "sub_mcc_category": null,
    "source_id": "owfzyz"
  },
  "alerts": {}
}

Extracting MCC Data with JSONPath

Use the jsonpath_query parameter with getJobById to extract specific MCC check data.

Get Full MCC Check Result

curl -X GET 'https://api.parcha.ai/api/v1/getJobById?job_id=YOUR_JOB_ID&include_check_results=true&jsonpath_query=$.check_results[?(@.command_id=="kyb.mcc_code_check_v3")]' \
  -H 'Authorization: Bearer YOUR_API_KEY'

Get Just the MCC Code Payload

curl -X GET 'https://api.parcha.ai/api/v1/getJobById?job_id=YOUR_JOB_ID&include_check_results=true&jsonpath_query=$.check_results[?(@.command_id=="kyb.mcc_code_check_v3")].payload' \
  -H 'Authorization: Bearer YOUR_API_KEY'
Example Response:
[
  {
    "type": "MCCCodeCheckResultV2",
    "mcc_code": "7372",
    "mcc_title": "Computer Programming Services",
    "mcc_code_description": "Merchants classified with this MCC provide computer programming services...",
    "candidate_mcc_codes": [...],
    "sub_mcc_category": null,
    "source_id": "web_profile_1"
  }
]

Get MCC Code Only

curl -X GET 'https://api.parcha.ai/api/v1/getJobById?job_id=YOUR_JOB_ID&include_check_results=true&jsonpath_query=$.check_results[?(@.command_id=="kyb.mcc_code_check_v3")].payload.mcc_code' \
  -H 'Authorization: Bearer YOUR_API_KEY'
Example Response:
["7372"]

Get All Candidate MCC Codes

curl -X GET 'https://api.parcha.ai/api/v1/getJobById?job_id=YOUR_JOB_ID&include_check_results=true&jsonpath_query=$.check_results[?(@.command_id=="kyb.mcc_code_check_v3")].payload.candidate_mcc_codes[*]' \
  -H 'Authorization: Bearer YOUR_API_KEY'

Python Example

import requests
from urllib.parse import quote

api_key = 'YOUR_API_KEY'
job_id = 'YOUR_JOB_ID'

# Get MCC code payload using JSONPath
jsonpath_query = '$.check_results[?(@.command_id=="kyb.mcc_code_check_v3")].payload'
url = f'https://api.parcha.ai/api/v1/getJobById?job_id={job_id}&include_check_results=true&jsonpath_query={quote(jsonpath_query)}'

headers = {'Authorization': f'Bearer {api_key}'}
response = requests.get(url, headers=headers)

mcc_result = response.json()
if mcc_result:
    payload = mcc_result[0]
    print(f"MCC Code: {payload['mcc_code']}")
    print(f"Title: {payload['mcc_title']}")
    print(f"Description: {payload['mcc_code_description']}")

Running the Check

Using startKYBAgentJob

curl -X POST 'https://api.parcha.ai/api/v1/startKYBAgentJob' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "agent_key": "public-bdd",
    "kyb_schema": {
      "id": "mcc-check-001",
      "self_attested_data": {
        "business_name": "CloudTech Solutions",
        "description": "We provide cloud-based software solutions for small businesses, including accounting software, CRM tools, and project management platforms delivered as SaaS",
        "website": "https://cloudtech.example",
        "industry": "Software as a Service"
      }
    }
  }'

Using runCheck (Single Check)

curl -X POST 'https://api.parcha.ai/api/v1/runCheck' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "agent_key": "your-agent-key",
    "kyb_schema": {
      "id": "unique-case-id",
      "self_attested_data": {
        "business_name": "TechInnovate Solutions",
        "description": "Providing cutting-edge software solutions for businesses",
        "website": "https://techinnovatesolutions.com"
      }
    },
    "check_id": "kyb.mcc_code_check_v3",
    "webhook_url": "https://your-webhook-url.com/callback"
  }'

Input Parameters

The check uses the following input fields:
business_name
string
required
The legal or operating name of the business.
description
string
required
A detailed description of the business’s activities, products, and services. More detail leads to more accurate MCC classification.
business_use_case
string
The primary business activity or use case. This field takes priority when determining the MCC code.
website
string
The official website URL. The check will analyze website content for additional context.
industry
string
Self-attested industry or business category.
mcc_code
string
Self-attested MCC code to verify. If provided, the check will compare against the determined MCC and note any discrepancies.

Common MCC Codes

CodeTitleDescription
7372Computer Programming ServicesCustom software development, web design, data processing
7371Computer Programming, Data Processing, and Integrated Systems DesignSystems integration, data processing services
7379Computer Maintenance, Repair and ServicesIT consulting, maintenance, support services
5734Computer Software StoresSoftware retail, SaaS products
5999Miscellaneous and Specialty Retail StoresGeneral e-commerce, online retail
7311Advertising AgenciesDigital marketing, advertising services
5812Eating Places and RestaurantsRestaurants, food service
5411Grocery Stores, SupermarketsFood retail

High-Risk MCC Codes

The following MCC codes are flagged as high-risk by default (configurable per agent):
CodeTitleRisk Factors
7995Gambling/Casino ServicesRegulatory requirements, high chargeback risk
5993Tobacco Stores and StandsAge restrictions, regulatory compliance
5963Door-To-Door SalesHigh fraud and chargeback rates
4829Money Transfer ServicesMSB licensing, AML requirements
6211Securities Brokers/DealersFinancial services licensing
6051Non-Financial InstitutionsMoney services, currency exchange
6012Financial InstitutionsRegulatory compliance, licensing
6540POI Funding TransactionsPrepaid card funding, AML concerns
7273Dating and Escort ServicesContent policies, fraud risk
5967Direct Marketing - Inbound TeleservicesHigh chargeback risk

Check Outcomes

Pass Conditions

The check passes when:
  • Sufficient verification data is available to determine an MCC
  • A reasonable MCC classification can be made with confidence

Fail Conditions

The check fails when:
  • No verification data or search results are available
  • The data is too vague or limited to determine an MCC with confidence
MCC discrepancies between self-attested and determined codes do not cause the check to fail. Discrepancies are reported as alerts while the check still passes with the determined MCC.