bZapper
API de WhatsApp · hecha en Brasil

La API de WhatsApp
que no se cae.

Envía OTP, notificaciones y automatizaciones por HTTP. Redundancia entre números con failover, webhooks firmados, SDKs en varios lenguajes y playground. Empieza en minutos con el plan Free — sin tarjeta.

Sin tarjeta · plan Free para siempre · 2 números con redundancia

POST /messages/text 202 Accepted
# envía un mensaje en 1 request
curl https://api.bzapper.com.br/messages/text \
  -H "Authorization: Bearer bz_live_…" \
  -d '{
    "to": "+5551999998888",
    "text": "Tu código es 318204"
  }'

# respuesta
{
  "message_id": "9d41…bbbd",
  "status": "queued",
  "number": "+5551999198087"
}
publicados npm i @bzapper/client pip install bzapper composer require bzapper/bzapper
99,9%
uptime objetivo
7
SDKs oficiales
< 10 min
para integrar
RGPD
opt-out automático
Cómo funciona

Del primer número al webhook en tres pasos

Conecta un número, llama a la API, recibe los eventos. Integración en minutos.

01

Conecta un número

Conecta desde el panel. La redundancia entre números se activa sola.

02

Llama a la API

Un POST y el mensaje entra en la cola, con control de ritmo por número.

03

Recibe webhooks

Entregado, leído, respondido, número caído — todo firmado y en tiempo real.

Funciones

Todo lo que un producto serio necesita

De la redundancia entre números al OTP seguro, de los webhooks a los SDKs — pensado para producción.

Redundancia multinúmero

Varios números por proyecto, con failover automático y monitoreo de salud. Uno se cae, el tráfico sigue.

OTP seguro

Código en un mensaje aparte, nunca persistido ni mostrado — ni en el historial, ni en la bandeja.

Webhooks firmados

Eventos en tiempo real con HMAC-SHA256, retry y dedup. Relay local estilo `stripe listen`.

SDKs multilenguaje

Node, Python, PHP, .NET (C#), Java, Go y Ruby — alineados con OpenAPI y probados por la misma suite de conformidad. Copia, pega y ejecuta.

Bandeja unificada

Conversaciones unificadas por contacto incluso cuando cambia el número de salida. Eco propio y contexto de grupo.

Medios privados

Archivos en bucket privado, descargados por URL prefirmada — el cliente descarga directo, sin pasar por tu API.

Proyectos y multiusuario

Aísla entornos por proyecto, invita al equipo, controla por clave y alcance.

Playground de API

Prueba cualquier endpoint e inspecciona webhooks en vivo, directo desde el panel.

Solo en bZapper

Lo que nadie más entrega

Esto no es una lista de funciones: es lo que no encuentras en ningún otro gateway de WhatsApp. Cada punto de abajo es un endpoint real, en producción, cubierto por los 7 SDKs.

el corazón

Números que se turnan solos

Varios números por proyecto con failover automático, monitoreo de salud y afinidad de conversación: tu cliente sigue hablando con el mismo remitente aunque el tráfico cambie de número por debajo.

inédito

Piloto anti-ban en las campañas

Ritmo con variación humana, tope por número, ventana horaria, rotación, calentamiento gradual y pausa automática ante la primera señal de bloqueo. Un especialista anti-ban dentro del producto.

solo aquí

Un widget que incrustas en TU producto

Una línea de HTML y tus clientes conectan, desconectan y siguen sus propios números dentro de tu sistema. Tú no construyes ninguna pantalla.

solo aquí

Connect para software socio

Tu cliente crea la cuenta, contrata el Pro y conecta WhatsApp sin salir de tu pantalla — y tu backend recibe su API key. Tú no tocas el cobro.

inédito

Idempotency-Key de verdad

¿Repetiste el POST por un timeout o un retry? El mensaje sale una sola vez y recibes la misma respuesta. El estándar que consagró Stripe, inexistente en los demás gateways de WhatsApp.

raro

Editar y revocar después de enviar

¿Error en el texto ya entregado? PATCH lo corrige. ¿Se lo enviaste a quien no debías? DELETE lo borra para todos — todo por API, sin abrir el celular.

ahorra

Revisa la base antes de gastar envíos

Un POST te dice qué números de tu lista tienen WhatsApp de verdad. Limpias la base antes de la campaña en vez de descubrirlo quemando la reputación de tu número.

raro

Presencia y llamadas por API

“Escribiendo…” y “grabando audio…” de verdad, también en grupos — tu bot deja de parecer un robot. ¿Y una llamada entrante al número? Rechazada automáticamente por API.

inédito

Error con código estable en 6 idiomas

Cada error trae un código neutro que nunca cambia (decides por él) y un mensaje ya traducido para mostrar al usuario final. Nunca más parsear cadenas de error.

inédito

La API avisa a tu integración

Cuando algo cambia, bZapper dispara un aviso segmentado por SDK, por versión y por los recursos que realmente usas — en el panel y en la propia API. No te enteras rompiéndote.

solo aquí

IP propia por número

Cada número puede salir por un proxy dedicado. Aislamiento de red real entre tus clientes o entornos — no es una caja compartida con todo el mundo.

solo aquí

Una identidad en todos los números

Define el recado y la identidad del proyecto una vez y aplícala a TODOS los números conectados en un único POST. Tu marca igual en cada número, sin trabajo manual.

7 SDKs oficiales, generados de la misma spec

Node, Python, PHP, .NET (C#), Java, Go y Ruby — todos alineados al mismo OpenAPI y aprobados por la misma suite de conformidad en cada release. Ningún competidor se acerca.

Ver todo en la documentación
Todo lo que hace bZapper

Una sola API REST. Todo WhatsApp.

Del OTP a los webhooks firmados, de los grupos a la bandeja unificada — cada capacidad de abajo es un endpoint real, cubierto por los 7 SDKs.

13 tipos de mensaje
TextoImagenVídeoDocumentoAudio / vozStickerUbicaciónContacto / vCardEncuestaReacciónBotonesListaOTP

Mensajería

  • 13 tipos en una sola API REST
  • Reenviar, responder (citar) y mencionar
  • Envío programado con scheduled_at
  • OTP en mensaje aparte, nunca persistido

Consentimiento y cumplimiento

  • Opt-out automático por palabra clave
  • Registro de consentimiento por contacto
  • Bloqueo y supresión vía API
  • Medios privados con URL prefirmada

Contactos (CRM)

  • Perfil completo: documento y dirección
  • Etiquetas, grupos y correlación automática
  • Filtros avanzados + historial y notas
  • Opt-out, bloqueo y opt-in

Conversaciones e inbox

  • Historial unificado por contacto
  • Archivar, fijar, silenciar y marcar leído
  • Etiquetas de conversación
  • Contexto de grupo y eco propio

Grupos de WhatsApp

  • Crear y administrar grupos
  • Participantes: añadir, promover, quitar
  • Enlace de invitación y unirse por código
  • Aprobar solicitudes de ingreso

Números e instancias

  • Conectar por QR o código
  • Perfil white-label por número
  • Privacidad por número
  • Failover con monitoreo de salud

Webhooks y tiempo real

  • Webhooks firmados con HMAC-SHA256
  • Retry, dedup y entregas auditables
  • Stream SSE en vivo (/stream)
  • Relay local estilo stripe listen

Widget integrable

  • Modo flotante o embebido
  • Tus clientes conectan números
  • Mini-panel de uso
  • Clave pública bloqueada por origen

Plataforma y dev

  • SDKs en 7 lenguajes + OpenAPI
  • Playground de API en el panel
  • Planes Free/Pro + add-ons
  • Uso, métricas y 6 idiomas

Cada elemento de arriba corresponde a un endpoint real de la API — sin vaporware. Explóralos todos en el Playground.

Hecho para desarrolladores

Copia, pega, ejecuta.

SDKs oficiales alineados con OpenAPI y probados por la misma suite de conformidad en Node, Python, PHP, .NET (C#), Java, Go y Ruby. Webhooks firmados con HMAC, retry y dedup. Relay local estilo stripe listen para probar en tu localhost.

Ya publicados en npm, PyPI, Packagist y Go
$ npm install @bzapper/client $ pip install bzapper $ composer require bzapper/bzapper $ go get github.com/bernisoftware/bzapper-go $ br.com.bernisoftware:bzapper (Maven) $ dotnet add package Bzapper $ gem install bzapper

Eventos de webhook

message.sentmessage.deliveredmessage.readmessage.receivedinstance.connectedinstance.disconnectedinstance.bannedgroup.participant_added
# enviar un OTP
curl https://api.bzapper.com.br/messages/otp \
  -H "Authorization: Bearer bz_live_…" \
  -d '{"to":"+5551999998888","code":"318204"}'
// npm install @bzapper/client
import { Bzapper } from '@bzapper/client';

const bz = new Bzapper({ apiKey: 'bz_live_…' });
await bz.sendOTP({ to: '+5551999998888', code: '318204' });
# pip install bzapper
from bzapper import Client

bz = Client("bz_live_…")
bz.send_otp("+5551999998888", code="318204")
// composer require bzapper/bzapper
$bz = new Client('bz_live_…');
$bz->sendOtp('+5551999998888', '318204');
// go get github.com/bernisoftware/bzapper-go
import bzapper "github.com/bernisoftware/bzapper-go"

bz := bzapper.NewClient("bz_live_…")
bz.SendOTP("+5551999998888", "318204")
// br.com.bernisoftware:bzapper
var bz = new BzapperClient("bz_live_…");
bz.sendOtp("+5551999998888", "318204");
// dotnet add package Bzapper
using Bzapper;

using var bz = new BzapperClient("bz_live_…");
var msg = await bz.SendTextAsync(new SendText { To = "+5511999999999", Body = "Olá do bZapper!" });
# gem install bzapper
require "bzapper"

client = Bzapper::Client.new("bz_live_…")
client.messages.send_text(to: "+5511999999999", body: "Olá do bZapper!")
Widget integrable · nuestra ventaja

Pon la gestión de números dentro de tu producto

Un widget standalone que integras en tu propio sistema. Tus clientes conectan, desconectan y siguen los números del proyecto — sin que construyas ninguna pantalla. Una línea de código.

Números del proyecto

Carga automáticamente los números conectados del proyecto vinculado a la clave. Cada uno con estado en vivo.

Conectar por QR

El cliente escanea el QR y conecta un número nuevo allí mismo — agregar número (si el plan lo permite) o desconectar, todo en el widget.

Mini panel

Uso y consumo del proyecto a la vista: mensajes, números y storage del período. La parte financiera queda en el panel.

Seguro por origen

La clave wgt_ es pública, pero bloqueada por una allowlist de orígenes (CORS). Nunca expone tu API key real.

Flotante (plug-and-play)

Una burbuja en la esquina de la pantalla. Solo pega el <script> con tu clave — se abre con un clic.

Embedded (inline)

Renderiza <bzapper-widget> donde quieras en tu página, como un bloque nativo de tu panel.

Modo flotante — una línea en tu HTML:

index.html
<!-- pega antes de </body> -->
<script src="https://widget.bzapper.com.br/v1/widget.js"
        data-key="wgt_sua_chave" async></script>

La clave wgt_ es pública (va en el HTML) y queda bloqueada por una allowlist de orígenes que configuras en el panel. Tu API key real nunca aparece. La parte financiera (planes y facturas) queda en el panel — el widget solo gestiona conexiones.

bZapper Connect · para software socio

Ofrece WhatsApp dentro de tu software

Tu cliente contrata bZapper Pro y conecta su número sin salir de tu producto. Recibes la API key que él autorizó y empiezas a enviar y recibir mensajes al instante.

  1. 1

    Cuenta en un clic

    El componente abre con los datos que tu producto ya tiene. Sin contraseña, sin captcha, sin confirmar correo.

  2. 2

    Suscripción Pro

    Tarjeta o Pix, ahí mismo. El cliente paga directo a bZapper — tú no tocas la facturación.

  3. 3

    WhatsApp conectado

    Código QR o código de vinculación, con estado en vivo. Al final, tu backend recibe la API key.

Una línea en el front

Modal o inline, en Shadow DOM: no choca con el CSS de tu producto.

Un webhook para todos

Mensajes y estado de todos tus clientes en un solo endpoint, con el id del cliente en tu sistema.

Suspensión automática

Si el Pro del cliente queda sin pagar, la key responde 402 y vuelve sola cuando paga.

En los 7 SDKs

Node, Python, PHP, .NET (C#), Java, Go y Ruby ya incluyen el cliente de socio.

Lo que tu producto necesita escribir:

app.js
// 1. tu backend abre la sesión con el secret de socio
const { session_token } = await api.post('/bzapper/session')

// 2. el cliente contrata y conecta sin salir de tu pantalla
BzapperConnect.open({
  session: session_token,
  onComplete: ({ code }) => api.post('/bzapper/exchange', { code }),
})

// 3. tu backend cambia el code por la API key del cliente
// → { api_key: "bz_live_…", status: "active" }

El secret de socio y la API key quedan solo en tu backend. El navegador recibe un ticket de 30 minutos, válido únicamente en tus dominios. La key de socio opera WhatsApp, pero no toca el plan, los usuarios ni la facturación del cliente.

Fiabilidad · nuestro diferencial

WhatsApp por API, sin interrupción

La entrega es ingeniería. Cada número del proyecto tiene límites propios de volumen, control de ritmo en el envío, monitoreo continuo de salud y alertas en tiempo real. Cuando un número se cae, el tráfico sigue por los otros — sin que hagas nada.

  • Reparto de carga entre los números del proyecto
  • Aumento gradual de volumen en números recién conectados
  • Conversaciones unificadas por contacto, aun cambiando de número
  • Alertas en tiempo real cuando un número se cae
Números del proyecto 3 números · salud media 68
+55 51 99919-8087
Conectado
+55 11 98888-2210
En ramp-up
+55 21 99745-3308
En descanso
Gestión de contactos · CRM

Una base de contactos que trabaja por ti

Cada número que tocas se convierte en un contacto completo — con documento, dirección, etiquetas e historial. Correlacionado solo por proyecto y número, filtrable en segundos y siempre bajo tu registro de consentimiento.

  • Perfil completo

    Nombre, teléfono, email, documento (ID fiscal) y dirección completa — ciudad, estado, código postal y país.

  • Etiquetas y grupos

    Organiza con etiquetas y grupos con sus propios diccionarios. Un contacto puede estar en varios — todo versionado.

  • Correlación automática

    Cada contacto se vincula solo al proyecto y al número por el que habló. Sin alta manual, sin duplicados.

  • Filtros avanzados

    Busca por estado, etiquetas (todas o cualquiera), ciudad, documento, actividad y fechas — desde la API o el panel.

  • Historial y notas

    Una línea de tiempo append-only de cada evento del contacto, más notas internas del equipo. Nada se pierde.

  • Opt-out y bloqueo

    Suprime o bloquea con un POST. El estado pasa a opted_out o blocked y detiene el envío antes de encolar.

Maria Oliveira activo
+55 51 99919-8087
ID fiscal 123.456.789-09 · Porto Alegre · Brasil
clienteplan-prosur
Historial
  • OTP entregado y leído · hace 2 min
  • Vinculado al número +55 51 99919-8087
  • Etiqueta “plan-pro” añadida por ti
  • Opt-in registrado en el registro de consentimiento
Los contactos sin WhatsApp entran como “unreachable” — ves el problema de recepción antes de gastar un envío.

Contactos, etiquetas, grupos y supresiones viven aislados por proyecto — una clave solo ve su propio proyecto.

Ver en la documentación →
Nuevo · Envío programado

Programa el envío para el momento justo

Envía cualquier mensaje con fecha y hora futuras. bZapper lo guarda y lo dispara en el momento exacto — sin cron en tu servidor, sin mantener un proceso activo.

  • Un solo campo

    Agrega scheduled_at a cualquier envío — texto, multimedia, lo que sea. El resto es igual a un envío normal.

  • Número elegido al enviar

    El número sano se elige al enviar, no al programar — nunca cae en un número que quedó offline.

  • Cancela cuando quieras

    Lista y cancela programaciones pendientes en cualquier momento, vía API o panel.

Ejemplo
// programa para dentro de 2 horas
POST /messages/text
{
  "to": "+5511999990000",
  "body": "Bom dia! ☀️",
  "scheduled_at": "2026-07-01T09:00:00Z"
}
Seguridad & LGPD · nuestro compromiso

Tus contactos son tu activo más valioso

Un número baneado y una lista quemada cuestan caro. Por eso proteger tu base no es un extra — es cómo está construido bZapper, del aislamiento por proyecto al registro de consentimiento.

Los tratamos como si fueran nuestros: protegidos, aislados y bajo tu control.

  • Aislamiento por proyecto

    Números, bandeja, claves y supresión viven en proyectos aislados. Una clave solo ve su propio proyecto — nada se filtra entre clientes o entornos.

  • Media privada con presign

    Los archivos de conversación están en un bucket privado y solo se abren con una URL prefirmada de corta duración (24h por defecto). Nada indexable, nada suelto.

  • Opt-out y supresión nativos

    Quien responde PARAR/SAIR/STOP se suprime automáticamente y nunca vuelve a recibir un envío. La block list detiene el envío antes de encolar.

  • Registro de consentimiento

    Cada opt-in y opt-out entra en un registro append-only, fechado y auditable — la prueba de base legal que exige la LGPD.

  • Webhooks firmados

    Cada evento va con firma HMAC-SHA256 y verificación timing-safe. El secreto del webhook queda cifrado en reposo.

  • Secretos cifrados

    Sesiones de WhatsApp cifradas en reposo y el código OTP nunca persistido ni mostrado. Teléfono y correo normalizados en la base de datos.

Opt-out en vivo
PARAR

Contacto suprimido en el proyecto al instante y registrado en el registro de consentimiento. El opt-out por palabra clave además emite el webhook contact.opted_out.

PARAR SAIR STOP unsubscribe

bZapper es el encargado del tratamiento y hace el trabajo pesado de privacidad; la base legal del consentimiento es tu responsabilidad. Trabajamos juntos.

Leer la guía de Privacidad & LGPD →
Precios

Pagas por los números. Mensajes, ilimitados.

Lo que importa es no dejar de entregar — y eso es redundancia entre números. Elige el plan, activa la recurrencia y olvídate de la factura.

🛡️ Redundancia entre números incluida en todos los planes — cuando uno se cae, otro toma el relevo. Es nuestro mayor diferencial.

Free

Prueba la redundancia, sin tarjeta.

R$ 0
  • 2 números (redundancia activa)
  • 250 mensajes/mes
  • 1 proyecto
  • 100 MB de medios
  • 15 días de retención
  • Failover · SDKs · webhooks
Empezar gratis
Recomendado

Pro

Todo ilimitado. Para producción.

R$ 79,90/mes
  • 2 números (redundancia)
  • Mensajes ILIMITADOS
  • 1 proyecto
  • 1 GB de medios
  • 30 días de retención
  • Uptime + alertas · prioridad
Suscribirse a Pro

¿Creciste? Añade al instante — cobro proporcional

Número extra (más redundancia) R$ 39,95/mes
Proyecto extra (aislado) R$ 63,92/mes
+1 GB de medios R$ 7,99/mes
+30 días de retención R$ 7,99/mes
Programación ampliada (hasta 1 año) R$ 11,98/mes

Los add-ons son una fracción de la suscripción Pro. ¿Lo añadiste a mitad de mes? Pagas solo el proporcional hasta la próxima factura.

Arma tu plan

Ajusta los recursos y mira el total — igual que al contratar.

Plan Pro R$ 79,90/mes
Números
2 incluidos en Pro
2
incluido
Proyectos
1 incluido en Pro
1
incluido
GB de medios extra
1 GB incluido en Pro
0
incluido
Retención extra
bloques de +30 días
0
incluido
Programación ampliada
programa hasta 1 año
incluido
Total mensual R$ 79,90/mes

💳 Guarda la tarjeta y activa la renovación automática — acceso sin interrupciones, cero preocupaciones.

Precios en BRL (Brasil). América en USD · resto de regiones en EUR — definidos por tu región.

Casos de uso

Para qué usa la gente bZapper

OTP / 2FA

Códigos de verificación con texto variado y entrega rastreada.

Notificaciones transaccionales

Pedidos, cobros, recordatorios — directo desde tu backend.

Atención centralizada

Varios números, una bandeja, N agentes.

Bots en grupos

Monitorea menciones y adjuntos, responde en el contexto correcto.

Automatización y no-code

Integra con n8n, Make, Zapier vía webhooks y HTTP.

Avisos y recordatorios

Confirmaciones, recordatorios de agenda y avisos operativos de tu sistema.

Preguntas frecuentes

Todo lo que quieres saber

¿Es la API oficial de WhatsApp?

No. bZapper envía con el <strong>protocolo multidispositivo</strong>, con el número conectado desde el panel — así sale hoy cada mensaje y es lo que tú integras. Un carril por la Cloud API oficial de Meta está en desarrollo, sin fecha.

¿Cómo garantizan la entrega?

Cada número tiene límites propios de volumen, control de ritmo en el envío y monitoreo continuo de salud. Cuando uno se cae, los otros toman el relevo y recibes una alerta en tiempo real — y la conversación sigue unificada por contacto.

¿Cuánto cuesta?

Dos planes simples. <strong>Free</strong> (gratis): 2 números con redundancia, 250 mensajes/mes, 1 proyecto, 100 MB y 15 días de retención — para que pruebes la redundancia sin tarjeta. <strong>Pro</strong> (R$ 79,90/mes): 2 números, <strong>mensajes ilimitados</strong>, 1 proyecto, 1 GB y 30 días de retención. ¿Necesitas más? Los add-ons son una fracción de la mensualidad — número extra, proyecto extra, +GB de medios, +retención — y al añadirlos a mitad de mes pagas solo el proporcional hasta la próxima factura. En BRL en Brasil; América en USD, resto de regiones en EUR. Recomendamos guardar la tarjeta y activar la renovación automática: acceso sin interrupciones.

¿En cuánto tiempo integro?

Minutos. Crea la cuenta, genera una API key y usa uno de los SDKs (Node, Python, PHP, .NET, Java, Go, Ruby) o un POST puro. Hay playground y documentación completa.

¿Tienen SDK y webhooks?

Sí — SDKs en 7 lenguajes, alineados con OpenAPI y probados por la misma suite de conformidad, webhooks firmados con HMAC, retry/dedup y un relay local estilo `stripe listen` para probar en localhost.

¿Y la privacidad de los datos?

Los medios de conversación van a un bucket privado con URL prefirmada; el código del OTP nunca se persiste; los secretos se cifran. Retención configurable por cuenta.

Empieza a enviar por WhatsApp en minutos

Crea tu cuenta gratis, genera una API key y haz el primer envío hoy. Sin tarjeta, sin burocracia.