WhatsApp ATOM Buttons

Boton de WhatsApp con tracking WCI integrado. Un script tag, cero dependencias, inmune a adblockers.

Demo en vivo

Los botones de abajo son el widget real corriendo en esta pagina, montado con el mismo loader.js que se instala en un sitio cliente. Abajo a la derecha esta el flotante.

Variante inline, tamanos s / m / l / xl

Sin animacion (data-animated="false") y con label propio

Son botones reales: un clic abre WhatsApp con el mensaje pre-llenado y genera un lead atribuido en AtomChat. Pasa el cursor por encima para ver la animacion del icono.

Instalacion

<script
  src="https://atom-whatsapp-buttons.vercel.app/v1/loader.js"
  data-company-token="TOKEN"
  data-phone="PHONE"
  data-variant="pill"></script>

Numeros por idioma

Un solo snippet puede rutear a numeros distintos segun el mercado de cada pagina.

data-phone="5215535150142"      <!-- fallback -->
data-phone-es-co="573001234567"
data-phone-pt="5511999999999"
data-phone-en="14155550100"
#OrigenGana sobre
1data-phone del propio botontodo
2data-phone-es-co (region)idioma y fallback
3data-phone-es (idioma)fallback
4data-phone global

Los pasos 2 y 3 solo aplican si la pagina declara su idioma, con <html lang>, un prefijo en la URL o data-lang. Sin declaracion se usa el fallback global: preferimos un numero conocido antes que adivinar el mercado. Si nada resuelve un numero valido, el boton no se renderiza.

Versionado

El major va en la URL. /v1/ recibe mejoras para siempre y nunca cambia de forma incompatible; un cambio que rompa contratos sale en /v2/. El loader.js se revalida cada 5 minutos y apunta a assets con hash cacheados como inmutables: se despliega una version nueva y todos los sitios la reciben sin editar su HTML.

CSP

script-src 'self' atom-whatsapp-buttons.vercel.app;
style-src 'self' atom-whatsapp-buttons.vercel.app;
connect-src 'self' api.atomchat.io atom-whatsapp-buttons.vercel.app;