Solicitar la anulación de un envío a FACe
Solicita la anulación (4200) de un envío a FACe con un `reason` obligatorio. Solo se permite mientras el envío está en un estado anulable (`submitted`, `registered_rcf`, `accounted`); en caso contrario devuelve 422 `face_submission_not_cancellable`. El envío pasa a `cancellation_requested` hasta que FACe confirma.
En: header
Parámetros de ruta
Cuerpo de la petición
application/json
Definiciones de TypeScript
Usa el tipo request body en TypeScript.
Cuerpo de la respuesta
application/json
application/json
application/json
application/json
application/json
application/json
application/json
{
"data": {
"id": "01972f4e-9c2b-7d3a-8e5f-1a2b3c4d5e6f",
"object": "face_submission",
"invoice_id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8d01",
"status": "cancellation_requested",
"registry_number": "202600123456",
"dir3_accounting_office": "E04921301",
"dir3_managing_body": "E04921302",
"dir3_processing_unit": "E04921303",
"error_code": null,
"error_message": null,
"status_updated_at": "2026-06-12T09:00:00+00:00",
"last_polled_at": "2026-06-12T08:15:00+00:00",
"created_at": "2026-06-11T10:30:00+00:00"
}
}{
"error": {
"type": "authentication_error",
"code": "missing_api_key",
"message": "No se ha proporcionado una API key válida en el header Authorization.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#missing_api_key",
"request_id": "req_01HKQS5N8VR7QXJ9K3T6BWPMZA"
}
}{
"error": {
"type": "authorization_error",
"code": "insufficient_scope",
"message": "Esta API key no tiene el scope requerido para esta operación.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#insufficient_scope",
"request_id": "req_01HKQS5NBC3P8M1KX4V7SLNHQD"
}
}{
"error": {
"type": "idempotency_error",
"code": "idempotency_key_reused",
"message": "La cabecera `Idempotency-Key` ya se usó con un body distinto. Usa una clave nueva o reenvía exactamente el mismo body.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#idempotency_key_reused",
"request_id": "req_01HKQS5NHT9A4U7R2E3F8GZWTJ"
}
}{
"error": {
"type": "invalid_request_error",
"code": "parameter_invalid",
"message": "El campo `name` es obligatorio y no puede estar vacío.",
"param": "name",
"doc_url": "https://docs.factuarea.com/guides/errors#parameter_invalid",
"request_id": "req_01HKQS5NGS8Z3T6Q1D2E7FYVSI"
}
}{
"error": {
"type": "rate_limit_error",
"code": "rate_limit_exceeded",
"message": "Has excedido el rate limit de 60 peticiones por minuto. Reintenta tras 30 segundos.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#rate_limit_exceeded",
"request_id": "req_01HKQS5NKW1C6W9T4G5H0JBZVL"
}
}{
"error": {
"type": "api_error",
"code": "internal_error",
"message": "Ha ocurrido un error inesperado. Si persiste, contacta con soporte adjuntando el request_id.",
"param": null,
"doc_url": "https://docs.factuarea.com/guides/errors#internal_error",
"request_id": "req_01HKQS5NLX2D7X0U5H6J1KCAWM"
}
}Obtener estadísticas de VeriFactu
KPIs agregados de tus registros VeriFactu: recuento total, recuentos por estado (pending, submitted, accepted, rejected, error), desglose por tipo de registro y de factura, y fecha de la última transmisión. Acepta los filtros opcionales `date_from`, `date_to` y `environment`. Se devuelve como `{ "data": VeriFactuStats }`.
Obtener un envío a FACe
Obtiene un envío a FACe por su `id` (UUID). El campo `status` refleja el último estado de tramitación conocido en FACe (`submitted`, `registered_rcf`, `accounted`, `paid`, `rejected`, `cancellation_requested`, `cancelled`, `error`) — el sistema consulta FACe periódicamente, así que un GET normal es la forma de seguir el progreso (no hay endpoint de refresco en v1).