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

# Comercios

> Registra tu negocio, consulta tu saldo, configura tu dirección de payout y lista tus cargos.

# Comercios

## Registrar un comercio

<ParamField body="name" type="string" required>
  Nombre visible del negocio, por ejemplo `"Acme Digital Goods"`.
</ParamField>

```bash theme={null}
POST /merchants
Authorization: Bearer <console_jwt>   # solo consola
```

```json theme={null}
// 201 Created
{
  "merchantId": "mch_c8fdac10d39c0c4d",
  "apiKey": "sk_mch_3dc34f4326fa081f02b1e552a91b4696bb541572cbe89b23"
}
```

<Warning>
  `apiKey` se muestra exactamente una vez. Solo se guarda su hash SHA-256.
</Warning>

## Consultar mi saldo

```bash theme={null}
GET /merchant/me
Authorization: Bearer sk_mch_...
```

```json theme={null}
// 200 OK
{
  "merchant": {
    "id": "mch_c8fdac10d39c0c4d",
    "name": "Acme Digital Goods",
    "balanceMinor": 200,
    "currency": "USD",
    "payoutAddress": null
  }
}
```

`balanceMinor` va en centavos de USD. Sube cada vez que se paga uno de tus cargos.

## Configurar la dirección de payout

A dónde va el dinero liquidado. La dirección se filtra automáticamente (KYT); las bloqueadas se rechazan con `403`.

```bash theme={null}
PUT /merchant/payout-address
Authorization: Bearer sk_mch_...
Content-Type: application/json

{ "address": "0xTuDireccionDeBilletera..." }
```

```json theme={null}
// 200 OK
{ "ok": true, "kyt": { "verdict": "pass", "reason": "no_blocklist_hit" } }
```

Errores:

| Estado | Significado                                                |
| ------ | ---------------------------------------------------------- |
| `400`  | No es una dirección EVM válida (`/^0x[a-fA-F0-9]{40}$/`).  |
| `403`  | Dirección marcada por el filtro KYT; incluye el `verdict`. |

## Listar mis cargos

Los últimos 100 cargos, del más reciente al más antiguo.

```bash theme={null}
GET /merchant/charges
Authorization: Bearer sk_mch_...
```

```json theme={null}
{ "charges": [ { "chargeId": "...", "...": "..." } ] }
```

Mira el [objeto cargo](/es/concepts/charges#objeto-cargo) para el detalle de cada campo.

## Filtrar una dirección (consola)

Filtrado KYT independiente; útil antes de pagar a una dirección arbitraria.

```bash theme={null}
POST /kyt/screen
Authorization: Bearer <console_jwt>
Content-Type: application/json

{ "address": "0x...", "chain": "base" }
```

```json theme={null}
{ "verdict": "pass", "reason": "no_blocklist_hit" }
```

## Exportar transacciones (consola)

Exportación contable directa desde la cadena de auditoría; cada fila lleva su número de secuencia y el hash del evento.

```bash theme={null}
GET /export/transactions.csv?from=2026-08-01&to=2026-08-31
Authorization: Bearer <console_jwt>
```

Si no das rango, toma los últimos 30 días. La respuesta es `text/csv`.
