> ## 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.

# Motor de Políticas

> Límites duros, categorías permitidas y aprobaciones humanas, evaluados antes de cada movimiento de dinero.

# Motor de Políticas

El Motor de Políticas es la razón por la que se le puede confiar una billetera a un agente. Antes de que se ejecute **cualquier** pago o transferencia, Payzor evalúa la política del agente. Si la respuesta es no, no se mueve nada y el agente recibe un rechazo estructurado que puede leer y ante el que puede reaccionar.

## Las reglas

| Regla                                | Alcance             | Efecto                                                                                                                                              |
| ------------------------------------ | ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `maxSingleTransaction`               | límite duro         | Bloquea cualquier transacción por encima del tope.                                                                                                  |
| Máximo por transacción del workspace | límite duro         | Techo a nivel de propietario que se aplica encima del tope propio del agente (gana el más bajo de los dos).                                         |
| `allowedCategories`                  | límite duro         | El gasto se etiqueta con categorías (`data_apis`, `compute`, `agent_transfer`, `shop`, `services`). Todo lo que quede fuera de la lista se bloquea. |
| Topes diarios                        | límite duro         | Límite diario del agente y tope diario de volumen del workspace a nivel de propietario.                                                             |
| `requireHumanApprovalAbove`          | **revisión humana** | Por encima de este umbral el pago *no* se ejecuta; espera a un humano.                                                                              |

La distinción importa:

* **Límites duros** → rechazo inmediato, determinista, sin humanos de por medio.
* **Revisión humana** → se pausa como *aprobación pendiente* y se avisa a la persona en tiempo real.

## Humano en el circuito (HITL)

Cuando un pago supera el umbral de revisión:

```json theme={null}
{
  "success": false,
  "pendingApproval": true,
  "reason": "Monto $200 supera umbral de aprobación humana ($30 USDC)"
}
```

En ese mismo instante:

1. Se crea un registro de aprobación pendiente (con caducidad).
2. Se dispara un webhook `approval.required` a todos los endpoints registrados.
3. La consola muestra la cola de aprobaciones.

Después un humano concede o rechaza:

```bash theme={null}
curl -X POST https://tu-host-payzor/approvals/apr_xxx/grant \
  -H "Authorization: Bearer <console_jwt>"
```

Solo entonces se mueve el dinero. Los rechazos se registran igual que cualquier pago bloqueado.

## Gasto preautorizado

Algunos flujos no deberían volver a preguntarle a un humano por cada cargo, pero tampoco pueden saltarse los límites. Eso es lo que significa `preAuthorized` en Payzor:

> Cuando el humano de un agente acepta el presupuesto de un [PayLink](/es/concepts/paylinks), los cargos que se cobren contra ese presupuesto se saltan *únicamente* la regla de revisión humana. Todos los límites duros siguen aplicando.

Una aprobación, muchos cargos, cero ambigüedad sobre quién dijo que sí.

## Leer una política

```bash theme={null}
curl https://tu-host-payzor/balance -H "Authorization: Bearer pz_sk_..."
```

devuelve la política activa junto con el saldo, para que los agentes puedan autoverificarse antes de intentar un pago.
