Ir al contenido

Errores

Todos los errores comparten la misma forma:

{
"status": 403,
"code": "PARTNER_CANNOT_WRITE",
"message": "…",
"timestamp": "2026-08-19T12:00:00Z",
"fieldErrors": {},
"details": {},
"retryable": false
}

Mapea contra code, no contra message: el mensaje está pensado para leerse y puede mejorar; el código es contrato.

Código Estado Qué significa Qué hacer
UNAUTHORIZED 401 El token no lo emitió Costia a un cliente registrado Repetir el flujo de autorización
ACCESS_DENIED 403 Falta el scope que pide el endpoint Pedirlo, o aceptar que la persona lo declinó
NOT_A_PARTNER_CLIENT 403 El cliente no tiene identidad de partner Registrar el partner
PARTNER_CANNOT_WRITE 403 El partner no tiene dominio verificado Verificar el dominio
PARTNER_DISABLED 403 El partner está deshabilitado Nada que puedas arreglar tú
VALIDATION_ERROR 400 El cuerpo incumple una regla Mirar fieldErrors, que nombra cada campo
UNKNOWN_LINE_TYPE 400 Una línea trae un lineType fuera del conjunto aceptado Corregir la línea
UNKNOWN_QUANTITY_UNIT 400 Lo mismo con quantityUnit Corregir la línea
RESOURCE_NOT_FOUND 404 No existe esa factura para esta persona —

Un 403 al escribir suele ser una decisión. La pantalla de consentimiento no trae nada premarcado, así que tu cliente pudo entrar sin concederte invoices:write. No es una avería: es lo que eligió, y se le dijo qué implicaba.

Una factura de otra cuenta es 404, no 403. Decir que un identificador existe pero pertenece a otra persona ya es decir algo sobre esa persona.