Saltearse al contenido

Plata cobrada SIN comprobante

POST

El cobro entró pero la emisión falló. Es una alerta operativa, no un estado final.

reintentable: false significa que ningún job lo va a levantar: hay que corregir la causa y llamar a POST /v1/pagos/{id}/facturar.

Lo entrega Host Factura a la url de tu suscripción, no es una ruta de esta API. Respondé 2xx en menos de 10 segundos; cualquier otra cosa dispara el backoff (5 s, 30 s, 5 min, 30 min, 2 h, 12 h y después DEAD).

Envelope del evento, firmado con HMAC-SHA256

Entrega del evento pago.pendiente_facturacion.

object
id
required

UUID v7 del evento. ESTABLE entre reintentos: es la clave de deduplicación del receptor

string format: uuid
tipo
required

Tipo del evento, p. ej. pago.confirmado

string
creadoEn
required

ISO 8601 con offset America/Montevideo

string
cuentaId
required

Cuenta que originó el evento

string format: uuid
sucursalId
required

Sucursal del evento, o null si es de la cuenta entera

string format: uuid
nullable
datos
required
object
pagoId
required
string format: uuid
solicitudId
required
string format: uuid
nullable
monto
required
string
moneda
required
string
intentos
required
integer
reintentable
required

false = no lo va a levantar ningún job: necesita intervención humana

boolean
error
required
string
Ejemplo
{
"id": "0199d1b0-1111-7000-8000-000000000000",
"tipo": "pago.pendiente_facturacion",
"creadoEn": "2026-09-12T10:30:00.000-03:00",
"cuentaId": "0199d1b0-0000-7000-8000-000000000000",
"sucursalId": null,
"datos": {
"pagoId": "9b1c3d4e-5f60-4a7b-8c9d-0e1f2a3b4c5d",
"solicitudId": "8f14e45f-ceea-467a-9f5a-2b1c3d4e5f60",
"monto": "1234.56",
"moneda": "UYU",
"intentos": 3,
"reintentable": false,
"error": "No hay CAE vigente para el tipo 101 serie A"
}
}

Recibido. Cualquier 2xx cierra la entrega; el cuerpo de la respuesta se ignora.

Endpoint retirado. Host Factura NO desuscribe automáticamente: la entrega se reintenta igual y después queda DEAD. Para dejar de recibir, borrá la suscripción con DELETE /v1/webhooks/{id}.