---
title: "Get full private merchant details"
method: GET
path: "/v1/merchants/{id}/status"
tags: ["Merchant Setup"]
---

# Get full private merchant details

`GET /v1/merchants/{id}/status`

## Request

- Base URL: `https://api.insumermodel.com`
- URL: `https://api.insumermodel.com/v1/merchants/{id}/status`
- Auth: API key in header `X-API-Key`

Returns full details including credits, token configs, directory status, verification status, and USDC settings. Only accessible by the API key that created the merchant.

## Path parameters

- `id` string, required

## Response `200`

Full merchant status

- object
  - `ok` true
  - `data` object
    - `id` string
    - `companyName` string
    - `location` string
    - `credits` integer: Credits of the owner API key (the key that created this merchant). That key pays for the store's codes, scans and taps; the store has no balance of its own.
    - `apiAccessEnabled` boolean
    - `discountMode` 'highest' | 'stack' | 'capped'
    - `discountCap` integer
    - `maxDiscountsPerWalletPerDay` integer, nullable: The store's limit on discount codes per UTC day for a wallet without proof; null = no limit.
    - `maxUnprovenDiscount` integer, nullable: The most a wallet without proof can get, in percent; 0 = nothing; null = the same as proven.
    - `paused` boolean: Whether the store's recognition is paused (see PUT /v1/merchants/{id}/settings).
    - `pausedAt` string, date-time, nullable: When the store was paused, or null.
    - `listedInDirectory` boolean
    - `ownToken` object, nullable
    - `partnerTokens` object[]
    - `nftCollections` object[]
    - `usdcPayment` object, nullable
      - `enabled` boolean
      - `evmAddress` string
      - `solanaAddress` string, nullable
    - `verification` object: Domain verification status (token is never exposed here)
      - `status` 'unverified' | 'pending' | 'verified'
      - `domain` string, nullable
      - `method` 'dns' | 'meta' | 'file' | 'partner', nullable
      - `verifiedAt` string, date-time, nullable
    - `createdAt` string, date-time, nullable: ISO 8601 creation timestamp
  - `meta` Meta
    - `version` string
    - `timestamp` string, date-time

## Other responses

- `401`: Invalid or missing API key
- `403`: API key does not own this merchant
- `404`: Merchant not found
- `429`: Rate limit exceeded. API-key requests count against the key's daily limit; every authenticated response carries X-RateLimit-Limit and X-RateLimit-Remaining headers, and a 429 additionally carries Retry-After (seconds until the window resets).
- `500`: Unexpected server error. Safe to retry; no credits are charged on a 500. Router endpoints return the standard error envelope; standalone endpoints (the ones whose 200 is a flat object) return a flat {"error": "..."} object.

---

[API](https://skmtc.dev/insumermodel/apis/insumerapi.md) · [All operations](https://skmtc.dev/insumermodel/apis/insumerapi/llms.txt) · [OpenAPI document](https://skmtc.dev/insumermodel/apis/insumerapi/revisions/91f56fe9e3d8?raw)
