Skip to main content
Requisitos previos: un token Bearer de acceso con el alcance CREATE_SHARE_LINK. La autenticación básica se rechaza. Contacta a tu representante de ventas para habilitar el acceso. Consulta Autenticación.
Qué significan “hosted” / “open-loop”. Un enlace hosted apunta a una página de activación alojada por Fluz. Open-loop significa que la tarjeta virtual resultante es una tarjeta de red (estilo Visa/Mastercard) que se puede gastar en muchos comercios, sujeta a las reglas de tu programa — no una tarjeta de regalo de marca única de circuito cerrado.

Cómo funciona

1

Tú generas enlaces

Llama a generateVCShareLinks con la oferta, el límite de la tarjeta, la cantidad, la fuente de fondos y un método de entrega. Cada enlace representa una tarjeta con su propio límite, financiada desde la cuenta de gasto que especifiques.
2

Fluz crea una solicitud de compartición por enlace

Cada enlace se asigna a una solicitud de compartición (PENDING) y a una URL alojada.
3

El enlace se entrega

Con GENERATE_URL recibes las URL para distribuirlas tú mismo. Con EMAIL o PHONE_NUMBER, Fluz entrega un enlace a cada destinatario por ti.
4

El destinatario activa y reclama la tarjeta

El destinatario abre el enlace y verifica su número de teléfono con un código de un solo uso — sin descargar app ni contraseña. El límite de la tarjeta se descuenta de tu cuenta de gasto en el momento de la reclamación, no cuando se genera el enlace. La tarjeta no se muestra automáticamente al reclamarla; al revelarla se le pide al destinatario que introduzca su PIN o que cree uno si aún no lo ha configurado. Consulta Experiencia del destinatario para el recorrido completo.
El destinatario se convierte en usuario autorizado solo de ese objeto de tarjeta virtual — no obtiene acceso a tu cuenta, saldos ni a ninguna otra tarjeta. Diagrama del flujo de envío de tarjetas

Disponibilidad y alcance

El tipo de objeto de enlace de compartición de tarjeta es VIRTUAL_CARD y el tipo de tarjeta es SINGLE_LOAD.
Tarjetas de regalo: A pesar del encuadre “tarjetas virtuales y tarjetas de regalo” de la iniciativa más amplia, hoy no existe un flujo alojado para reclamar tarjetas de regalo. Los saldos de tarjetas de regalo aparecen en esta área solo como una posible fuente de fondos para tarjetas virtuales alojadas (planificado, aún no habilitado). Documenta y construye únicamente para tarjetas virtuales.

Referencia de operaciones

Hay tres operaciones públicas, todas controladas por el alcance CREATE_SHARE_LINK: Todas las operaciones de Send Cards están en la API GraphQL de Fluz en POST https://<your-fluz-api-host>/api/v1/graphql con un encabezado Authorization: Bearer <access_token>. El token debe incluir el alcance CREATE_SHARE_LINK — sin él, toda operación devuelve “Missing permissions! Please contact your sales rep to get access to generate VC share links.” Crea quantity solicitudes de compartición y devuelve un enlace alojado por cada solicitud.

Campos de entrada

Fuente de fondos. userCashBalanceId (una cuenta de gasto perteneciente a tu cuenta emisora) es la fuente de fondos principal y requerida. Opcionalmente configura usePrepaymentBalance y/o useRewardsBalance en true para permitir que Fluz recurra a tu saldo de prepago o recompensas si la cuenta de gasto no cubre el monto total en el momento de la reclamación. Las cuentas bancarias y tarjetas bancarias no son compatibles como fuentes de fondos.

Identificación del destinatario y entrega (shareMethod)

EXISTING_USER y REGISTER_USER crean la tarjeta virtual como parte de la llamada a generateVCShareLinks, en lugar de aplazar la creación de la tarjeta al momento de la reclamación. Consulta Registrar y Enviar para el flujo completo de EXISTING_USER, incluido cómo registrar primero a un destinatario con registerUser.

Reglas de validación

  • cardLimit debe ser un número entero y al menos el mínimo del programa.
  • offerId debe ser un UUID v4 válido para una oferta activa cuyo comercio sea compartible.
  • quantity debe ser un número entero.
  • El campo de destinatario que coincide con shareMethod (recipientListEmail, recipientListPhone, recipientUserIds o recipientRegistrations) debe tener una longitud igual a quantity. Las discrepancias devuelven un error claro y no crean registros.
  • recipientUserIds y recipientRegistrations son mutuamente excluyentes entre sí y con los campos de listas de entrega.
  • Cada ID en recipientUserIds debe ser un usuario de Fluz válido y existente.
  • userCashBalanceId es requerido y debe ser un UUID v4 válido perteneciente a la cuenta del emisor. usePrepaymentBalance y useRewardsBalance son fuentes de respaldo opcionales y pueden habilitarse junto con él.
  • Tipos de tarjeta inválidos o entradas mal formadas devuelven errores claros y no crean registros.

Ejemplos

Para EXISTING_USER, registra primero al destinatario (o usa directamente el ID de un usuario existente) — consulta Registrar y Enviar para el recorrido completo, incluida la llamada registerUser y el manejo de la respuesta.

Respuesta

shareLinks es un arreglo de URL alojadas, una por quantity, cada una con la forma https://fluz.app/virtual-prepaid-card/{share_request_id}.
La respuesta devuelve solo las URL. Para recuperar el ID del lote y los IDs visibles de los enlaces que acabas de crear (necesarios para listar y desactivar), usa getVCShareLinks filtrado por estado.
Lista los enlaces de compartición generados previamente para que puedas inspeccionar el estado, los destinatarios, el vencimiento y la tarjeta emitida.

Campos de entrada

Flujo recomendado. En la primera llamada, filtra solo por shareObjectStatuses. La respuesta te da shareRequestBatchId y shareRequestDisplayId; úsalos para filtrar con precisión en llamadas posteriores (y para desactivar).

Ejemplos

Desactiva (expira) enlaces que generaste — por ejemplo, si un lote se envió por error o necesitas revocar enlaces no reclamados. Desactivar un enlace lo establece en EXPIRED; un enlace no reclamado ya no se puede reclamar.

Campos de entrada

Obtén los IDs de lote desde getVCShareLinks.
Devuelve una cadena de confirmación legible, p. ej., "3 share requests successfully deactivated!".
Si un destinatario ya ha reclamado un enlace (estado ISSUED/USED), desactivar el enlace no recupera la tarjeta emitida. Para detener el gasto en una tarjeta ya emitida, usa los controles relevantes del ciclo de vida/congelación de la tarjeta.

Vencimiento y congelación

La fecha de vencimiento del enlace cumple doble función:
  • Vencimiento del enlace — después de esta fecha, un enlace no reclamado ya no se puede reclamar.
  • Fecha de bloqueo/congelación de la tarjeta — para una tarjeta emitida, esta es la fecha de bloqueo (fin de ese día). Después de ella, la tarjeta se congela y no se puede gastar.
  • La expiración de la tarjeta se alinea con el fin del mes de la fecha de congelación (p. ej., una fecha de congelación del 15/6/2026 produce una expiración de tarjeta del 30/6/2026).
Configura la ventana con daysUntilExpiration en el momento de la generación. Si se omite, se usa el valor predeterminado del programa (30 días). Esta fecha se muestra al destinatario (normalmente como una fecha de “Válida hasta”) — consulta Experiencia del destinatario.

Referencia de estados y errores

Estados del objeto de compartición

Para los estados que ve un destinatario cuando un enlace está vencido, revocado o ya reclamado, consulta Errores de enlace visibles para el destinatario.

Errores comunes de la API

Notas y limitaciones

  • La URL devuelta es el destino alojado, no un enlace corto. Internamente, los enlaces también se envuelven con un proveedor de enlaces cortos, pero la API devuelve la URL alojada canónica (/virtual-prepaid-card/{share_request_id}). Distribuye la URL exactamente como se devuelve.
  • userCashBalanceId es efectivamente requerido aunque el esquema lo marque como opcional.
  • Campos ocultos/internos no forman parte de esta API. El tipo de objeto y el tipo de tarjeta son fijos (VIRTUAL_CARD / SINGLE_LOAD). La financiación con cuenta bancaria y tarjeta bancaria aún no está habilitada; no las envíes. usePrepaymentBalance y useRewardsBalance son las únicas fuentes de fondos adicionales compatibles hoy.
  • No se admiten enlaces alojados de tarjetas de regalo. Esta API es solo para tarjetas virtuales.

Próximos pasos

Experiencia del destinatario

Lo que ven tus destinatarios cuando abren un enlace alojado y las reglas que rigen su tarjeta.

Registrar y Enviar

Usa EXISTING_USER para registrar a un destinatario y crear su tarjeta por adelantado, en lugar de al reclamar.

Crear una orden masiva

Emite muchas tarjetas a la vez para su distribución programática.