Guías de instalación
Configurar Flowsery Analytics en un proyecto Laravel
Esta guia cubre como agregar el seguimiento de Flowsery Analytics a tu aplicacion Laravel.
1. Incrustar el script en tu layout
El enfoque mas limpio es colocar el fragmento en tu layout principal de Blade.
- Abre tu archivo de layout -- tipicamente
resources/views/layouts/app.blade.php. - Inserta el fragmento de Flowsery Analytics dentro de
<head>:
HTML
<!DOCTYPE html>
<html>
<head>
<!-- ... other head elements ... -->
<script
defer
data-fl-website-id="{{ config('flowsery.website_id') }}"
src="https://cdn.flowsery.com/main.js"
></script>
</head>
<body>
@yield('content')
</body>
</html>2. Agregar configuracion (opcional)
Para una gestion de configuracion centralizada, crea un archivo de configuracion dedicado:
- Crea
config/flowsery.php:
PHP
<?php
return [
'website_id' => env('FLOWSERY_WEBSITE_ID'),
'domain' => env('FLOWSERY_DOMAIN'),
];- Agrega los valores a tu archivo
.env:
Terminal
FLOWSERY_WEBSITE_ID=flid_******
FLOWSERY_DOMAIN=your_domain.com3. Seguimiento de ingresos del lado del servidor
Conectar tu proveedor de pagos
Abre la configuracion de tu sitio web en Flowsery Analytics y vincula tu cuenta de Stripe o LemonSqueezy.
Pasar metadata durante el checkout
Stripe
Cuando crees una sesion de checkout, reenvía las cookies de Flowsery Analytics en la metadata:
PHP
<?php
use Stripe\Stripe;
use Stripe\Checkout\Session;
Stripe::setApiKey(config('services.stripe.secret'));
$session = Session::create([
'payment_method_types' => ['card'],
'line_items' => [[
'price' => 'price_1234567890',
'quantity' => 1,
]],
'mode' => 'payment',
'success_url' => route('checkout.success'),
'cancel_url' => route('checkout.cancel'),
'metadata' => [
'_fs_vid' => request()->cookie('_fs_vid'),
'_fs_sid' => request()->cookie('_fs_sid')
]
]);
return redirect($session->url);LemonSqueezy
Para LemonSqueezy, incluye las cookies de Flowsery Analytics en el payload de datos personalizados:
PHP
<?php
use Illuminate\Support\Facades\Http;
$response = Http::withHeaders([
'Authorization' => 'Bearer ' . config('services.lemonsqueezy.api_key'),
'Content-Type' => 'application/json'
])->post('https://api.lemonsqueezy.com/v1/checkouts', [
'store_id' => config('services.lemonsqueezy.store_id'),
'variant_id' => 'your_variant_id',
'custom' => [
'_fs_vid' => request()->cookie('_fs_vid'),
'_fs_sid' => request()->cookie('_fs_sid')
]
]);
return redirect($response->json()['data']['attributes']['url']);4. Confirmar que todo funciona
Despues de desplegar:
- Navega a tu sitio en produccion
- Abre tu panel de Flowsery Analytics y busca las visitas entrantes
- Espera un par de minutos para que aparezcan los primeros datos
- Completa una compra de prueba y verifica que la atribucion de ingresos funcione
Para opciones adicionales como seguimiento en localhost, endpoints API personalizados o configuracion entre dominios, consulta la referencia de configuracion del script.