Saltar al contenido principal
Usa la API de Fluz para enviar solicitudes de aprobación para acciones sensibles de la cuenta, listar solicitudes pendientes y aprobarlas o rechazarlas en nombre de los gerentes. Las solicitudes de aprobación están disponibles a través de la API GraphQL del Transactional Graph Service. Cuando se envía una solicitud, Fluz crea un registro de aprobación duradero y notifica a los aprobadores configurados. Si se aprueba, la acción subyacente se ejecuta automáticamente (por ejemplo, comprar una tarjeta de regalo o transferir fondos).

Cómo funciona

  1. Solicitud — Un usuario con el alcance REQUEST_* apropiado llama a una mutación request*. La API valida la entrada y pone la solicitud en cola. La mutación devuelve un messageId, no un approvalId.
  2. Creación — Fluz crea una aprobación pendiente y asigna a los gerentes de cuenta como aprobadores. Tu aplicación recibe un webhook APPROVAL_CREATE con el approvalId.
  3. Lista (opcional) — Los aprobadores con LIST_APPROVALS pueden llamar a approvalRequests para obtener las solicitudes abiertas de la cuenta.
  4. Aprobar o rechazar — Los aprobadores con MANAGE_APPROVALS llaman a approveApprovalRequest o declineApprovalRequest. Al aprobar, Fluz ejecuta la acción solicitada.
  5. Webhook — Tu aplicación recibe APPROVAL_APPROVE o APPROVAL_DECLINE. Si la ejecución falla después de la aprobación, podrías recibir APPROVAL_HANDLER_ERROR.
Las solicitudes se procesan de forma asíncrona. Haz polling a approvalRequests o escucha webhooks para obtener el approvalId después de enviar una solicitud.

Operaciones compartidas

Estas operaciones aplican a todos los tipos de solicitudes de aprobación.

Listar aprobaciones pendientes

approvalRequests Devuelve solicitudes de aprobación abiertas (PENDING) para la cuenta autenticada. Alcance requerido: LIST_APPROVALS

Aprobar una solicitud

approveApprovalRequest Aprueba una solicitud pendiente. Si tiene éxito, Fluz ejecuta la acción asociada con la solicitud (por ejemplo, crear una tarjeta virtual). Alcance requerido: MANAGE_APPROVALS

Rechazar una solicitud

declineApprovalRequest Rechaza una solicitud pendiente. No se ejecuta ninguna acción posterior. Alcance requerido: MANAGE_APPROVALS

Alcances de la aplicación

Los alcances relacionados con aprobaciones deben otorgarse tanto a nivel de aplicación (por Fluz) como a nivel de usuario (mediante consentimiento OAuth o generateUserAccessToken). Consulta Autenticación para saber cómo se otorgan y validan los alcances.

Tipos de solicitud

Cada tipo de solicitud tiene una guía dedicada con campos de entrada, ejemplos e identificadores de webhook.

Webhooks

Configura webhooks en el portal de desarrolladores de Fluz. Los eventos de aprobación usan el mismo mecanismo de entrega que otros webhooks de Fluz. Consulta la Descripción general para desarrolladores para la configuración y verificación.

Carga útil de APPROVAL_CREATE

Usa approvalType y approvalCode juntos para identificar el tipo de solicitud. Cada guía por tipo enumera los valores para esa solicitud.

Carga útil de APPROVAL_APPROVE / APPROVAL_DECLINE

Para rechazos, approvalAction es DECLINE y approvalStatus es DECLINED.

Carga útil de APPROVAL_HANDLER_ERROR

Se envía cuando una solicitud es aprobada pero la acción posterior falla (por ejemplo, saldo insuficiente en el momento de la ejecución).

Autenticación

Las mutaciones de aprobación admiten token Bearer (OAuth de usuario) y Basic Auth (clave de API de la aplicación), según tu patrón de integración. El principal autenticado se convierte en el solicitante. Usa un User Access Token con los alcances requeridos. Consulta la Guía de Autenticación y Autorización.

Manejo de errores

Las mutaciones de solicitud devuelven un RequestApprovalResponse:
En caso de falla:
Las mutaciones de aprobar y rechazar devuelven success: false con un objeto error cuando la acción no puede completarse (por ejemplo, aprobación no encontrada o ya resuelta).