Privacy Policy — Precio en Horas de Trabajo
Esta política describe qué datos maneja la extensión "Precio en Horas de Trabajo". Texto pensado para publicarlo como HTML estático (Gist público, GitHub Pages, sitio simple). Cuando se publica al Chrome Web Store, esta URL es la que va en el campo "Privacy Policy URL".
Última actualización: 2026-05-10
Versión cubierta: 1.0.0 y posteriores
TL;DR
- No recolectamos nada sobre el usuario por defecto.
- Tu sueldo, configuración, sitios visitados se quedan en TU navegador. Nunca salen.
- Sólo enviamos algo cuando vos hacés click manual en "Enviar al desarrollador" desde la página de configuración. Y siempre te mostramos qué se va a enviar antes.
- Sin cookies de tracking, sin Google Analytics, sin Sentry, sin Mixpanel, sin SDK de analytics de ningún tipo.
- Sin cuenta, sin login, sin servidores propios.
Datos que NO se recolectan
La extensión nunca recolecta, almacena en server externo, ni transmite:
- Tu sueldo neto.
- Tus horas trabajadas.
- Tu moneda configurada.
- Tu historial de navegación.
- Los sitios que visitás.
- Cookies de los sitios.
- Información de identificación personal (nombre, email, dirección, teléfono).
- Información financiera (tarjetas, cuentas bancarias).
- Capturas de pantalla, contenido de páginas, screenshots.
No tenemos servidores propios donde se podrían almacenar estos datos. No existe esa infraestructura.
Datos que se transmiten a terceros
1. APIs de tipo de cambio (automático, anónimo)
Para convertir precios entre monedas, la extensión consulta dos APIs públicas:
| Servicio | Endpoint | Cuándo | Qué se envía |
|---|---|---|---|
| open.er-api.com | /v6/latest/<código_moneda> |
Una vez cada 24h, automático | Sólo el código de moneda base (ej. "USD"). Sin info del usuario. |
| dolarapi.com | /v1/dolares/blue |
Sólo si el usuario configura ARS + tipo de cambio blue. Una vez cada 24h. |
Nada del usuario. Sólo el endpoint estático. |
Lo que ven estos servicios: una solicitud HTTP anónima desde la IP del usuario al endpoint. No reciben tu sueldo, ni tu configuración, ni nada que te identifique más allá de tu IP (que ya verían si visitaras esos sitios directamente desde el browser).
Las respuestas (tipos de cambio del día) se cachean localmente en chrome.storage.local por 24h.
2. Envío de reportes al desarrollador (manual, opt-in por click)
Cuando vos hacés click en "Enviar al desarrollador" desde la página de configuración:
Qué se envía:
- Texto del reporte (lo que escribiste en el textarea).
- Versión de la extensión.
- User-Agent del navegador (string técnico estándar, sin info personal).
- Plataforma (Windows / Mac / Linux / etc.).
- Hostname del sitio donde se originó el reporte. Puede ser vacío si reportás desde la página de configuración sin contexto de sitio.
- URL del sitio donde se originó el reporte. Idem.
- Timestamp ISO.
Cómo se envía: vía POST a un Google Form controlado por el desarrollador. Las respuestas se almacenan en una Google Sheet del desarrollador, accesible sólo para diagnóstico.
Características críticas del envío:
- Sólo ocurre cuando vos hacés click manualmente. No hay envío automático.
- No hay reintento automático si falla.
- La extensión te muestra un preview claro de qué datos se van a enviar antes de enviarlos.
- Si nunca hacés click en ese botón, nada se envía nunca.
Datos almacenados localmente
La extensión usa el storage local del navegador para guardar tu configuración. Estos datos nunca salen del dispositivo.
chrome.storage.sync (sincroniza entre tus dispositivos del mismo Chrome account)
| Campo | Para qué |
|---|---|
netSalary |
Tu sueldo neto mensual. |
hoursPerMonth |
Horas trabajadas por mes. |
currency |
Moneda base (USD, EUR, ARS, etc.). |
arsRateType |
Tipo de cambio ARS (oficial / blue). |
globalEnabled |
Si la extensión está activa globalmente. |
thresholdMode, thresholdGreenH, thresholdGreenUnit, etc. |
Configuración del modo umbral. |
displayMode |
"always" / "subtle". |
disabledDomains |
Lista de dominios donde está desactivada. |
chrome.storage.local (sólo este dispositivo)
| Campo | Para qué |
|---|---|
pth_rates |
Cache de tipos de cambio. Datos públicos, no del usuario. |
chrome.storage.session (efímero, se borra al cerrar el browser)
| Campo | Para qué |
|---|---|
pth_report_context |
Hostname/URL del sitio cuando abrís la página de configuración desde el popup. Se borra después de usarlo o al cerrar el browser. |
Permisos solicitados (justificación)
| Permiso | Por qué lo necesitamos |
|---|---|
storage |
Guardar tu configuración localmente. |
alarms |
Programar la actualización diaria de tipos de cambio. |
activeTab |
Mostrarte el dominio del sitio activo en el popup y permitirte desactivar la extensión por sitio. Es la versión más restrictiva — sólo accede a la pestaña activa cuando vos invocás la extensión. |
host_permissions: open.er-api.com/v6/* |
Para fetchear tipos de cambio. |
host_permissions: dolarapi.com/v1/* |
Para fetchear ARS blue (si lo usás). |
host_permissions: docs.google.com/forms/* |
Para enviar reportes al desarrollador (si vos lo decidís). |
content_scripts: <all_urls> |
Para detectar precios en cualquier tienda online que vos visites. La extensión sólo lee el DOM para encontrar precios; nunca envía contenido de los sitios a ningún server. |
Cookies y trackers
La extensión no usa cookies propias, no instala trackers, no integra SDKs de analytics (Google Analytics, Mixpanel, Sentry, Amplitude, FullStory, ninguno).
No accedemos a las cookies de los sitios que visitás. No tenemos ese permiso (cookies no está en el manifest).
Tu derecho a controlar los datos
- Borrar todos los datos: desinstalar la extensión desde
chrome://extensions/borra inmediatamente toda la configuración local. No queda nada en ningún server porque nunca enviamos nada. - Modificar tu configuración: cualquier momento desde la página de configuración.
- Desactivar la extensión por sitio: desde el popup, click en el toggle del dominio.
- Desactivar globalmente: desde el popup, click en "Apagar en todos lados".
- No enviar reportes: simplemente no uses el botón "Enviar al desarrollador". La extensión funciona 100% sin enviar nada.
- Acceder a un reporte enviado: si querés saber qué reporte enviaste y cuándo, mandá un nuevo reporte indicando el texto del original y el desarrollador puede confirmar desde la Sheet asociada al Form.
Auditabilidad
El código de la extensión que se publica al Chrome Web Store es JavaScript sin ofuscar. Cualquier usuario técnico puede:
- Inspeccionarlo desde
chrome://extensions/→ "Detalles" → "Inspeccionar vistas". - Abrir DevTools en la página de configuración y leer el código directamente.
- Ver los archivos del
.crxdesde el directorio de extensiones de Chrome.
No hay nada oculto en el cliente.
Cambios a esta política
Si esta política cambia materialmente:
- Actualizamos la fecha de "Última actualización" arriba.
- Si los cambios afectan el modelo de datos (ej. agregamos un nuevo dato que se envía), notificamos al usuario via la página de configuración.
Contacto
El canal único de contacto con el desarrollador es el botón "Enviar al desarrollador" que aparece en la página de configuración de la extensión instalada. Sirve tanto para:
- Reportar bugs o sitios donde la extensión rompe.
- Sugerir features.
- Preguntar sobre esta política o sobre los datos que recibimos.
- Solicitar el borrado de un reporte previamente enviado.
El desarrollador no opera con un email público de soporte. Esta decisión es deliberada: mantiene un único canal trazable, sin spam, y consistente con el modelo "sin backend propio" del producto.
Resumen legal
Esta extensión opera bajo el principio de minimización de datos: recolectamos lo mínimo posible para que la extensión funcione (sólo tu configuración, sólo en tu dispositivo) y transmitimos lo mínimo posible a terceros (sólo cuando vos lo decidís, y sólo a APIs públicas anónimas). No vendemos datos, no tenemos socios comerciales, no hay monetización por publicidad.