> ## Documentation Index
> Fetch the complete documentation index at: https://docs.taprails.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# MerchantStatus

> Operational status values for TapRails merchant accounts.

The `MerchantStatus` enum controls whether a merchant can receive payments. Every call to `POST /api/v1/sdk/payments/process` checks the merchant's current status before proceeding.

## Values

| Status        | Who Can Set            | Description                                                                   |
| :------------ | :--------------------- | :---------------------------------------------------------------------------- |
| `ACTIVE`      | Company / Platform     | Normal operations. Merchant accepts payments.                                 |
| `PAUSED`      | Company (self-service) | Temporarily suspended by the partner company via Management API or Dashboard. |
| `FROZEN`      | Platform Admin only    | Funds and payment processing locked pending investigation.                    |
| `BLACKLISTED` | Platform Admin only    | Permanent ban. Used for confirmed fraud or regulatory non-compliance.         |
| `SUSPENDED`   | Platform Admin only    | Temporary administrative hold placed by TapRails.                             |

<Warning>
  When a payment is attempted for a merchant that is not `ACTIVE`, the backend will return a `403 Forbidden` response. Plan your retry logic accordingly.
</Warning>

## Companies (Self-Service)

Partners can toggle between `ACTIVE` and `PAUSED` via:

* **Management API**: `PATCH /api/v1/management/merchants/{id}/status`
* **Dashboard UI**: `PATCH /api/v1/dashboard/merchants/{id}/status`

```json theme={null}
{ "status": "PAUSED" }
```

<Note>
  If a merchant has been set to `FROZEN`, `BLACKLISTED`, or `SUSPENDED` by the TapRails platform, self-service status updates will return `403 Forbidden`. Contact TapRails support if you believe this is in error.
</Note>

## Schema Definition

```prisma theme={null}
enum MerchantStatus {
  ACTIVE
  PAUSED
  FROZEN
  BLACKLISTED
  SUSPENDED
}
```
