RevenueCat Web Billing
Haz seguimiento de las comisiones de las compras web con RevenueCat Web Billing, gestionando la facturación directamente a través de la plataforma web de RevenueCat.
Cuando activas el seguimiento de RevenueCat Web Billing, puedes atribuir compras web a afiliados pasando parámetros UTM, ya sea como metadatos de la compra a través del Web SDK o como parámetros de consulta en un Web Purchase Link alojado.
Qué puedes rastrear
Una vez configurado, Insert Affiliate rastrea automáticamente:
- Compras iniciales de suscripciones
- Renovaciones de suscripciones
- Compras únicas, incluidos los productos de por vida y otros productos no renovables (un
NON_RENEWING_PURCHASEen RevenueCat, un pago único en Stripe) - Reembolsos, que revierten automáticamente la comisión del afiliado
- Compras realizadas a través del Web SDK y a través de los Web Purchase Links alojados
Compras únicas y de por vida
Las compras únicas se rastrean, se muestran y se pagan exactamente igual que las compras de suscripciones.
La atribución de Web Billing llega a Insert Affiliate a través de Stripe Connect y no a través del webhook de RevenueCat, por lo que lo que leemos es el pago subyacente de Stripe. Un pago único se registra como una compra inicial, y tu configuración de comisiones, los totales de tu panel y tus pagos a afiliados lo tratan de la misma forma que tratan una suscripción. Un reembolso de ese pago también revierte la comisión de la misma manera.
Requisitos previos
Antes de configurar el seguimiento de Insert Affiliate, debes tener:
- RevenueCat Web Billing configurado con Stripe
- Stripe Connect configurado en tu panel de Insert Affiliate, usando la misma cuenta de Stripe a la que está conectado RevenueCat
Si vas a crear tu propio checkout con el Web SDK, también necesitas:
- RevenueCat Web SDK instalado y configurado
- Insert Affiliate SDK inicializado en tu página
Si, en cambio, vas a enviar a los clientes a un Web Purchase Link alojado, no necesitas ninguno de los dos SDK. Basta con añadir los parámetros UTM al enlace.
Configuración del webhook de RevenueCat
Importante: Al configurar tu webhook de RevenueCat para enviar eventos a Insert Affiliate, debes enviar solo eventos de App Store y Google Play Store, no eventos de Stripe ni de Web Billing.
Como Insert Affiliate recibe los eventos de Stripe directamente a través de Stripe Connect (configurado en el Paso 1 más abajo), enviar eventos del webhook de RevenueCat para transacciones de Stripe/Web Billing provocaría un seguimiento duplicado de las transacciones.
Para configurar tu webhook de RevenueCat:
- Ve a tu panel de RevenueCat → Project Settings → Integrations → Webhooks
- Al configurar el webhook de Insert Affiliate, configúralo para enviar eventos solo de:
- App Store (iOS)
- Google Play Store (Android)
- No incluyas eventos de Stripe ni de Web Billing en este webhook
Esto garantiza una atribución limpia: las transacciones móviles se rastrean mediante los webhooks de RevenueCat, mientras que las transacciones web se rastrean mediante Stripe Connect.
Guía de configuración
Paso 1: Conecta tu cuenta de Stripe mediante Stripe Connect
Como RevenueCat Web Billing usa Stripe internamente, debes conectar tu cuenta de Stripe a Insert Affiliate:
- Ve a Configuración → Stripe Connect en la pestaña Pagos y Cobros
- Haz clic en "Conectar con Stripe"
- Completa el proceso de incorporación de Stripe:
- Inicia sesión en tu cuenta de Stripe existente (la misma que está conectada a RevenueCat)
- Proporciona la información comercial requerida
- Envía los documentos de verificación (si se solicitan)
- Se te redirigirá de nuevo a Insert Affiliate cuando termines
Indicadores de estado:
- Activa: Tu cuenta de Stripe está totalmente conectada y lista
- Restringida: Se necesita información adicional: haz clic en "Continuar incorporación"
- Pendiente: Documentos en revisión (normalmente de 1 a 2 días hábiles)
✅ Una vez conectada tu cuenta de Stripe, Insert Affiliate recibirá automáticamente los eventos de Stripe de las transacciones de RevenueCat.
Implementación: integración del SDK
Paso 1: Instala el SDK de Insert Affiliate
Añade el SDK de Insert Affiliate a tu aplicación web:
npm install insert-affiliate-js-sdk
Paso 2: Inicializa ambos SDK
Inicializa tanto el SDK de Insert Affiliate como el RevenueCat Web SDK:
import { InsertAffiliate } from 'insert-affiliate-js-sdk';
import { Purchases } from '@revenuecat/purchases-js';
// Initialize Insert Affiliate SDK
await InsertAffiliate.initialize('your_company_code');
// Initialize RevenueCat Web SDK
const purchases = Purchases.configure('your_revenuecat_web_api_key');
Paso 3: Pasa los datos del afiliado durante la compra
Antes de realizar una compra, obtén el identificador del afiliado y el ID de la empresa, y luego pásalos como parámetros UTM en los metadatos de la compra:
// Get the current affiliate identifier and company ID
// Use ignoreTimeout: true to get the identifier even if attribution window expired
const affiliateId = await InsertAffiliate.returnInsertAffiliateIdentifier(true);
const companyId = await InsertAffiliate.returnCompanyId();
console.log('Affiliate ID:', affiliateId || 'none');
console.log('Company ID:', companyId || 'none');
// Prepare metadata with UTM parameters for RevenueCat Web Billing
const metadata: Record<string, string> = {};
if (affiliateId && affiliateId !== 'none') {
metadata.utm_source = 'insertAffiliate';
metadata.utm_medium = companyId || 'none';
metadata.utm_campaign = affiliateId;
}
console.log('Purchase metadata:', JSON.stringify(metadata, null, 2));
// Get offerings and select a package
const offerings = await purchases.getOfferings();
const selectedPackage = offerings.current?.availablePackages[0];
if (!selectedPackage) {
console.error('No packages available');
return;
}
// Make the purchase with metadata
const { customerInfo } = await purchases.purchase({
rcPackage: selectedPackage,
metadata: metadata,
});
console.log('Purchase successful!');
console.log('Active entitlements:', Object.keys(customerInfo.entitlements.active));
Parámetros UTM obligatorios
Los siguientes parámetros UTM son obligatorios para una atribución correcta del afiliado:
utm_source: Siempre con el valor'insertAffiliate'para identificar las conversiones de Insert Affiliateutm_medium: El ID de tu empresa en Insert Affiliateutm_campaign: El identificador del afiliado (código corto)
Notas importantes:
- Llama siempre a
returnInsertAffiliateIdentifier()yreturnCompanyId()antes de iniciar la compra - Incluye los parámetros UTM en los metadatos solo si existe un identificador de afiliado
- Los metadatos se enviarán con la compra y estarán disponibles en los eventos del webhook de RevenueCat
RevenueCat Web Purchase Links
Si usas RevenueCat Web Purchase Links para campañas online (como email marketing, redes sociales o promociones de afiliados), debes añadir parámetros UTM para garantizar un seguimiento correcto de los afiliados.
Importante: Esto también se aplica si usas RevenueCat Paywalls en tu app móvil con un flujo de app a web. La función nativa Paywalls de RevenueCat no permite pasar metadatos personalizados en plataformas móviles, por lo que debes usar uno de estos enfoques:
- Redirigir a Web Purchase Links - En lugar de usar la interfaz de Paywall de RevenueCat, dirige a los usuarios a un Web Purchase Link con los parámetros UTM añadidos (enfoque recomendado)
- Crear un paywall personalizado - Crea tu propia interfaz de paywall que obtenga las offerings y llame directamente al método de compra con los metadatos
Cómo funciona
Los RevenueCat Web Purchase Links son páginas de pago alojadas que te permiten vender suscripciones y productos únicos sin crear tu propio flujo de checkout. Para hacer seguimiento de la atribución de afiliados, añade parámetros UTM a estos enlaces.
Esta vía no necesita ningún SDK, ni en la web ni en tu app. Sea lo que sea lo que genere el enlace, ya sea un sitio web, una app de escritorio o un email, basta con añadir los tres parámetros para la atribución. Esto la convierte en la opción más sencilla para plataformas que nuestros SDK no cubren, como una app de macOS o de escritorio.
Parámetros UTM obligatorios
utm_source: Siempre con el valorinsertAffiliateutm_medium: El ID de tu empresa en Insert Affiliateutm_campaign: El código corto del afiliado
Ejemplo
Si tu RevenueCat Web Purchase Link es:
https://pay.rev.cat/sandbox/viqxbcoudyfaeaae/
Debes añadir los parámetros UTM:
?utm_source=insertAffiliate&utm_medium={insertAffiliateCompanyId}&utm_campaign={affiliateShortCode}
Ejemplo completo con parámetros
https://pay.rev.cat/sandbox/viqxbcoudyfaeaxa/?utm_source=insertAffiliate&utm_medium=12345&utm_campaign=AFF123
Donde:
utm_source=insertAffiliate- Identifica esto como una conversión de Insert Affiliateutm_medium=12345- El ID único de tu empresa en Insert Affiliateutm_campaign=AFF123- El código corto del afiliado
Cómo obtener el ID de tu empresa
Puedes encontrar el ID de tu empresa en Insert Affiliate en la configuración de tu panel.
Cómo obtener el identificador del afiliado
El identificador del afiliado (código corto) puede proceder de varias fuentes:
- Deep linking: Cuando un usuario hace clic en un enlace de afiliado, captura el identificador a través de tu plataforma de deep linking
- Código corto: Los usuarios pueden introducir o aplicar manualmente un código corto de afiliado
- Parámetros de URL: El SDK los detecta automáticamente
Ver la documentación del JS SDK →
Plataformas de deep linking
¿Puedo usar RevenueCat Web Purchase Links?
Aunque es posible usar RevenueCat Web Purchase Links como el deep link que proporcionas a tus afiliados, no lo recomendamos, ya que hacerlo provocará que SOLO se rastreen las transacciones web, no las compras dentro de la app.
Esta limitación se debe a la forma en que los enlaces de pago de RevenueCat gestionan el paso de los parámetros utm_source, utm_medium y utm_campaign a la app al canjearlos mediante los enlaces de canje de RevenueCat.
Enfoque recomendado:
Si quieres usar RevenueCat Web Purchase Links para tus afiliados, debes:
-
Seleccionar "Enlaces de Compra Web de RevenueCat" en la configuración de Insert Affiliate para rastrear las ventas web

Haz clic para ver a tamaño completo
-
Implementar códigos cortos como mecanismo alternativo dentro de tu app móvil
-
Pedir a los usuarios dentro de tu app que indiquen qué afiliado se la recomendó
-
Aplicar la atribución de afiliado a las futuras compras dentro de la app según su respuesta
Este enfoque híbrido garantiza un seguimiento completo tanto de las compras web (mediante los parámetros UTM del Web Purchase Link) como de las compras dentro de la app (mediante códigos cortos).
Cuándo usar este enfoque:
Usa RevenueCat Web Purchase Links como tu plataforma de deep linking solo si te parece aceptable la limitación de que los enlaces de canje no atribuirán automáticamente las compras dentro de la app a los afiliados. El código corto como alternativa es esencial para mantener una atribución correcta de las transacciones móviles.
Probar tu configuración
Probar la integración del SDK
- Conecta tu cuenta de Stripe mediante Stripe Connect (pestaña Pagos y Cobros)
- Inicializa el SDK de Insert Affiliate en tu página
- Inicializa el RevenueCat Web SDK
- Realiza una compra de prueba con parámetros UTM en los metadatos
- Revisa tu panel de transacciones para confirmar que aparece la transacción
Probar los Web Purchase Links
- Crea un RevenueCat Web Purchase Link
- Añade los parámetros UTM requeridos (utm_source, utm_medium, utm_campaign)
- Haz clic en el enlace y completa una compra de prueba
- Revisa tu panel de transacciones para verificar que la transacción está atribuida
Si vendes un producto único o de por vida, haz esta prueba específicamente con ese producto. Se atribuye a través del mismo pago de Stripe y aparece en el panel como una compra inicial.
Resolución de problemas
Las transacciones no aparecen
Revisa estos problemas comunes:
- Estado de Stripe Connect: Verifica que tu cuenta de Stripe aparece como "Activa" en la configuración (pestaña Pagos y Cobros)
- Parámetros UTM: Confirma que estás pasando los tres parámetros UTM obligatorios (utm_source, utm_medium, utm_campaign)
- Inicialización del SDK: Asegúrate de que el SDK de Insert Affiliate está correctamente inicializado y devuelve valores válidos
- Conexión de RevenueCat con Stripe: Verifica que RevenueCat Web Billing está correctamente conectado a la misma cuenta de Stripe que conectaste mediante Stripe Connect
- Formato de los metadatos: Comprueba que los parámetros UTM se están pasando correctamente en los metadatos de la compra
El SDK no detecta al afiliado
- Configuración del deep link: Verifica que tu plataforma de deep linking está correctamente configurada
- Parámetros de URL: Comprueba que los enlaces de afiliado incluyen el parámetro
insertAffiliatecorrecto - Momento de inicialización del SDK: Asegúrate de que el SDK se inicializa antes de que los usuarios inicien las compras
- Ventana de atribución: Verifica que el identificador del afiliado no ha caducado (usa
ignoreTimeout: truesi es necesario)
Los Web Purchase Links no rastrean
- Formato de los parámetros UTM: Asegúrate de que los parámetros UTM están correctamente codificados para URL
- Escritura de los parámetros: Comprueba que los nombres de los parámetros están bien escritos (utm_source, utm_medium, utm_campaign)
- ID de la empresa: Verifica que estás usando el ID de empresa correcto de Insert Affiliate
- Código corto del afiliado: Confirma que el código corto del afiliado es válido y está activo
Qué pasa después
Una vez configurado:
- Las compras con metadatos UTM crean automáticamente registros de comisión
- Consulta todas las transacciones en tu panel
- Configura las tasas de comisión por afiliado
- Configura los métodos de pago para pagar a tus afiliados
- RevenueCat gestiona la facturación mientras Insert Affiliate hace seguimiento de la atribución
