POST
/api/mod/facturacion/{espacio}/orders/{orden}/evidenceSube un comprobante de pago
La foto o el PDF con el que el cliente dice que pagó. Queda en la cola de revisión y la orden pasa a under_review. Por defecto no aprueba nada: lo decide una persona.
- PERMISOescribe
- CRÉDITOSno gasta
- AUTENTICACIÓNBearer bth_…
PARÁMETROS
| CAMPO | TIPO | REQUERIDO | QUÉ ES |
|---|---|---|---|
| espacio | string | SÍ | El id del espacio (sale en GET /api/companies). Tiene que tener el módulo Facturación. |
| orden | string | SÍ | El id de la orden: el que devolvió crearla (32 caracteres hexadecimales). |
CUERPO · MULTIPART/FORM-DATA
| CAMPO | TIPO | REQUERIDO | QUÉ ES |
|---|---|---|---|
| file | archivo | SÍ | El comprobante: una imagen (JPEG, PNG, WebP…) o un PDF. Hasta 10 MB. Uno por petición. |
| monto_declarado | string | no | Lo que el cliente dice que pagó. Se guarda para quien revisa. |
RESPUESTA 201
| CAMPO | TIPO | QUÉ ES |
|---|---|---|
| evidence_id | string | El id del comprobante. |
| decision | "pending_review" | "approved" | pending_review: espera revisión. approved solo si se aprobó solo. |
| auto_aprobada | boolean | Si pasó las cinco comprobaciones y la configuración deja aprobarlo solo. Por defecto, siempre false. |
| estado_orden | string | El estado de la orden ahora: under_review, o paid si se aprobó solo. |
ERRORES DE ESTA RUTA · SIEMPRE {"detail": …}
| STATUS | CUÁNDO | DETAIL LITERAL |
|---|---|---|
| 403 | El espacio no tiene el módulo Facturación | módulo no habilitado para este espacio. |
| 403 | La clave es de solo lectura | Tu cuenta es de solo lectura en este espacio. |
| 400 | El archivo está vacío | archivo vacío. |
| 404 | No hay una orden con ese id en el espacio | orden no encontrada. |
| 409 | La orden está pagada, despachada, vencida o cancelada | la orden en estado '<estado>' no admite comprobante. |
| 413 | El archivo pasa de 10 MB | comprobante demasiado grande. |
| 413 | Los comprobantes guardados del espacio llegarían a 200 MB | cuota de almacenamiento de comprobantes excedida. |
| 422 | Falta el campo file | — |
Y los de cualquier ruta —clave inválida, cuenta no al día, IP, límites—, en Errores, límites y créditos.
CONVIENE SABER
- Acepta comprobantes en
pending_payment,under_review(uno más) yrejected(otro intento tras un rechazo). - Un comprobante es un dato personal (nombres, cuentas, montos): súbelo directo desde donde lo recibes y no lo guardes en otros sistemas.
- Cuándo se aprueba solo, en la guía. Con la configuración de fábrica, nunca.