---
title: "Get Merchant"
method: GET
path: "/merchants/{merchant_id}"
tags: ["Merchants"]
---

# Get Merchant

`GET /merchants/{merchant_id}`

## Request

- Base URL: `https://app-sandbox.resolvepay.com/api`
- URL: `https://app-sandbox.resolvepay.com/api/merchants/{merchant_id}`
- Auth: one of:
  - HTTP bearer
  - HTTP basic
- TypeScript: <https://skmtc.dev/resolvepay/apis/resolve-partners-api-reference/docs/merchants/:merchant_id/get.ts> (a function with typed inputs; its response is checked against the schema)

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.

## Path parameters

- `merchant_id` string, required

## Response `200`

A merchant object.

- Merchant
  - `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.
  - `reference_id` string, nullable: Partner-supplied identifier for this merchant in your own system. `null` when never set.
  - `legal_business_name` string
  - `dba_name` string, nullable
  - `business_address` Address
    - `line1` string, required
    - `line2` string, nullable
    - `city` string, required
    - `state` string, required
    - `postal_code` string, required
    - `country` string, required
  - `business_email` string, email
  - `business_phone` string
  - `entity_type` 'corporation' | 'llc' | 'sole_proprietorship' | 'partnership' | 'non_profit'
  - `formation_state` string
  - `industry` string, nullable
  - `website` string, uri, nullable
  - `underwriting_status` string: Current underwriting lifecycle status for the merchant.
  - `seller_amount_approved` integer, nullable: Merchant approved limit (MAL), when available.
  - `active_subscription` object, nullable
    - `id` string
    - `tier` string
  - `metadata` object
  - `document_ingestion` DocumentIngestionSummary
    - `requested_count` integer
    - `queued_count` integer
    - `failed_count` integer
    - `results` DocumentIngestionResult[]
      - `document_id` string, nullable
      - `document_type` 'bank_statements' | 'financial_statements' | 'credit_references' | 'personal_guarantee' | 'other'
      - `filename` string
      - `download_url` string, uri
      - `status` 'queued' | 'failed'
      - `error_code` string, nullable
      - `error_message` string, nullable
  - `created_at` string, date-time
  - `updated_at` string, date-time

## Other responses

- `400`: Bad request error
- `401`: Unauthorized error
- `404`: Not found error
- `429`: Rate limit error

---

[API](https://skmtc.dev/resolvepay/apis/resolve-partners-api-reference.md) - [All operations](https://skmtc.dev/resolvepay/apis/resolve-partners-api-reference/llms.txt) - [OpenAPI document](https://skmtc.dev/resolvepay/apis/resolve-partners-api-reference/revisions/5a1c75b8b404?raw)
