2012-02-21 15 views
6

Ho creato con successo un'app per i binari come da railscast di Ryan Bates (http://railscasts.com/episodes/288-billing-with-stripe) - Tuttavia, nel railscast non lo fa t coprire webhooks. Mi chiedevo se ci sono dei buoni esempi nel pubblico dominio dell'implementazione e dell'uso di webhook per gestire una fatturazione dell'abbonamento che è stata creata.Utilizzo di webook Stripe con Rails

Qualsiasi pensiero/direzione sarebbe super utile?

Grazie!

+1

webhooks sono "mi chiami quando succede qualcosa" rispetto al solito "ti chiamerò (scrutinio) più e più volte per scoprire se qualcosa è successo". Puoi chiarire la tua q: cosa vuoi che accada? –

+0

Per fornire un po 'di contesto, quello che sto cercando di risolvere per è: 1) Se sottoscrizione di un utente viene addebitato con successo, quindi ho bisogno di sapere in modo che posso applicare ulteriore credito al proprio account 2) Se un i dettagli della carta di credito dell'utente non vengono elaborati correttamente, ho bisogno di sapere in modo che possa comunicare con loro e chiedere loro di controllare/aggiornare quei dettagli Questi sono i due casi d'uso principali. Credo che i webhook siano il modo giusto per farlo - ad esempio Stripe contatta la mia app se/quando c'è un cambiamento rilevante ... piuttosto che usare una sorta di attività automatica che farebbe ping a Stripe una volta al giorno o qualcosa del genere. –

risposta

3

La maggior parte di tutti i gateway di pagamento, inclusa la striscia, hanno un modo di dire al cliente (la tua webapp) se l'addebito è andato a buon fine o meno.

Per le strisce, il loro docs mostra come ricevere una notifica di webhook da loro.

Il flusso è:

  1. Creare un controller e metodo nella vostra applicazione per ricevere le chiamate da webhook stripe. Nota che le chiamate arriveranno come POST, non GET
  2. Registra l'url con strip usando il loro dashboard. Questo è un passaggio manuale che fai una volta.
  3. Quando il metodo viene chiamato da una striscia, utilizzare le informazioni sull'evento per aggiornare i modelli che tracciano lo stato degli abbonamenti degli utenti.

Hai qualche domanda?

+2

Vedere anche il post del blog su webhooks: https://stripe.com/blog/webhooks e l'esempio di sinatra: https://github.com/boucher/stripe-webhook-mailer – alberge