1. Differenza tra API e Webhooks
La differenza tra come funziona in generale Webhooks e le API è che mentre le API effettuano le chiamate senza sapere se riceveranno un aggiornamento dei dati come risposta o no, Webhooks riceve le chiamate attraverso l'HTTP POST dai sistemi esterni solo quando hanno qualche aggiornamento dei dati.
Pertanto, Webhooks può “attivare” l'intero flusso di integrazione affinché agisca su questi aggiornamenti. Il punto principale qui è quindi che l'attivazione avviene per un motivo (ad es. perché c'è un vero aggiornamento da effettuare) e non solo perché è il momento di fare ancora un altro controllo per un aggiornamento.
Pertanto, Webhooks può “attivare” l'intero flusso di integrazione affinché agisca su questi aggiornamenti. Il punto principale qui è quindi che l'attivazione avviene per un motivo (ad es. perché c'è un vero aggiornamento da effettuare) e non solo perché è il momento di fare ancora un altro controllo per un aggiornamento.
Un altra cosa valida in merito a Webhooks è che fornisce altre applicazioni e servizi con informazioni (quasi) in tempo reale. Questo è possibile solo attraverso le API, ma richiede maggiore sforzo e richiede moltissime risorsa. Webhooks semplifica al massimo il real-time.
Nota
Clicca qui per iniziare con l'API Regiondo
2. Crea il tuo webhook
Per creare il tuo webhook sul tuo account Regiondo vai su Marketing > Webhooks.
2.1 Nome di Webhook
Nomina il tuo webhook. Dipende tutto da te.
Esempio
Notifica di Google
2.2 Tipologia di Trigger
Scegli tra i 3 seguenti trigger: Prenotazione, Cliente e Biglietto.
2.2.1 Prenotazione - Valori di risposta
{
"booking_key": "1-2605248-44215-75508-1556874000",
"product_id": "44215",
"product_supplier_id": "9357",
"option_id": "174184",
"variation_id": "75508",
"order_id": "2605248",
"option_name": "Adulte",
"variation_name": "Tours en Français ",
"ticket_name": "La route de Bordeaux",
"product_name": "La route de Bordeaux",
"qty": "1",
"qty_cancelled": "0",
"event_date_time": "2019-05-03T09:00:00+02:00",
"date_applied_for": "2019-05-03T09:00:00+02:00",
"created_at": "2019-04-30T11:02:45+02:00",
"type": "booking",
"status": "approved",
"external_id": null,
"email": "customer.name@regiondo.com",
"phone_number": null,
"first_name": "Customer",
"last_name": "Name",
"duration_type": "minute",
"duration_value": "50.00",
"order_number": "1556614985033893200",
"contact_data": {
"firstname": "Customer",
"lastname": "Name",
"email": "customer.name@regiondo.com",
"telephone": null,
"is_subscribed": "no"
}
}
2.2.2 Cliente - Valori di risposta
{
"customer_email": "customer.name@regiondo.com",
"customer_firstname": "Customer",
"customer_lastname": "Name",
"customer_phone": "",
"customer_birth_date": null,
"customer_street": null,
"customer_postcode": null,
"customer_city": null,
"customer_country": null,
"customer_newsletter_status": 0,
"customer_newsletter_order": null,
"customer_newsletter_datetime": null,
"customer_newsletter_ip": null
}
{
"customer_email": "customer.name@regiondo.com",
"customer_firstname": "Customer",
"customer_lastname": "Name",
"customer_phone": "",
"customer_birth_date": null,
"customer_street": "Neumarkter Str. 63",
"customer_postcode": "81673",
"customer_city": "München",
"customer_country": "DE",
"customer_newsletter_status": 0,
"customer_newsletter_order": null,
"customer_newsletter_datetime": null,
"customer_newsletter_ip": null
}
2.2.3 Biglietto - Valori di risposta
{
"code": "RE57WGQH0G6S",
"status": "processing",
"validation_status": "not validated",
"data": {
"validated_at": "2019-04-30T11:03:11+02:00",
"product_info": {
"product_name": "La route de Bordeaux",
"variation_name": "Tours en Français ",
"option_name": "Adulte",
"ticket_datetime": "2019-05-03T09:00:00+02:00"
},
"customer_info": {
"customer_name": "Mr. Customer Name",
"customer_email": "customer.name@regiondo.com"
}
}
}
{
"code": "RE57WGQH0G6S",
"status": "sent",
"validation_status": "validated",
"data": {
"validated_at": "2019-04-30T11:09:09+02:00",
"product_info": {
"product_name": "La route de Bordeaux",
"variation_name": "Tours en Français ",
"option_name": "Adulte",
"ticket_datetime": "2019-05-03T09:00:00+02:00"
},
"customer_info": {
"customer_name": "Mr. Customer Name",
"customer_email": "customer.name@regiondo.com"
}
}
}
3. URL Payload
Qui bisognerebbe inserire l'URL utile per quando si attiva Webhook sulla dashboard.
Nota
Non dimenticare di testare l'URL prima di salvare/attivare il webhook.
4. Webhook su Merchandising – Prodotti aggiuntivi
È possibile collegare i prodotti aggiuntivi a un webhook, ma ci sono delle limitazioni: L'IVA non viene trasferita.
L'importo del prodotto viene aggiunto all'importo della prenotazione comprensivo di IVA.
Viene mostrato solo l'importo totale dell'ordine, ovvero l'importo dell'offerta + il componente aggiuntivo.
Esempio: importo dell'offerta 50E + prodotto aggiuntivo 5E = 55 EURO.
Tutte le altre informazioni verranno trasmesse, quali:
Identificazione del prodotto, quantità, cancellazioni, stato, pagamento, numero di prenotazione, informazioni sull'acquirente, prezzo dell'ordine comprensivo di IVA.