Vai alla documentazione per sviluppatori
Riferimento per sviluppatori

Webhooks

Verificate X-VPOS-Signature sul corpo originale, salvate l’event id, restituite rapidamente 2xx e gestite le consegne ripetute in modo idempotente.

Versione
API v1
Ultima revisione
Stato
Contratto pubblicato
Navigazione per sviluppatori
01

Panoramica

Il contratto webhook pubblico di VPOS.am consegna l’evento firmato payment.status_changed con uno stato di pagamento verificato dal server.

HTTP / HMAC

Contratto di firma

Verifica l’HMAC con timestamp sul corpo grezzo della richiesta prima di analizzare il payload o modificare lo stato aziendale.

HTTP
X-VPOS-Event-Id: <event_id>
X-VPOS-Event-Type: payment.status_changed
X-VPOS-Webhook-Timestamp: <unix_timestamp>
X-VPOS-Signature: t=<unix_timestamp>,v1=<current_secret_hmac>[,v1=<grace_secret_hmac>]

signed_payload = <timestamp>.<raw_request_body>
signature = HMAC-SHA256(webhook_secret, signed_payload)
CampoContratto
IntestazioneX-VPOS-Signature
Valore firmato<timestamp>.<raw_request_body>
AlgoritmoHMAC-SHA256
Tolleranza del timestamp5 minuti
Timeout di consegna5 secondi
Numero massimo predefinito di tentativi8 tentativi
Pianificazione dei tentativiEsponenziale da 30 secondi, con limite di 1 ora
ConfermaRestituisci rapidamente una risposta 2xx
Rotazione del segretoL’header può contenere più valori v1. Accetta l’evento solo se almeno uno corrisponde al segreto corrente o a un segreto di grace non scaduto.
ElaborazioneVerifica la firma, salva l’event id e poi accoda gli effetti secondari.
03

Contratto pubblico dell’evento

Attualmente è documentato pubblicamente solo payment.status_changed. fiscalStatus fa parte di data.payment, ma non implica eventi pubblici fiscal o reconciliation separati.

04

Firma e riconsegna

Calcolate HMAC-SHA256 su <timestamp>.<raw_request_body> con il merchant webhook secret, rifiutate timestamp obsoleti ed eseguite le azioni downstream tramite una queue idempotente.

05

Come usare questa pagina

Webhooks aiuta ad allineare lo scenario di pagamento tra business, sviluppo e operations. Prima del lancio vanno definiti canale di vendita, route del provider, responsabilità webhook, verifica dello stato e supporto cliente dopo il pagamento.