# Get Merchant

Retrieves a single sub-merchant belonging to the authenticated partner.
Only merchants scoped to the authenticated partner are returned. Requests for
unknown merchants or merchants outside that scope return `404`.
This path currently overlaps with a legacy public merchant endpoint. To avoid
ambiguous response shapes or fallback behavior, send the `resolve-api-version`
header on every request. Use `resolve-api-version: partner-v1` when you need
the partner API response contract documented here.

Endpoint: GET /merchants/{merchant_id}
Version: partners-v1
Security: bearerAuth, basicAuth

## Path parameters:

  - `merchant_id` (string, required)
    ID of the sub-merchant under your partner account.

## Response 200 fields (application/json):

  - `id` (string)
    Resolve merchant identifier (lowercase alphanumeric).
For partner API create flows, ID assignment behavior is:
- Resolve may derive a human-friendly alphanumeric candidate from merchant naming fields.
- If the candidate collides with an existing merchant ID, Resolve generates a random lowercase alphanumeric ID.
    Example: mrc_1234567890abcdef

  - `legal_business_name` (string)
    Example: Acme Supply LLC

  - `dba_name` (string)
    Example: Acme Industrial

  - `business_address` (object)

  - `business_address.line1` (string, required)
    Example: 100 Main St

  - `business_address.line2` (string)
    Example: Suite 200

  - `business_address.city` (string, required)
    Example: Austin

  - `business_address.state` (string, required)
    Example: TX

  - `business_address.postal_code` (string, required)
    Example: 78701

  - `business_address.country` (string, required)
    Example: US

  - `business_email` (string)
    Example: ops@acmesupply.com

  - `business_phone` (string)
    Example: +15125550123

  - `entity_type` (string)
    Enum: "corporation", "llc", "sole_proprietorship", "partnership", "non_profit"

  - `formation_state` (string)
    Example: TX

  - `industry` (string)
    Example: Manufacturing

  - `website` (string)
    Example: https://acmesupply.com

  - `underwriting_status` (string)
    Current underwriting lifecycle status for the merchant.
    Example: pending

  - `seller_amount_approved` (integer)
    Merchant approved limit (MAL), when available.
    Example: 50000

  - `active_subscription` (object)

  - `active_subscription.id` (string)
    Example: sub_1234567890abcdef

  - `active_subscription.tier` (string)
    Example: trial

  - `document_ingestion` (object)

  - `document_ingestion.requested_count` (integer)
    Example: 2

  - `document_ingestion.queued_count` (integer)
    Example: 1

  - `document_ingestion.failed_count` (integer)
    Example: 1

  - `document_ingestion.results` (array)

  - `document_ingestion.results.document_id` (string)
    Example: md_1234567890abcdef

  - `document_ingestion.results.document_type` (string)
    Enum: "bank_statements", "financial_statements", "credit_references", "personal_guarantee", "other"

  - `document_ingestion.results.filename` (string)

  - `document_ingestion.results.download_url` (string)

  - `document_ingestion.results.status` (string)
    Enum: "queued", "failed"

  - `document_ingestion.results.error_code` (string)

  - `document_ingestion.results.error_message` (string)

  - `created_at` (string)
    Example: 2026-02-26T10:00:00.000Z

  - `updated_at` (string)
    Example: 2026-02-26T10:05:00.000Z

## Response 400 fields (application/json):

  - `error` (object)

  - `error.message` (string)
    A short string, describing error details
    Example: Validation error

  - `error.type` (string)
    A short string, describing error type
    Enum: "validation_error"

  - `error.details` (array)

  - `error.details.path` (string)
    Path to the field failed validation
    Example: path.to.field

  - `error.details.message` (string)
    Detailed description of the error
    Example: `[field]` is required

## Response 401 fields (application/json):

  - `error` (object)

  - `error.message` (string)
    A short string, describing error details
    Example: Invalid merchant credentials

  - `error.type` (string)
    A short string, describing error type
    Enum: "authentication_error"

## Response 404 fields (application/json):

  - `error` (object)

  - `error.message` (string)
    A short string, describing error details
    Example: [entity] not found

  - `error.type` (string)
    A short string, describing error type
    Enum: "not_found_error"

## Response 429 fields (application/json):

  - `error` (object)

  - `error.message` (string)
    A short string, describing error details
    Example: Too many requests

  - `error.type` (string)
    A short string, describing error type
    Enum: "rate_limit_error"

