Sintomi del problema
Il partecipante comunica di aver pagato il biglietto, ma:
- Lo stato della registrazione e "In attesa di pagamento"
- L'email con il biglietto non e arrivata
- Nella lista dei partecipanti lo stato del pagamento e
pending
Nella maggior parte dei casi la causa e che il webhook dal gateway di pagamento non e stato consegnato o non e stato elaborato da tikento.
Passo 1. Controllate il log di consegna dei webhook
tikento tiene un log di tutte le richieste webhook in ingresso:
- Aprite Impostazioni -> Pagamenti.
- Selezionate il gateway (YooKassa o Tochka).
- Andate alla scheda "Log webhook".
Il log mostra:
- Data e ora della richiesta
- Tipo di evento (
payment.succeeded,payment.canceled,refund.succeeded) - Codice di risposta HTTP di tikento
- Corpo della richiesta (per la diagnostica)
- Stato dell'elaborazione (successo / errore)
Risultati possibili
| Situazione | Cosa significa | Cosa fare |
|---|---|---|
| Webhook assente nel log | Il gateway non lo ha inviato o non e riuscito a consegnarlo | Passate al passo 2 |
Webhook presente, codice 200 | Elaborato con successo | Verificate che il payment_id corrisponda al pagamento problematico |
Webhook presente, codice 4xx | Errore di validazione (firma non valida, formato sconosciuto) | Passate al passo 4 |
Webhook presente, codice 5xx | Errore interno di tikento | Passate al passo 5 |
Passo 2. Verificate le impostazioni del webhook nel gateway
Accedete al pannello del gateway di pagamento e verificate:
YooKassa
- Aprite "Impostazioni" -> "Notifiche HTTP".
- Assicuratevi che l'URL del webhook corrisponda:
https://app.tikento.com/webhooks/yookassa/{shopId} - Verificate che siano selezionati tutti gli eventi necessari:
payment.succeededpayment.canceledrefund.succeeded
Tochka
- Aprite "Integrazione" -> "Notifiche".
- Assicuratevi che l'URL del webhook corrisponda:
https://app.tikento.com/webhooks/tochka/{merchantId} - Verificate i filtri degli eventi.
Errori comuni nell'URL
- Manca
https://(indicatohttp://— i gateway richiedono HTTPS) - Slash finale in eccesso nell'URL
shopIdomerchantIderrato nel percorso- URL di un collegamento precedente (se avete ricollegato il gateway)
Passo 3. Verificate la raggiungibilita dell'endpoint webhook
Se l'URL e corretto ma il webhook non viene consegnato, le possibili cause sono:
- Firewall o CDN blocca le richieste POST in ingresso dal gateway
- Timeout: tikento non ha risposto nel tempo previsto (i gateway generalmente attendono 10-30 secondi)
- Problemi DNS: il dominio non viene risolto dal lato del gateway
Per la verifica utilizzate il webhook di test dal pannello del gateway (se disponibile) o richiedete un nuovo invio.
Passo 4. Errore di validazione (4xx)
Se il webhook e arrivato ma tikento ha restituito un errore 4xx:
| Codice | Causa | Soluzione |
|---|---|---|
400 | Corpo della richiesta non valido | Verificate il formato delle notifiche nel gateway. Assicuratevi che sia selezionato il formato JSON e non XML |
401 | Firma della richiesta non valida | Assicuratevi che la secretKey in tikento sia aggiornata. Se avete rigenerato la chiave nel gateway, aggiornatela anche in tikento |
404 | Percorso URL webhook errato | Verificate l'URL — forse shopId / merchantId e indicato in modo errato |
409 | Webhook duplicato (gia elaborato) | Questo e un comportamento normale — la protezione idempotency ha funzionato. Il pagamento e gia stato elaborato |
Passo 5. Errore interno (5xx)
Se il webhook e stato ricevuto ma tikento ha restituito 5xx — si tratta di un errore temporaneo dal lato di tikento. Nella maggior parte dei casi:
- Il gateway riprova automaticamente la consegna (vedi la politica di retry di seguito).
- Al tentativo successivo il problema generalmente si risolve.
- Se l'errore si ripete, contattate il supporto tikento.
Politica di riconsegna
| Gateway | Numero di tentativi | Intervalli |
|---|---|---|
| YooKassa | fino a 10 | Ritardo esponenziale: 1 s, 5 s, 30 s, 2 min, 10 min, 30 min, 1 h, 3 h, 6 h, 12 h |
| Tochka | fino a 5 | Intervallo fisso: ogni 5 minuti |
Se tutti i tentativi sono esauriti, utilizzate la ripetizione manuale.
Ripetizione manuale e conferma
Ripetizione manuale del webhook
Nel log dei webhook cliccate "Riprova" accanto al record non riuscito. tikento rielaborera il corpo della richiesta webhook.
Conferma manuale del pagamento
Se non e possibile ripristinare il webhook, ma vedete un pagamento riuscito nel pannello del gateway:
- Aprite l'evento -> "Partecipanti".
- Trovate il record con lo stato bloccato.
- Cliccate "Azioni" -> "Conferma pagamento manualmente".
- Indicate il motivo (per l'audit).
La conferma manuale aggiorna lo stato della registrazione e invia al partecipante l'email con il biglietto.
Test del webhook
Per assicurarvi che il webhook funzioni correttamente, prima o dopo la configurazione:
Pagamento di prova
- Create un evento di prova con un biglietto a pagamento.
- Collegate il gateway in modalita di test.
- Pagate con la carta di test (
4111 1111 1111 1111). - Controllate il log webhook — deve apparire un record con codice
200. - Assicuratevi che lo stato della registrazione sia aggiornato a "Pagato".
Webhook di test dal gateway
Alcuni gateway permettono di inviare un webhook di test manualmente:
- YooKassa: nella sezione "Notifiche HTTP" il pulsante "Invia notifica di test"
- Tochka: contattate il supporto Tochka per l'invio di una notifica di test
Prevenzione
Per evitare problemi con i webhook:
- Quando cambiate le chiavi API nel gateway, aggiornatele subito in tikento
- Non eliminate e non modificate l'URL del webhook senza necessita
- Controllate periodicamente il log webhook per la presenza di errori
- Quando ricollegate il gateway, effettuate sempre un pagamento di prova