Développeurs

Vos notifications partent depuis votre code.

Un fichier à déposer dans votre projet, votre clé dans vos variables d'environnement, et vous envoyez vos templates SMS et WhatsApp. Pas de paquet à installer, pas de dépendance à arbitrer.

API SMS gratuite : 1 000 SMS offerts chaque mois Votre téléphone Android devient la passerelle. Le guide pas à pas, en PHP, Python et Node.js. Lire le guide →

SMS et WhatsApp, une seule clé

La même clé d'API couvre les deux canaux, passée dans un seul en-tête : X-Api-Key.

Des textes validés, comme sur WhatsApp

Un SMS part d'un template que vous soumettez depuis le portail et que ChapChapSend valide, sous 24 h et en général en une trentaine de minutes. Vous l'envoyez ensuite avec son identifiant et ses variables.

Unitaire ou en masse

Une méthode par envoi, une méthode par lot. Le lot vous rend le détail de chaque succès et de chaque échec, jamais un total muet.

Bloquant ou non bloquant

Attendez le verdict de l'opérateur, ou rendez la main tout de suite et traitez l'issue plus tard. C'est vous qui choisissez.

L'erreur vous est rendue telle quelle

Si Meta ou l'opérateur refuse un message, vous recevez son message d'erreur et son code — pas une acceptation optimiste suivie d'un silence.

Fichiers de service

Chaque fichier est autonome et documenté : il lit vos identifiants dans les variables d'environnement et se termine par des exemples d'usage complets. Copiez-le dans votre projet, rien d'autre à faire.

Variables d'environnement

export CHAPCHAPSEND_API_KEY="ccs_live_…"

Générez-la depuis votre compte ChapChapSend, menu Développeurs ▸ Clés d'API. Chaque envoi débite vos crédits : réclamez vos crédits offerts depuis la facturation pour essayer sans payer.

Python

Python 3.9+, aucune dépendance

chapchapsend_service.py
from chapchapsend_service import ChapChapSendService

ccs = ChapChapSendService()

ccs.send_sms_template(
    to="+221771234567",
    template_id="0198e3a1-9b20-…",
    variables={"code": "4821"},
)

ccs.send_whatsapp_template(
    to="+221771234567",
    template_id="0198e3a1-7c44-…",
    variables={"montant": "24 500 FCFA"},
)

Node.js

Node 18+, aucune dépendance

chapchapsend.service.js
import { ChapChapSendService } from "./chapchapsend.service.js";

const ccs = new ChapChapSendService();

await ccs.sendSmsTemplate({
  to: "+221771234567",
  templateId: "0198e3a1-9b20-…",
  variables: { code: "4821" },
});

await ccs.sendWhatsAppTemplate({
  to: "+221771234567",
  templateId: "0198e3a1-7c44-…",
  variables: { montant: "24 500 FCFA" },
});

TypeScript

Node 18+, types inclus

chapchapsend.service.ts
import { ChapChapSendService } from "./chapchapsend.service";

const ccs = new ChapChapSendService();

const sent = await ccs.sendWhatsAppTemplate({
  to: "+221771234567",
  templateId: "0198e3a1-7c44-…",
  variables: { montant: "24 500 FCFA" },
});

console.log(sent.whatsapp_message_id);