Avviare operazioni con l'ausilio dei webhook
Utilizzare i webhook per rispondere agli eventi di pagamento online
Un webhook è un endpoint HTTP che riceve gli eventi da Stripe.
I webhook ti consentono di ricevere notifiche sugli eventi di pagamento che si verificano al di fuori del tuo flusso di pagamento come:
- Pagamenti riusciti (
payment_
)intent. succeeded - Pagamenti contestati (
charge.
)dispute. created - Saldo disponibile nel tuo account Stripe (
balance.
)available
Anche se la Dashboard è in grado di gestire perfettamente operazioni una tantum quali il rimborso di un pagamento o l’aggiornamento delle informazioni di un cliente, i webhook sono utili per sviluppare l’integrazione dei pagamenti e consentono di elaborare un elevato volume di eventi critici.
Sviluppare un proprio webhook
Puoi creare un gestore di webhook sul tuo server per gestire tutti i flussi di pagamento offline. Innanzitutto scegli un endpoint in grado di ricevere le richieste provenienti da Stripe e utilizza la CLI per verificare localmente la tua integrazione. Ogni richiesta di Stripe contiene un oggetto Event con un riferimento all’oggetto su Stripe che è stato modificato.
Creare un endpoint del webhook
Aggiungi un nuovo endpoint alla tua applicazione. Per rispondere a determinati eventi, verifica il campo type
dell’oggetto dell’evento inviato nel corpo della richiesta. Quindi scegli l’output standard per assicurarti che il webhook funzioni.
Avvia il tuo server dopo aver aggiunto il nuovo endpoint.
Installare e configurare la CLI di Stripe
For additional install options, see Get started with the Stripe CLI.
Una volta installata la CLI di Stripe, esegui stripe login
nella riga di comando per generare un codice di associazione da collegare al tuo account Stripe. Premi Invio per avviare il browser e accedere al tuo account Stripe per consentire l’accesso. La chiave API generata è valida 90 giorni. Puoi modificarla o eliminarla nella sezione Chiavi API nella Dashboard.
Nota
Puoi creare una configurazione specifica del progetto includendo il flag –project-name quando accedi e quando esegui i comandi per quel progetto.
di prova
stripe login Your pairing code is: humour-nifty-finer-magic Press Enter to open up the browser (^C to quit)
Se vuoi utilizzare una chiave API esistente, utilizza il flag --api-key
:
stripe login --api-key
Your pairing code is: humour-nifty-finer-magic Press Enter to open up the browser (^C to quit)sk_test_4eC39HqLyjWDarjtT1zdp7dc
Verificare un webhook localmente
Utilizza la CLI per inoltrare gli eventi al tuo endpoint del webhook locale utilizzando il comando listen
.
Se la tua applicazione viene eseguita sulla porta 4242, esegui il seguente comando:
stripe listen --forward-to http://localhost:4242/webhook
In un’altra scheda del terminale, utilizza il comando trigger
della CLI per attivare un evento webhook fittizio.
stripe trigger payment_intent.succeeded
Il seguente evento appare nella scheda listen
:
[200 POST] OK payment_intent.succeeded
“Il PaymentIntent è andato a buon fine” viene visualizzato nella scheda del terminale del tuo server.
Distribuire l'endpoint del webhook
Quando avrai la possibilità di distribuire l’endpoint del webhook nell’ambiente di produzione, dovrai procedere come segue:
Utilizza le tue chiave API in modalità live e non quelle in modalità di test.
Configura l’endpoint weebhook nella Dashboard Stripe o con l’API.
Per configurare l’endpoint nella Dashboard, accedi alle impostazioni del webhook.
Fai clic su Aggiungi endpoint e inserisci l’URL dell’endpoint, la versione dell’API Stripe e gli eventi specifici che vuoi che Stripe ti invii.
Sostituisci la chiave privata dell’endpoint del webhook nella tua applicazione con la nuova chiave privata mostrata nella vista Dashboard del tuo endpoint.
La tua applicazione è pronta per accettare gli eventi in modalità live. Per ulteriori informazioni sulla configurazione dell’endpoint del webhook, consulta la sezione sull’API Webhook Endpoint e sul testing in modalità di test, consulta la nostra Guida allo sviluppo.