API

Cette API permet à des systèmes externes (votre site, app ou ERP) de créer automatiquement des commandes dans votre comp

# API KambaChat — pour développeurs

Cette API permet à des systèmes externes (votre site, app ou ERP) de créer automatiquement des commandes dans votre compte KambaChat. Les commandes arrivent dans le tableau de bord et suivent le flux normal : confirmer et conclure.

> Disponibilité (GEO) — Les vitrines sont exclusives à l'Angola. Cette API crée des commandes dans votre vitrine numérique, elle s'applique donc aux vendeurs en Angola. Utilisateurs internationaux : KambaChat se concentre sur l'automatisation IA de WhatsApp, Facebook et Instagram — la vitrine et l'API de commandes ne sont pas disponibles hors d'Angola.

1. Authentification

L'authentification se fait par une clé secrète dans l'en-tête de chaque requête.

1. Créez une clé dans Tableau de bord → Réglages → Clés API : donnez un nom et (option) une expiration, puis cliquez sur Créer la clé.

2. La clé (af_...) n'est affichée qu'une seule fois. Elle est stockée hachée (SHA-256) — jamais récupérable. Gardez-la secrète.

3. Envoyez-la à chaque requête dans l'en-tête : Authorization: Bearer af_...

Sécurité

  • La clé n'est jamais stockée en clair — seulement son hachage.
  • Vous pouvez définir une expiration (30/90/365 jours) et supprimer une clé à tout moment (révocation immédiate).
  • Limites de débit : 60/min par IP et 120/min par clé.
  • N'exposez jamais la clé côté frontend/navigateur — utilisez-la côté serveur uniquement.

2. Créer une commande

POST /api/webhooks/orders

Crée une commande dans votre compte (statut En attente) et vous envoie une notification.

ChampTypeRequisDescription
customerNamestringNom du client
customerPhonestringTéléphone du client
customerEmailstringE-mail du client
addressstringAdresse du client (optionnelle)
notesstringNotes de commande
channelstringCanal d'origine (ex. WHATSAPP, défaut WHATSAPP)
itemsarrayArticles : liste de { productId, quantity } (le total est calculé)
totalnumberTotal (utilisé seulement sans items)

Exemple

```bash

curl -X POST https://kambachat.com/api/webhooks/orders \

-H "Authorization: Bearer af_xxxxxxxx..." \

-H "Content-Type: application/json" \

-d '{

"customerName": "Ana Silva",

"customerPhone": "+244923000000",

"customerEmail": "ana@exemplo.com",

"address": "Kilamba, Luanda",

"channel": "WHATSAPP",

"notes": "Cliente VIP — contactar por WhatsApp",

"items": [

{ "productId": "PRODUCT_ID_1", "quantity": 2 },

{ "productId": "PRODUCT_ID_2", "quantity": 1 }

]

}'

```

Réponse (201)

```json

{ "success": true, "orderNumber": "WA12345678", "orderId": "ckx...", "total": 7500 }

```

Les productId doivent appartenir à votre compte. Avec items, le total est recalculé selon les prix réels des produits.

3. Obtenir le catalogue public

GET /api/webhooks/orders?store=SLUG

Renvoie les données publiques de la vitrine (nom, produits actifs, config IA) par le *slug*. Aucune clé requise (public).

```bash

curl "https://kambachat.com/api/webhooks/orders?store=a-minha-loja"

```

4. Codes de statut

CodeSignification
401Clé manquante, invalide ou expirée
404Vitrine introuvable (aucune → voir règle GEO)
429Trop de requêtes (limite)
201Commande créée avec succès

KambaChat Suporte

Online agora

👋 Olá! Como podemos ajudar?

Estamos disponíveis para responder as suas questões sobre o KambaChat.