3 min di lettura

Architettura scalabile per la WhatsApp Business API in produzione

Passare da un prototipo funzionante a un sistema di produzione stabile su WhatsApp Business API richiede decisioni architetturali precise. Rate limit, gestione degli errori, code asincrone e monitoraggio sono i quattro pilastri di un'implementazione robusta.

Architettura scalabile per la WhatsApp Business API in produzione

Rate limit e gestione della velocita di invio

WhatsApp Business API impone un rate limit di default di 80 messaggi al secondo per numero di telefono. Questo valore puo essere aumentato su richiesta per account con volume elevato e storico di qualita. Superare il rate limit genera errori 429 che il tuo sistema deve gestire con backoff esponenziale.

Per sistemi che devono inviare migliaia di messaggi in breve tempo, l'architettura corretta prevede una coda di messaggi (RabbitMQ, Redis Queue, AWS SQS) che regola il flusso verso l'API. Il producer aggiunge messaggi alla coda a qualsiasi velocita, il consumer li estrae e li invia rispettando il rate limit.

Con piu numeri di telefono associati allo stesso WABA, puoi distribuire il carico tra numeri diversi, moltiplicando di fatto la capacita di invio complessiva.

Gestione degli errori e retry logic

Gli errori nell'invio di messaggi WhatsApp si dividono in due categorie: errori transitori (rete, timeout, rate limit) ed errori definitivi (numero non registrato su WhatsApp, messaggio rifiutato per policy). Solo i primi devono essere ritentati.

Implementa una retry logic con backoff esponenziale: primo retry dopo 1 secondo, secondo dopo 2 secondi, terzo dopo 4 secondi. Dopo tre tentativi falliti su un errore transitorio, sposta il messaggio in una coda di dead letter per analisi manuale.

Registra ogni tentativo con timestamp, codice di errore e payload del messaggio. Questi log sono essenziali per il debug e per dimostrare l'avvenuto tentativo di consegna in caso di dispute contrattuali con i clienti.

Idempotenza dei messaggi

Associa un ID univoco a ogni messaggio prima dell'invio e salvalo nel database. Se un retry invia lo stesso messaggio due volte, l'ID univoco ti permette di rilevare il duplicato e ignorarlo, evitando che il destinatario riceva lo stesso messaggio piu volte.

Monitoraggio e osservabilita

Un sistema di produzione su WhatsApp richiede metriche operative in tempo reale: messaggi inviati al minuto, tasso di consegna, tasso di errore per tipo, latenza media dall'invio all'evento 'delivered' nei webhook.

Configura alert automatici su soglie critiche: tasso di errore superiore al 2%, latenza media superiore a 5 secondi, coda di messaggi in crescita senza essere svuotata. Questi alert permettono intervento proattivo prima che i problemi diventino visibili ai clienti finali.

Chat API espone eventi di stato via webhook per ogni messaggio inviato (sent, delivered, read, failed). Consumare questi eventi e aggiornarli in un database ti permette di calcolare metriche di qualita del servizio in tempo reale e alimentare dashboard di monitoring.

Chat API

Pronto a integrare WhatsApp nella tua azienda?

Attiva il tuo account Chat API e inizia a inviare messaggi in pochi minuti.