bZapper
API WhatsApp · née au Brésil

L’API WhatsApp
qui ne tombe pas.

Envoyez OTP, notifications et automatisations en HTTP. Redondance entre numéros avec bascule, webhooks signés, SDK en plusieurs langages et un playground. Démarrez en quelques minutes, ne payez que ce que vous utilisez.

Sans carte · plan Free pour toujours · 2 numéros avec redondance

POST /messages/text 202 Accepted
# envoyer un message en 1 requête
curl https://api.bzapper.com.br/messages/text \
  -H "Authorization: Bearer bz_live_…" \
  -d '{
    "to": "+5551999998888",
    "text": "Votre code est 318204"
  }'

# réponse
{
  "message_id": "9d41…bbbd",
  "status": "queued",
  "number": "+5551999198087"
}
publiés npm i @bzapper/client pip install bzapper composer require bzapper/bzapper
99,9 %
objectif uptime
5
SDK officiels
< 10 min
pour intégrer
RGPD
opt-out automatique
Comment ça marche

Du premier numéro au webhook en trois étapes

Connectez un numéro, appelez l’API, recevez les événements. Intégration en minutes.

01

Connectez un numéro

Connectez depuis le tableau de bord. La redondance entre numéros s’active toute seule.

02

Appelez l’API

Un POST et le message entre dans la file, avec un contrôle de rythme par numéro.

03

Recevez des webhooks

Livré, lu, répondu, numéro tombé — tout signé et en temps réel.

Fonctionnalités

Tout ce qu’un produit sérieux exige

De la redondance entre numéros à l’OTP sécurisé, des webhooks aux SDK — pensé pour la production.

Redondance multi-numéros

Plusieurs numéros par projet, avec bascule automatique et surveillance de santé. L’un tombe, le trafic continue.

OTP sécurisé

Code dans un message séparé, jamais persisté ni affiché — ni dans l’historique, ni dans la boîte.

Webhooks signés

Événements en temps réel avec HMAC-SHA256, retry et dedup. Relais local façon `stripe listen`.

SDK multi-langages

Node, Python, PHP, Java et Go — générés depuis OpenAPI. Copiez, collez, exécutez.

Boîte unifiée

Conversations unifiées par contact même lorsque le numéro d’envoi change. Écho propre et contexte de groupe.

Médias privés

Fichiers dans un bucket privé, téléchargés par URL pré-signée — le client télécharge directement, sans passer par votre API.

Projets et multi-utilisateur

Isolez les environnements par projet, invitez l’équipe, contrôlez par clé et scope.

Playground d’API

Testez n’importe quel endpoint et inspectez les webhooks en direct, depuis le tableau de bord.

Tout ce que fait bZapper

Une seule API REST. Tout WhatsApp.

De l’OTP aux webhooks signés, des groupes à la boîte unifiée — chaque capacité ci-dessous est un endpoint réel, couvert par les 5 SDK.

13 types de message
TexteImageVidéoDocumentAudio / voixStickerLocalisationContact / vCardSondageRéactionBoutonsListeOTP

Messagerie

  • 13 types dans une seule API REST
  • Transférer, répondre (citer) et mentionner
  • Envoi programmé avec scheduled_at
  • OTP dans un message séparé, jamais persisté

Consentement et conformité

  • Opt-out automatique par mot-clé
  • Journal de consentement par contact
  • Blocage et suppression via API
  • Médias privés avec URL pré-signée

Contacts (CRM)

  • Profil riche : document et adresse
  • Tags, groupes et corrélation automatique
  • Filtres avancés + historique et notes
  • Opt-out, blocage et opt-in

Conversations et boîte

  • Historique unifié par contact
  • Archiver, épingler, couper le son et marquer lu
  • Étiquettes de conversation
  • Contexte de groupe et écho propre

Groupes WhatsApp

  • Créer et administrer des groupes
  • Participants : ajouter, promouvoir, retirer
  • Lien d’invitation et rejoindre par code
  • Approuver les demandes d’adhésion

Numéros et instances

  • Connecter par QR ou code
  • Profil white-label par numéro
  • Confidentialité par numéro
  • Bascule avec surveillance de santé

Webhooks et temps réel

  • Webhooks signés avec HMAC-SHA256
  • Retry, dedup et livraisons auditables
  • Stream SSE en direct (/stream)
  • Relais local façon stripe listen

Widget intégrable

  • Mode flottant ou embedded
  • Vos clients connectent des numéros
  • Mini tableau de bord d’usage
  • Clé publique verrouillée par origine

Plateforme et dev

  • SDK en 5 langages + OpenAPI
  • Playground d’API dans le panneau
  • Plans Free/Pro + add-ons
  • Usage, métriques et 6 langues

Chaque élément ci-dessus correspond à un endpoint réel de l’API — pas de vaporware. Explorez-les tous dans le Playground.

Pensé pour les développeurs

Copiez, collez, exécutez.

SDK officiels générés depuis OpenAPI en Node, Python, PHP, Java et Go. Webhooks signés avec HMAC, retry et dedup. Relais local façon stripe listen pour tester sur votre localhost.

Déjà publiés sur npm, PyPI, Packagist et Go
$ npm install @bzapper/client $ pip install bzapper $ composer require bzapper/bzapper $ go get github.com/bernisoftware/bzapper-go $ br.com.bernisoftware:bzapper (Maven)

Événements webhook

message.sentmessage.deliveredmessage.readmessage.receivedinstance.connectedinstance.disconnectedinstance.bannedgroup.participant_addedgroup.mentioned_me
# envoyer 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");
Widget intégrable · notre atout

Mettez la gestion des numéros au cœur de votre produit

Un widget standalone que vous intégrez dans votre propre système. Vos clients connectent, déconnectent et suivent les numéros du projet — sans que vous construisiez le moindre écran. Une ligne de code.

Numéros du projet

Charge automatiquement les numéros connectés du projet lié à la clé. Chacun avec un statut en direct.

Connexion par QR

Le client scanne le QR et connecte un nouveau numéro sur place — ajouter un numéro (si le plan le permet) ou déconnecter, tout dans le widget.

Mini tableau de bord

Usage et consommation du projet en un coup d’œil : messages, numéros et stockage sur la période. La facturation reste dans le panneau.

Sécurisé par origine

La clé wgt_ est publique, mais verrouillée par une allowlist d’origines (CORS). Elle n’expose jamais votre vraie clé API.

Flottant (plug-and-play)

Une bulle dans le coin de l’écran. Collez simplement le <script> avec votre clé — il s’ouvre en un clic.

Embedded (inline)

Affichez <bzapper-widget> où vous voulez dans votre page, comme un bloc natif de votre panneau.

Mode flottant — une ligne dans votre HTML :

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

La clé wgt_ est publique (elle est dans le HTML) et verrouillée par une allowlist d’origines que vous configurez dans le panneau. Votre vraie clé API n’apparaît jamais. La facturation (plans et factures) reste dans le panneau — le widget ne gère que les connexions.

Fiabilité · notre atout

WhatsApp via API, sans interruption

La délivrabilité, c’est de l’ingénierie. Chaque numéro du projet a ses propres limites de volume, un contrôle de rythme à l’envoi, une surveillance continue de santé et des alertes en temps réel. Quand un numéro tombe, le trafic continue par les autres — sans intervention de votre part.

  • Répartition de la charge entre les numéros du projet
  • Montée en volume progressive sur les numéros récemment connectés
  • Conversations unifiées par contact, même en changeant de numéro
  • Alertes en temps réel quand un numéro tombe
Numéros du projet 3 numéros · santé moyenne 68
+55 51 99919-8087
Connecté
+55 11 98888-2210
En montée
+55 21 99745-3308
Au repos
Gestion des contacts · CRM

Une base de contacts qui travaille pour vous

Chaque numéro que vous touchez devient un contact riche — avec document, adresse, tags et historique. Corrélé tout seul par projet et numéro, filtrable en quelques secondes et toujours sous votre registre de consentement.

  • Profil riche

    Nom, téléphone, e-mail, document (identifiant fiscal) et adresse complète — ville, région, code postal et pays.

  • Tags et groupes

    Organisez avec des tags et des groupes dotés de leurs propres dictionnaires. Un contact peut appartenir à plusieurs — tout est versionné.

  • Corrélation automatique

    Chaque contact se lie tout seul au projet et au numéro par lequel il a parlé. Pas de saisie manuelle, pas de doublons.

  • Filtres avancés

    Recherchez par statut, tags (tous ou n’importe lequel), ville, document, activité et dates — depuis l’API ou le panneau.

  • Historique et notes

    Une timeline append-only de chaque événement du contact, plus des notes internes de l’équipe. Rien ne se perd.

  • Opt-out et blocage

    Supprimez ou bloquez avec un POST. Le statut passe à opted_out ou blocked et stoppe l’envoi avant la file.

Maria Oliveira actif
+55 51 99919-8087
ID fiscal 123.456.789-09 · Porto Alegre · Brésil
clientplan-prosud
Historique
  • OTP livré et lu · il y a 2 min
  • Lié au numéro +55 51 99919-8087
  • Tag « plan-pro » ajouté par vous
  • Opt-in enregistré dans le registre de consentement
Les contacts sans WhatsApp entrent comme « unreachable » — vous voyez le problème de réception avant de dépenser un envoi.

Contacts, tags, groupes et suppressions vivent isolés par projet — une clé ne voit que son propre projet.

Voir dans la documentation →
Nouveau · Envoi programmé

Programmez l’envoi pour le bon moment

Envoyez n’importe quel message avec un horodatage futur. bZapper le garde et l’envoie à l’instant exact — pas de cron sur votre serveur, aucun processus à maintenir.

  • Un seul champ

    Ajoutez scheduled_at à n’importe quel envoi — texte, média, peu importe. Le reste est identique à un envoi normal.

  • Numéro choisi à l’envoi

    Le numéro sain est choisi à l’envoi, pas à la programmation — il ne tombe jamais sur un numéro passé hors ligne.

  • Annulez quand vous voulez

    Listez et annulez les programmations en attente à tout moment, via l’API ou le tableau de bord.

Exemple
// programme dans 2 heures
POST /messages/text
{
  "to": "+5511999990000",
  "body": "Bom dia! ☀️",
  "scheduled_at": "2026-07-01T09:00:00Z"
}
Sécurité & LGPD · notre engagement

Vos contacts sont votre atout le plus précieux

Un numéro banni et une liste brûlée coûtent cher. C’est pourquoi protéger votre base n’est pas une option — c’est ainsi que bZapper est construit, de l’isolation par projet au registre de consentement.

Nous les traitons comme s’ils étaient les nôtres : protégés, isolés et sous votre contrôle.

  • Isolation par projet

    Numéros, boîte de réception, clés et suppression vivent dans des projets isolés. Une clé ne voit que son propre projet — rien ne fuit entre clients ou environnements.

  • Médias privés avec presign

    Les fichiers de conversation sont dans un bucket privé et ne s’ouvrent que via une URL présignée à courte durée (24h par défaut). Rien d’indexable, rien qui traîne.

  • Opt-out & suppression natifs

    Quiconque répond STOP/SAIR/PARAR est supprimé automatiquement et ne reçoit plus aucun envoi. La block list arrête l’envoi avant la mise en file.

  • Registre de consentement

    Chaque opt-in et opt-out entre dans un registre append-only, horodaté et auditable — la preuve de la base légale exigée par la LGPD.

  • Webhooks signés

    Chaque événement part avec une signature HMAC-SHA256 et une vérification timing-safe. Le secret du webhook reste chiffré au repos.

  • Secrets chiffrés

    Sessions WhatsApp chiffrées au repos et le code OTP jamais persisté ni affiché. Téléphone et e-mail normalisés en base de données.

Opt-out en direct
PARAR

Contact supprimé dans le projet à l’instant et enregistré dans le registre de consentement. Émet le webhook contact.opted_out.

PARAR SAIR STOP unsubscribe

bZapper est le sous-traitant des données et assure le gros du travail de confidentialité ; la base légale du consentement relève de votre responsabilité. Nous travaillons ensemble.

Lire le guide Confidentialité & LGPD →
Tarifs

Vous payez pour les numéros. Messages, illimités.

Ce qui compte, c’est de ne jamais arrêter de délivrer — et c’est la redondance entre numéros. Choisissez le plan, activez la récurrence et oubliez la facture.

🛡️ Redondance entre numéros incluse dans chaque plan — quand l’un tombe, un autre prend le relais. C’est notre plus grand atout.

Free

Testez la redondance, sans carte.

R$ 0
  • 2 numéros (redondance active)
  • 250 messages/mois
  • 1 projet
  • 100 Mo de média
  • 15 jours de rétention
  • Bascule · SDK · webhooks
Commencer gratuitement
Recommandé

Pro

Tout illimité. Pour la production.

R$ 79,90/mois
  • 2 numéros (redondance)
  • Messages ILLIMITÉS
  • 1 projet
  • 1 Go de média
  • 30 jours de rétention
  • Uptime + alertes · priorité
S’abonner à Pro

Vous avez grandi ? Ajoutez à la volée — facturation au prorata

Numéro supplémentaire (plus de redondance) R$ 39,95/mois
Projet supplémentaire (isolé) R$ 63,92/mois
+1 Go de média R$ 7,99/mois
+30 jours de rétention R$ 7,99/mois
Planification étendue (jusqu’à 1 an) R$ 11,98/mois

Les add-ons sont une fraction de l’abonnement Pro. Ajouté en milieu de mois ? Vous ne payez que le prorata jusqu’à la prochaine facture.

Composez votre plan

Ajustez les ressources et voyez le total — exactement comme au moment de souscrire.

Plan Pro R$ 79,90/mois
Numéros
2 inclus dans Pro
2
inclus
Projets
1 inclus dans Pro
1
inclus
Go de média en plus
1 Go inclus dans Pro
0
inclus
Rétention en plus
blocs de +30 jours
0
inclus
Planification étendue
planifiez jusqu’à 1 an
inclus
Total mensuel R$ 79,90/mois

💳 Enregistrez votre carte et activez le renouvellement automatique — accès sans interruption, zéro souci.

Prix en BRL (Brésil). Amériques en USD · autres régions en EUR — définis par votre région.

Cas d’usage

Pourquoi les gens utilisent bZapper

OTP / 2FA

Codes de vérification au texte varié et à la livraison suivie.

Notifications transactionnelles

Commandes, factures, rappels — directement depuis votre backend.

Support centralisé

Plusieurs numéros, une boîte, N agents.

Bots en groupe

Surveillez mentions et pièces jointes, répondez dans le bon contexte.

Automatisation et no-code

Intégrez n8n, Make, Zapier via webhooks et HTTP.

Avis et rappels

Confirmations, rappels de rendez-vous et avis opérationnels de votre système.

Questions fréquentes

Tout ce que vous voulez savoir

Est-ce l’API officielle de WhatsApp ?

Aujourd’hui, bZapper fonctionne avec le protocole multi-appareils, le numéro étant connecté depuis le tableau de bord. Nous adoptons la <strong>Cloud API officielle de Meta</strong> comme voie principale — dès qu’elle sera disponible, vous choisirez par quelle voie chaque projet envoie, sans changer d’intégration.

Comment garantissez-vous la délivrabilité ?

Chaque numéro a ses propres limites de volume, un contrôle de rythme à l’envoi et une surveillance continue de santé. Quand l’un tombe, les autres prennent le relais et vous recevez une alerte en temps réel — et la conversation reste unifiée par contact.

Combien ça coûte ?

Deux plans simples. <strong>Free</strong> (gratuit) : 2 numéros avec redondance, 250 messages/mois, 1 projet, 100 Mo et 15 jours de rétention — pour tester la redondance sans carte. <strong>Pro</strong> (R$ 79,90/mois) : 2 numéros, <strong>messages illimités</strong>, 1 projet, 1 Go et 30 jours de rétention. Besoin de plus ? Les add-ons sont une fraction de l’abonnement — numéro supplémentaire, projet supplémentaire, +Go de média, +rétention — et en les ajoutant en milieu de mois vous ne payez que le prorata jusqu’à la prochaine facture. En BRL au Brésil ; Amériques en USD, autres régions en EUR. Nous recommandons d’enregistrer votre carte et d’activer le renouvellement automatique : accès sans interruption.

En combien de temps j’intègre ?

Quelques minutes. Créez le compte, générez une clé API et utilisez l’un des SDK (Node, Python, PHP, Java, Go) ou un POST brut. Il y a un playground et une documentation complète.

Avez-vous des SDK et des webhooks ?

Oui — des SDK générés depuis OpenAPI en 5 langages, des webhooks signés avec HMAC, retry/dedup et un relais local façon `stripe listen` pour tester en localhost.

Et la confidentialité des données ?

Les médias de conversation vont dans un bucket privé avec URL pré-signée ; le code OTP n’est jamais persisté ; les secrets sont chiffrés. Rétention configurable par compte.

Commencez à envoyer sur WhatsApp en quelques minutes

Créez votre compte gratuit, générez une clé API et faites votre premier envoi aujourd’hui. Sans carte, sans paperasse.