Qué son
Además de los eventos de plantilla y del aviso de desconexión de canal, el webhook global del workspace puede recibir dos grupos de eventos de cuenta:- Facturación: pago rechazado, pago recuperado, suscripción cancelada, instancia suspendida e instancia liberada por falta de pago.
- Restricción de la cuenta en Meta (
ACCOUNT_RESTRICTION): Meta restringió la cuenta de WhatsApp Business (WABA), registró una infracción o programó su desactivación.
Cómo suscribirse
Incluye los eventos enevents al crear o actualizar el webhook global:
- Solo en el webhook global. El webhook de canal y el webhook por defecto de la instancia rechazan estos eventos con
422. - Solo en el formato
DEFAULT. El webhook global ya esDEFAULT. - Cada evento es independiente. Suscríbete solo a los que uses, junto o no con los eventos de plantilla y el
CHANNEL_DISCONNECTED. - En el panel, suscribirse a un evento de facturación requiere el permiso Ver la facturación (Owner y Manager, consulta Equipo y roles).
- El
PATCHconeventsreemplaza la lista. Para seguir recibiéndolos, envía de nuevo los eventos que ya estaban suscritos.
Eventos de facturación
Qué recibe tu servidor
El cuerpo es el evento:instanceIdslista las instancias cubiertas por la factura. Una factura puede cubrir más de una.invoiceRefidentifica la factura y es el mismo en el fallo y en la recuperación. Con dos facturas fallando en el mismo workspace, indica cuál se pagó.amountes texto decimal ("99.90") ycurrencyes el código ISO 4217 en mayúsculas. En el fallo,amountes el valor pendiente; en la recuperación, el valor pagado. Cuando la recuperación viene del cambio de estado de la suscripción, y no del pago de una factura,amountycurrencyllegannull, y tambiéninvoiceRef, si no hay factura.attemptCountes el número del intento de cobro, ynextAttemptAtes el próximo intento automático, onullcuando no hay otro.
El cuerpo nunca trae datos de la tarjeta, ids del proveedor de pagos, enlace de la factura, correo electrónico ni nombre.
Restricción de la cuenta en Meta (ACCOUNT_RESTRICTION)
Se envía cuando Meta avisa una de estas situaciones en la cuenta de WhatsApp Business (WABA) de tus canales:
La restricción no desconecta el canal y no cambia su estado en Omni Z-API. Cuando Meta desconecta la cuenta de hecho, también llega el aviso de desconexión de canal, uno por canal.
Qué recibe tu servidor
Los bloques
restriction_info, ban_info y violation_info se reenvían como Meta los envía, sin traducción. Los valores posibles, como restriction_type y waba_ban_state, están en la documentación de Meta y pueden cambiar. El objeto event también puede traer otros campos de enrutamiento que no forman parte del contrato: ignora los que no están en esta tabla.Un aviso por workspace
- Una cuenta, un aviso. La restricción es de la cuenta, así que el workspace recibe un aviso con la lista
instances, y no un aviso por canal. - Por número. Si Meta cita números diferentes (por ejemplo, restricciones de llamadas), se envía un aviso por número, cada uno con su
phone_numbery sunotice_id. - Repetición. Un reenvío de Meta puede generar un segundo aviso con el mismo
notice_id. La misma situación avisada de nuevo por Meta en otro momento genera otronotice_id.
Orden y repetición
La entrega es al menos una vez y el orden de llegada no está garantizado (consulta Entrega y reintentos):- descarta las repeticiones por el
id(facturación) o por elnotice_id(restricción); - ordena por el
occurredAt(facturación) o por elmoment(restricción), y no por la hora de llegada.