Guida WhatsApp

UniMsg si integra con WhatsApp Business API per permetterti di inviare messaggi WhatsApp professionali. Supporta template pre-approvati, messaggi di sessione e media.

Caratteristiche

Tipi di Messaggio

WhatsApp Business distingue due tipi di messaggi:

1. Template Messages

Messaggi con template pre-approvati da Meta. Possono essere inviati in qualsiasi momento.

2. Session Messages

Messaggi liberi che possono essere inviati solo entro 24 ore dall'ultima risposta dell'utente.

Endpoint

Metodo Endpoint Descrizione
POST /v1/whatsapp/send Invia messaggio template
POST /v1/whatsapp/session Invia messaggio di sessione
GET /v1/whatsapp/templates Lista template disponibili
GET /v1/whatsapp/{id} Stato messaggio

Invio Template Message

Richiesta

POST /v1/whatsapp/send
Content-Type: application/json
Authorization: Bearer YOUR_ACCESS_TOKEN

{
    "to": "+39123456789",
    "template": "order_confirmation",
    "language": "it",
    "components": [
        {
            "type": "body",
            "parameters": [
                {"type": "text", "text": "Mario Rossi"},
                {"type": "text", "text": "ORD-12345"},
                {"type": "text", "text": "€ 99,00"}
            ]
        }
    ]
}

Parametri

Parametro Tipo Obbligatorio Descrizione
to string Numero WhatsApp destinatario
template string Nome del template
language string Codice lingua (es: it, en)
components array No Parametri variabili del template

Risposta

{
    "success": true,
    "data": {
        "message_id": "msg_wa_xxxxxxxxxxxx",
        "to": "+39123456789",
        "template": "order_confirmation",
        "status": "sent",
        "credits_used": 2,
        "created_at": "2024-01-15T10:30:00Z"
    }
}

Invio Messaggio di Sessione

Importante: I messaggi di sessione possono essere inviati solo entro 24 ore dall'ultimo messaggio ricevuto dall'utente.
POST /v1/whatsapp/session
Content-Type: application/json
Authorization: Bearer YOUR_ACCESS_TOKEN

{
    "to": "+39123456789",
    "message": "Grazie per averci contattato! Come possiamo aiutarti?"
}

Invio con Media

Puoi allegare media ai messaggi di sessione:

Immagine

{
    "to": "+39123456789",
    "type": "image",
    "media_url": "https://example.com/image.jpg",
    "caption": "Ecco il prodotto richiesto"
}

Documento

{
    "to": "+39123456789",
    "type": "document",
    "media_url": "https://example.com/invoice.pdf",
    "filename": "fattura.pdf"
}

Tipi Media Supportati

Tipo Formati Dimensione Max
image JPEG, PNG 5 MB
document PDF, DOC, DOCX, XLS, XLSX 100 MB
video MP4, 3GPP 16 MB
audio AAC, M4A, AMR, MP3, OGG 16 MB

Template Disponibili

Per vedere i template disponibili per il tuo account:

GET /v1/whatsapp/templates
Authorization: Bearer YOUR_ACCESS_TOKEN

Risposta:

{
    "success": true,
    "data": [
        {
            "name": "order_confirmation",
            "language": "it",
            "status": "APPROVED",
            "category": "TRANSACTIONAL",
            "components": [
                {
                    "type": "BODY",
                    "text": "Ciao {{1}}, il tuo ordine {{2}} è confermato. Totale: {{3}}"
                }
            ]
        },
        {
            "name": "shipping_update",
            "language": "it",
            "status": "APPROVED",
            "category": "TRANSACTIONAL"
        }
    ]
}

Stati del Messaggio

Stato Descrizione
sent Inviato ai server WhatsApp
delivered Consegnato al dispositivo
read Letto dall'utente
failed Invio fallito

Errori Comuni

Codice Descrizione Soluzione
TEMPLATE_NOT_FOUND Template non esistente Verifica il nome del template
SESSION_EXPIRED Sessione 24h scaduta Usa un template message
INVALID_WHATSAPP Numero non su WhatsApp Verifica che il numero sia attivo
BLOCKED_USER L'utente ha bloccato il numero Non è possibile contattare