Trei moduri de a conecta TapTime la alte sisteme, toate în același loc. Doar proprietarul companiei le poate gestiona. Pentru alertele în chat și pentru Zapier, Make, n8n sau Pipedream, consultați ghidurile dedicate — acestea folosesc aceleași evenimente.
Panoul Integrări Webhook-uri și API
| Folosiți | Când |
|---|---|
| Webhook | Propriul sistem sau un CRM trebuie să afle de fiecare schimbare a unei rezervări, a unei comenzi sau la fidelizare, cu toate detaliile. |
| Postback | O rețea de publicitate, un afiliat sau un tracker v-a dat un URL de postback de apelat la fiecare conversie. |
| REST API | Sistemul dumneavoastră vrea să preia rezervările când dorește sau să le confirme și să le anuleze. |
Evenimente pe care le puteți trimite
| Eveniment | Când |
|---|---|
| booking.requested | Un oaspete a cerut o rezervare care așteaptă confirmarea dumneavoastră |
| booking.confirmed | O rezervare este confirmată |
| booking.cancelled | Oaspetele sau localul a anulat |
| booking.no_show | Oaspetele nu a venit |
| booking.completed | Vizita s-a încheiat |
| order.placed | Comanda unui oaspete a ajuns la dumneavoastră (de pe pagină sau prin codul QR de pe masă) |
| order.paid | O comandă a fost plătită, inclusiv la casă |
| loyalty.member_joined | Un client a primit prima ștampilă într-un program |
| loyalty.stamp_added | A fost adăugată o ștampilă |
| loyalty.reward_issued | Un card a fost completat și recompensa lui a fost acordată |
| loyalty.reward_redeemed | O recompensă a fost oferită clientului |
Webhook-uri
-
1
Adaugă webhook
Lipiți adresa https a endpointului și alegeți evenimentele — rezervări, comenzi, fidelizare sau toate.
-
2
Trimite un test
Un eveniment de probă pleacă imediat și vedeți răspunsul dat de endpoint.
-
3
Verificați semnătura
Fiecare cerere are un antet TapTime-Signature: t=<time>,v1=<HMAC-SHA256 al „t.body” cu secretul de semnare>. Verificați-l înainte să aveți încredere în cerere.
Corpul este JSON: ID-ul, tipul și ora evenimentului, plus întreaga rezervare, comandă sau card de fidelitate în data.booking, data.order sau data.loyalty — cu oaspetele, ora, masa, serviciul sau produsele, starea și de unde a venit (etichete UTM și ID-uri de clic).
- Răspundeți cu orice status 2xx. Orice altceva este reîncercat de 8 ori pe parcursul a aproximativ o zi.
- Fiecare eveniment are un ID: dacă îl primiți de două ori, ignorați-l pe al doilea.
- Răspundeți cu 410 Gone și TapTime nu mai reîncearcă acel eveniment.
- Redirecționările nu sunt urmate, iar adresele din rețele private sunt refuzate.
Postback-uri server-to-server
Lipiți URL-ul de postback primit de la tracker și faceți clic pe variabile ca să inserați detaliile rezervării, de exemplu https://tracker.example/postback?cid={click_id}&payout={value}&status={status}. Variabilele disponibile includ {click_id}, {event}, {booking_id}, {value}, {currency}, {party_size}, {utm_source}, {utm_campaign}, {gclid} și {fbclid}. ID-ul de clic al trackerului ajunge la rezervare când linkul de rezervare conține click_id, clickid sau subid.
REST API
-
1
Creează cheie API
Dați-i un nume și alegeți Doar citire sau Citire și scriere, ca să permiteți confirmarea, anularea și marcarea neprezentărilor.
-
2
Copiați-o acum
Cheia este afișată o singură dată. Păstrați-o pe server — niciodată într-o pagină web sau într-o aplicație.
-
3
Apelați API-ul
Trimiteți-o ca Authorization: Bearer <key> către https://api.tapti.me/v1/company.
| Cerere | Returnează |
|---|---|
| GET /v1/company | Compania căreia îi aparține cheia |
| GET /v1/company/reservations, /appointments | Rezervări, filtrate după status, branchId, from, to sau updatedSince, câte 100 pe pagină |
| GET /v1/company/reservations/{id} | O rezervare |
| POST /v1/company/reservations/{id}/status | Schimbă starea (chei de scriere) |
| GET /v1/company/orders, /orders/{id} | Comenzile, cu produsele și totalurile lor, filtrate după status, source, fulfilment, from, to sau paidSince |
| GET /v1/company/loyalty/programs, /cards, /rewards | Programele de fidelizare, cardurile membrilor și recompensele obținute de aceștia |
| GET /v1/company/events?after={cursor} | Fiecare eveniment de rezervare, comandă și fidelizare, în ordine — interogați-l periodic ca să rămâneți sincronizat; adăugați type=order,loyalty ca să primiți doar o parte |
| POST /v1/company/webhooks, DELETE /v1/company/webhooks/{id} | Abonează un URL la evenimente și îl dezabonează — pe asta se bazează aplicațiile Zapier, Make, n8n și Pipedream |
Când ceva eșuează
Fiecare endpoint are un „Jurnal de livrări” cu ultimele 25 de livrări, codul de status și răspunsul dat de sistemul dumneavoastră. Livrările eșuate sunt reîncercate automat; „Trimite din nou” reîncearcă una imediat.
Întrebări frecvente
Poate un webhook să ajungă în Zapier sau Make?
Da — folosiți Integrări → Automatizare, care verifică dacă adresa aparține platformei și afișează pașii specifici ei. Creați un „Catch hook” (Zapier), un „Custom webhook” (Make), un nod Webhook (n8n) sau un declanșator HTTP (Pipedream), lipiți-i adresa și apăsați Trimite un test, ca instrumentul să învețe câmpurile.
Mi-am pierdut secretul de semnare.
Proprietarul îl poate afișa din nou din endpoint sau îl poate schimba. Schimbarea emite imediat unul nou, iar cel vechi încetează să funcționeze.
Mulțumim — așa îmbunătățim aceste ghiduri.
Scrieți-ne și menționați pagina pe care erați. Fiecare mesaj este citit de un om, iar răspunsul vine în limba în care ați scris.
Scrieți-ne