application/json lleva el envelope de code, title y message. Una respuesta con el tipo de medio application/problem+json lleva un problem detail de RFC 9457. Ambas formas llevan el campo code, así que puedes bifurcar la lógica según el valor PIX-NNNN.
Un rechazo generado dentro de un handler usa la forma application/problem+json. Un rechazo generado antes de que el handler se ejecute usa la forma application/json. Una ruta sin coincidencia, un método no permitido, un timeout, una desconexión y la verificación de repetición de idempotencia rechazan todos antes de que el handler se ejecute.
{
"code": "PIX-0030",
"title": "Idempotency Key Required",
"message": "The Idempotency-Key header is required for this operation and must be within the accepted length."
}
{
"type": "https://errors.lerian.studio/v1/PIX-0240",
"title": "Not Found",
"status": 404,
"detail": "No collection found for the given identifiers.",
"code": "PIX-0240"
}
application/json lleva tres campos:
code– Un identificador estable y único para el error (PIX-NNNN). Útil para el manejo programático y las solicitudes de soporte.title– Un resumen breve y legible por humanos del problema.message– Orientación detallada para ayudarte a resolver el error.
application/problem+json sigue el RFC 9457:
type– Un URI que identifica el error en el catálogo de errores de Lerian. Se construye comohttps://errors.lerian.studio/v1/<code>.title– El texto del estado HTTP (por ejemplo,Not Found).status– El código de estado HTTP.detail– Una explicación legible por humanos de esta ocurrencia del problema. Usacodepara bifurcar la lógica de forma programática.code– El mismo identificadorPIX-NNNNque lleva el envelopeapplication/json.errors– Lista opcional de detalles de validación por campo, cada uno con unmessagey unalocation.instance– Referencia URI opcional que identifica esta ocurrencia específica.
Status muestra el estado HTTP del código. La columna detail muestra el texto que lleva la forma application/problem+json. En el estado 500 y superiores, esa forma lleva el texto fijo internal error, y las tablas lo muestran en esas filas.
PIX-0010 y PIX-0000 son códigos genéricos de reserva. En un rechazo generado antes de que el handler se ejecute, cualquiera de los dos puede llevar un estado distinto al de la tabla.
Errores comunes
DICT, las cobranzas y los pagos comparten estos códigos. Van de
PIX-0000 a PIX-0061.
code | Descripción | Status | detail |
|---|---|---|---|
| PIX-0000 | Error interno del servidor | 500 | internal error |
| PIX-0001 | Encabezados faltantes en la solicitud | 400 | A tu solicitud le faltan uno o más parámetros de encabezado obligatorios. |
| PIX-0002 | Campos faltantes en la solicitud | 400 | A tu solicitud le faltan uno o más campos obligatorios. |
| PIX-0003 | Valores de campo inválidos en la solicitud | 400 | Tu solicitud contiene uno o más campos con un tipo de dato inválido. |
| PIX-0004 | No autorizado | 401 | Credenciales de autenticación inválidas o vencidas. |
| PIX-0005 | Prohibido | 403 | No tienes permiso para hacer esta operación. |
| PIX-0006 | Demasiadas solicitudes | 429 | Se superó el límite de solicitudes. Espera antes de hacer solicitudes adicionales. |
| PIX-0008 | Ruta no encontrada | 404 | La ruta del recurso solicitado no existe. |
| PIX-0009 | Método no permitido | 405 | El método HTTP no está permitido para este recurso. |
| PIX-0010 | Error del cliente | 400 | La solicitud no se pudo procesar debido a un error del lado del cliente. |
| PIX-0011 | Entidad no encontrada | 404 | No se encontró ninguna entidad para el ID proporcionado. Verifica que estés usando el ID correcto. |
| PIX-0012 | Conflicto de entidad | 409 | La entidad ya existe o entra en conflicto con un recurso existente. |
| PIX-0013 | Operación no procesable | 422 | La operación no se pudo procesar debido a una infracción de una regla de negocio. |
| PIX-0014 | Acción no permitida | 403 | La acción que intentas hacer no está permitida en el entorno actual. |
| PIX-0015 | Parámetro de ruta inválido | 400 | Uno o más parámetros de ruta son inválidos. |
| PIX-0016 | Tipo de medio no admitido | 415 | El cuerpo de la solicitud debe enviarse con Content-Type: application/json. |
| PIX-0017 | Encabezados inválidos en la solicitud | 400 | Tu solicitud contiene uno o más encabezados con un formato inválido. |
| PIX-0018 | Falta el contexto de tenant | 400 | La solicitud no se pudo asociar con un tenant. Confirma que la resolución de tenant se haya ejecutado para esta ruta. |
| PIX-0020 | Parámetro de consulta inválido | 400 | Uno o más parámetros de consulta tienen un formato incorrecto. |
| PIX-0021 | Formato de fecha inválido | 400 | Los campos de fecha tienen un formato incorrecto. Usa el formato ‘yyyy-mm-dd’. |
| PIX-0022 | Rango de fechas inválido | 400 | Los campos ‘start_date’ y ‘end_date’ son obligatorios y deben tener el formato ‘yyyy-mm-dd’. |
| PIX-0023 | El rango de fechas supera el límite | 400 | El rango entre ‘start_date’ y ‘end_date’ supera el límite permitido. |
| PIX-0024 | Límite de paginación superado | 400 | El límite de paginación supera el número máximo de elementos permitidos por página. |
| PIX-0025 | Orden de clasificación inválido | 400 | El campo ‘sort_order’ debe ser ‘asc’ o ‘desc’. |
| PIX-0026 | Longitud de clave de metadatos superada | 400 | Una clave de metadatos supera la longitud máxima permitida. |
| PIX-0027 | Longitud de valor de metadatos superada | 400 | Un valor de metadatos supera la longitud máxima permitida. |
| PIX-0028 | Anidamiento de metadatos inválido | 400 | El objeto de metadatos no puede contener valores anidados. |
| PIX-0030 | Se requiere la clave de idempotencia | 400 | El encabezado Idempotency-Key es obligatorio para esta operación y debe estar dentro de la longitud aceptada. |
| PIX-0031 | Conflicto de clave de idempotencia | 412 | El Idempotency-Key ya se usó con una solicitud diferente. |
| PIX-0032 | Idempotencia no disponible | 503 | internal error |
| PIX-0033 | Efecto de idempotencia desconocido | 409 | Un intento anterior con esta clave de idempotencia ya se ejecutó en el proveedor. La operación debe conciliarse antes de reintentarla. |
| PIX-0034 | Payload demasiado grande | 413 | El cuerpo de la solicitud supera el tamaño máximo permitido para esta operación. |
| PIX-0050 | Formato de ID de transacción inválido | 400 | El ID de transacción no coincide con el formato requerido. |
| PIX-0054 | Tiempo de espera del gateway agotado | 504 | internal error |
| PIX-0055 | Cliente desconectado | 499 | El cliente se desconectó antes de que la solicitud se completara. |
| PIX-0061 | Formato de monto inválido | 400 | El monto debe estar en formato decimal con 2 posiciones decimales. |
Errores de DICT y claves Pix
Estos códigos provienen de las entradas de claves Pix, la búsqueda de claves, las reclamaciones, los marcadores de fraude, las recuperaciones de fondos y la sincronización de claves. Van de
PIX-0100 a PIX-0174.
code | Descripción | Status | detail |
|---|---|---|---|
| PIX-0100 | Entrada inválida | 422 | Faltan campos obligatorios o estos están malformados. |
| PIX-0101 | Formato de clave inválido | 400 | El valor de la clave no coincide con el formato esperado para este tipo de clave. |
| PIX-0102 | La clave ya existe | 409 | El valor de la clave ya está registrado. |
| PIX-0103 | Límite de claves superado | 400 | La cuenta alcanzó el número máximo de claves para este tipo de clave. |
| PIX-0104 | Falló la verificación de titularidad de la cuenta | 400 | No se pudo verificar la titularidad de la cuenta a través de CRM. |
| PIX-0105 | Entrada no encontrada | 404 | La entrada de clave no existe. |
| PIX-0106 | Entrada no activa | 422 | La entrada de clave no está en estado ACTIVE. |
| PIX-0107 | Sin campos para actualizar | 400 | No se proporcionaron campos que se puedan actualizar. |
| PIX-0108 | Se requiere el motivo de eliminación | 400 | No se proporcionó el motivo de eliminación. |
| PIX-0109 | Filtro inválido | 400 | El valor del parámetro de filtro es inválido. |
| PIX-0110 | Recuperación de fondos no encontrada | 404 | No existe ninguna recuperación de fondos con el ID proporcionado para este participante. |
| PIX-0111 | Se requiere la clave de idempotencia | 400 | El encabezado Idempotency-Key es obligatorio para esta operación. |
| PIX-0112 | Conflicto de clave de idempotencia | 412 | El Idempotency-Key ya se usó con un cuerpo de solicitud diferente. |
| PIX-0113 | La recuperación de fondos ya existe | 409 | Ya existe una recuperación de fondos para esta transacción raíz. |
| PIX-0114 | Transición de estado de recuperación de fondos inválida | 409 | La operación solicitada no está permitida desde el estado actual de la recuperación de fondos. |
| PIX-0115 | Estadísticas de persona no encontradas | 404 | No existe ninguna proyección de estadísticas para el tax id proporcionado. |
| PIX-0116 | Cuenta no encontrada | 422 | No se encontró la cuenta o el titular para la clave o cuenta proporcionada. |
| PIX-0117 | Plazo de impugnación de recuperación de fondos vencido | 422 | El plazo regulatorio de impugnación para esta transacción ya venció. |
| PIX-0118 | Resultado de recuperación de fondos pendiente | 409 | El proveedor aceptó la operación, pero el resultado de BACEN aún no se resolvió; consulta la operación antes de reintentarla. |
| PIX-0120 | Clave no encontrada | 404 | La clave no existe en el directorio DICT. |
| PIX-0121 | Lista de claves vacía | 400 | Se debe proporcionar al menos una clave para la operación de verificación. |
| PIX-0122 | La lista de claves supera el límite | 400 | El número de claves supera el máximo permitido (200). |
| PIX-0124 | Clave en custodia | 409 | La clave solicitada ya está en custodia de la cuenta solicitante. |
| PIX-0130 | Marcador de fraude no encontrado | 404 | El marcador de fraude solicitado no se encontró en el proveedor. |
| PIX-0131 | Conflicto de marcador de fraude | 409 | La operación del marcador de fraude entra en conflicto con su estado actual en el proveedor. |
| PIX-0132 | El request ID ya se usó | 400 | Este requestId ya se usó con parámetros diferentes. |
| PIX-0133 | Marcador de fraude prohibido | 403 | El emisor de la solicitud no está autorizado para hacer esta operación de marcador de fraude. |
| PIX-0134 | Límite de tasa del marcador de fraude | 429 | El proveedor limitó la tasa de esta operación de marcador de fraude. |
| PIX-0140 | CRM no disponible | 502 | internal error |
| PIX-0141 | Falla del adaptador | 502 | internal error |
| PIX-0142 | Falta un campo obligatorio | 400 | Falta un campo o encabezado obligatorio en la solicitud de reclamación. |
| PIX-0143 | Valor de campo inválido | 400 | Uno o más campos o encabezados de la reclamación tienen un valor inválido. |
| PIX-0144 | Discrepancia de repetición de request ID | 409 | El X-Request-Id ya se vio con un cuerpo de solicitud diferente. |
| PIX-0145 | Reclamación no encontrada | 404 | No se encontró ninguna reclamación para el identificador y la cuenta proporcionados. |
| PIX-0146 | Configuración de reclamación no admitida | 422 | La combinación de tipo de reclamación y tipo de clave solicitada no es compatible. |
| PIX-0147 | Transición de reclamación inválida | 422 | La transición de estado de reclamación solicitada no está permitida. |
| PIX-0148 | Límite de tasa de reclamación superado | 429 | Se superó el límite de tasa para esta operación de reclamación. |
| PIX-0149 | Ya existe una reclamación activa para la clave | 422 | Ya existe una reclamación activa para esta clave. |
| PIX-0150 | Presupuesto diario agotado | 429 | El presupuesto diario de solicitudes está agotado para createCidSetFile. |
| PIX-0151 | Estado de VSync no encontrado | 404 | No existe ningún estado de VSync para el alcance solicitado. |
| PIX-0152 | Trabajo de conciliación no encontrado | 404 | El trabajo de conciliación no existe. |
| PIX-0153 | Discrepancia no encontrada | 404 | El registro de discrepancia no existe. |
| PIX-0154 | La discrepancia ya se resolvió | 409 | La discrepancia ya se resolvió. |
| PIX-0155 | El trabajo no se puede reintentar | 409 | El trabajo de conciliación no está en un estado que se pueda reintentar. |
| PIX-0156 | Ya existe un trabajo activo | 409 | Ya existe un trabajo de conciliación activo para este alcance. |
| PIX-0157 | Alcance inválido | 400 | ISPB o tipo de clave desconocido en el alcance solicitado. |
| PIX-0158 | Presupuesto de verificación agotado | 429 | El presupuesto de solicitudes está agotado para las verificaciones de sincronización. |
| PIX-0159 | El alcance no está bloqueado para escalamiento | 409 | El alcance solicitado no está en estado ESCALATION_BLOCKED. |
| PIX-0160 | Registro de conciliación no encontrado | 404 | La entrada del registro de conciliación no existe. |
| PIX-0161 | Trabajo de webhook no encontrado | 404 | No se encontró ningún trabajo de conciliación para el alcance proporcionado. |
| PIX-0162 | Payload de webhook inválido | 400 | El payload del webhook es inválido o contiene datos inconsistentes. |
| PIX-0163 | Reclamación bloqueada por fraude | 422 | La reclamación se rechazó porque la clave está marcada por fraude. |
| PIX-0164 | Adaptador de reclamaciones no disponible | 503 | internal error |
| PIX-0165 | La reclamación no se puede confirmar | 422 | No se cumplen las condiciones previas de confirmación para esta reclamación. |
| PIX-0166 | Mismo participante | 422 | El participante donante y el reclamante deben ser diferentes. |
| PIX-0167 | Falta el período de resolución | 422 | El período de resolución es obligatorio para esta transición de reclamación. |
| PIX-0168 | Estado terminal | 422 | La reclamación está en un estado terminal y no se puede modificar. |
| PIX-0169 | Modificaciones de reclamación bloqueadas temporalmente | 503 | internal error |
| PIX-0171 | La clave no existe | 422 | La clave no está registrada en el directorio; no hay nada que reclamar. |
| PIX-0172 | Fecha de apertura inválida | 422 | No se pudo interpretar la fecha de apertura de cuenta que devolvió CRM. |
| PIX-0173 | La clave ya pertenece al titular | 422 | La clave ya pertenece al titular solicitante. |
| PIX-0174 | Alcance de verify-sync inválido | 422 | ISPB o tipo de clave desconocido en el alcance de verify-sync solicitado. |
Errores de cobranzas y BR Code
Estos códigos provienen de los BR Codes, las cobranzas inmediatas y las cobranzas con vencimiento. Van de
PIX-0200 a PIX-0267.
code | Descripción | Status | detail |
|---|---|---|---|
| PIX-0200 | Entrada inválida | 400 | Faltan campos obligatorios o estos están malformados. |
| PIX-0201 | Clave no encontrada | 422 | La clave Pix no existe o no está activa. |
| PIX-0202 | Nombre de comercio demasiado largo | 400 | El nombre del comercio supera el límite EMV de 25 caracteres. |
| PIX-0203 | Ciudad de comercio demasiado larga | 400 | La ciudad del comercio supera el límite EMV de 15 caracteres. |
| PIX-0204 | Falló la generación de EMV | 500 | internal error |
| PIX-0205 | BR Code no encontrado | 404 | El BR Code no existe para esta organización. |
| PIX-0206 | Filtro inválido | 400 | El valor del parámetro de filtro es inválido. |
| PIX-0207 | Campo de BR Code demasiado largo para codificar | 422 | keyValue y description juntos superan la longitud que la plantilla de comercio del BR Code puede codificar. Acorta la descripción o usa una clave Pix más corta. |
| PIX-0220 | Payload EMV malformado | 400 | El payload EMV está malformado o no es un código QR de Pix válido. |
| PIX-0221 | Falló la decodificación del QR | 400 | No se pudo interpretar el código QR. |
| PIX-0222 | Falló la resolución del QR dinámico | 502 | internal error |
| PIX-0223 | Adaptador inalcanzable | 502 | internal error |
| PIX-0224 | El proveedor rechazó la cobranza | 400 | El proveedor rechazó la solicitud de cobranza. |
| PIX-0225 | Recurso del proveedor no encontrado | 404 | El recurso de cobranza solicitado no se encontró en el proveedor. |
| PIX-0226 | Conflicto de estado en el proveedor | 409 | La cobranza está en un estado conflictivo en el proveedor. |
| PIX-0240 | Cobranza no encontrada | 404 | No se encontró ninguna cobranza para los identificadores proporcionados. |
| PIX-0241 | Cobranza en estado terminal | 422 | La cobranza está en un estado terminal (ya CANCELLED o COMPLETED) y no puede cambiar de estado. |
| PIX-0242 | La cobranza ya se pagó | 409 | La cobranza ya se marcó como pagada. |
| PIX-0260 | Se requiere fecha de vencimiento | 400 | El calendario de vencimiento (dueDate/validityAfterDue) es obligatorio para una cobranza con vencimiento. |
| PIX-0261 | Vigencia posterior al vencimiento inválida | 400 | validityAfterDue debe ser cero o un número positivo de días calendario. |
| PIX-0262 | Se requiere el deudor | 400 | El bloque de deudor es obligatorio para una cobranza con vencimiento. |
| PIX-0263 | Condiciones de multa inválidas | 400 | La modalidad o el valor de la multa (multa) es inválido. |
| PIX-0264 | Condiciones de interés inválidas | 400 | La modalidad o el valor del interés (juros) es inválido. |
| PIX-0265 | Condiciones de rebaja inválidas | 400 | La modalidad o el valor de la rebaja (abatimento) es inválido. |
| PIX-0266 | Condiciones de descuento inválidas | 400 | La modalidad, el valor o las fechas fijas del descuento (desconto) son inválidos. |
| PIX-0267 | Fecha de vencimiento inválida | 400 | dueDate no debe ser anterior a hoy. |
Errores de pagos y devoluciones
Estos códigos provienen de las transferencias Pix, las devoluciones y su liquidación. Van de
PIX-0300 a PIX-0706.
code | Descripción | Status | detail |
|---|---|---|---|
| PIX-0300 | Campos faltantes o malformados | 400 | Faltan campos obligatorios o estos están malformados para la iniciación de la transferencia. |
| PIX-0301 | Discrepancia en el tipo de iniciación | 400 | initiationType no coincide con los campos de destino proporcionados. |
| PIX-0302 | Cuenta de origen inválida | 400 | La cuenta de origen no se encontró o está inactiva en CRM. |
| PIX-0303 | Clave DICT no encontrada | 422 | La búsqueda de clave en DICT no arrojó resultados. |
| PIX-0304 | Falló la decodificación del código QR | 422 | No se pudo decodificar el código QR. |
| PIX-0320 | Iniciación no encontrada | 404 | El ID de iniciación no existe. |
| PIX-0321 | Iniciación vencida | 422 | La iniciación venció. |
| PIX-0322 | La iniciación ya se confirmó | 409 | La iniciación ya se confirmó. |
| PIX-0323 | Falló el débito en Midaz | 422 | El débito en Midaz falló por saldo insuficiente. |
| PIX-0324 | Falló la transacción en Midaz | 502 | internal error |
| PIX-0325 | Falló la llamada al proveedor después del débito | 502 | internal error |
| PIX-0326 | Iniciación cancelada | 409 | La iniciación se canceló y no se puede procesar. |
| PIX-0327 | Conflicto de transferencia | 409 | La transferencia cambió durante esta solicitud. Reintenta la operación. |
| PIX-0328 | Cuenta del ledger bloqueada | 422 | La cuenta del ledger está bloqueada y no se puede usar para la operación solicitada. |
| PIX-0329 | Saldo del ledger no encontrado | 422 | No existe ningún registro de saldo para la cuenta y el activo. |
| PIX-0340 | Transferencia no encontrada | 404 | El ID de transferencia no existe para esta organización. |
| PIX-0341 | Parámetro de filtro inválido | 400 | El valor del parámetro de filtro es inválido. |
| PIX-0342 | El rango de fechas supera el límite | 400 | El rango de fechas supera los 90 días. |
| PIX-0400 | Transferencia original no encontrada | 404 | La transferencia original no existe. |
| PIX-0401 | Transferencia no completada | 422 | La transferencia original no está en estado COMPLETED. |
| PIX-0402 | El monto de devolución supera el restante | 422 | El monto de la devolución supera el monto restante reembolsable. |
| PIX-0403 | Campos faltantes o malformados | 400 | Faltan campos obligatorios o estos están malformados para la devolución. |
| PIX-0404 | Falló la llamada al proveedor | 502 | internal error |
| PIX-0405 | Falló la transacción en Midaz | 502 | internal error |
| PIX-0406 | Conflicto de devolución | 409 | La devolución cambió durante esta solicitud. Reintenta la operación. |
| PIX-0420 | Devolución no encontrada | 404 | El ID de devolución no existe para esta organización. |
| PIX-0421 | Parámetro de filtro inválido | 400 | El valor del parámetro de filtro es inválido. |
| PIX-0422 | El rango de fechas supera el límite | 400 | El rango de fechas supera los 90 días. |
| PIX-0450 | Cuenta de destino no encontrada | 422 | La cuenta de destino no existe. |
| PIX-0451 | Cuenta de destino no activa | 422 | La cuenta de destino no está activa. |
| PIX-0453 | CRM no disponible | 502 | internal error |
| PIX-0454 | Midaz no disponible | 502 | internal error |
| PIX-0470 | Pago no encontrado | 404 | No hay ningún pago aprobado para este endToEndId. |
| PIX-0472 | Falló el crédito en Midaz | 502 | internal error |
| PIX-0500 | Transferencia original no encontrada | 404 | No se encontró la transferencia original para este endToEndId. |
| PIX-0501 | La devolución supera el restante | 422 | La devolución supera el monto restante reembolsable. |
| PIX-0502 | Campos faltantes o malformados | 400 | Faltan campos obligatorios o estos están malformados. |
| PIX-0520 | Devolución no encontrada | 404 | No hay ninguna devolución aprobada para este endToEndId. |
| PIX-0521 | Ya se liquidó | 409 | La devolución ya se liquidó. |
| PIX-0522 | Falló el crédito en Midaz | 502 | internal error |
| PIX-0550 | Entidad no encontrada | 404 | No se encontró ninguna entidad en PROCESSING para este endToEndId. |
| PIX-0551 | Estado inesperado | 409 | Se recibió un callback para una entidad que no está en estado PROCESSING. |
| PIX-0552 | Estado inválido | 400 | El estado no es un estado terminal válido. |
| PIX-0553 | Falló la reversión en Midaz | 502 | internal error |
| PIX-0554 | La entidad ya está en estado terminal | 409 | La entidad ya alcanzó un estado terminal; no hay nada que desbloquear. |
| PIX-0555 | Antigüedad de procesamiento insuficiente | 409 | La entidad no lleva suficiente tiempo en PROCESSING para desbloquearse; espera y reintenta. |
| PIX-0556 | El proveedor aún no tiene un resultado terminal | 409 | El proveedor aún no alcanzó un resultado terminal para esta entidad; espera y reintenta. |
| PIX-0557 | Proveedor inalcanzable | 502 | internal error |
| PIX-0650 | Cuenta de bloqueo no configurada | 422 | La cuenta de bloqueo no está configurada para este participante. |
| PIX-0652 | Falla del ledger | 502 | internal error |
| PIX-0653 | Liquidación en curso | 409 | El bloqueo se está liquidando y no se puede cancelar ni reiniciar; confírmalo o ciérralo en su lugar. |
| PIX-0654 | Nada que liquidar | 422 | No queda nada por liquidar para este bloqueo. |
| PIX-0655 | Alias de cuenta no resoluble | 422 | Una cuenta requerida para esta operación no tiene un alias resoluble en el ledger. |
| PIX-0700 | DICT Hub no disponible | 502 | internal error |
| PIX-0701 | COB Hub no disponible | 502 | internal error |
| PIX-0702 | CRM no disponible | 502 | internal error |
| PIX-0703 | Recurso no encontrado | 404 | El recurso de SPI solicitado no se encontró. |
| PIX-0704 | Conflicto de estado | 409 | El recurso está en un estado conflictivo para la operación solicitada. |
| PIX-0705 | Servicio upstream no disponible | 502 | internal error |
| PIX-0706 | Solicitud incorrecta | 400 | La solicitud es inválida. |

