All dies kann in der ausgezeichneten Ruby API Docs finden. Es gibt ein paar Schritte, aber es ist nicht so schwer. Es kann ein wenig Experimentieren, um es
Erstellen einer Standardquelle
Der Kunde muss eine Standardquelle für Abogebühren zugewiesen werden müssen, hergestellt in Ihrer Anwendung arbeiten. Dies kann von einem Token erstellt werden, etwa so:
customer.sources.create({:source => token_id})
oder aus Kunden vorhandenen Karten zugewiesen, wenn Sie bereits Karten für den Benutzer zugewiesen haben:
customer.default_source = customer.sources.retrieve(card_id)
erstellen Abo-Plan
Sie können den Abo-Plan auf der Stripe-Konsole einfach erstellen, da dies in der Regel eine Aktivität einmalig ist; Die Erstellung einer Benutzeroberfläche zur Verwaltung von Abonnementplänen ist mit ziemlicher Sicherheit übertrieben, es sei denn, Sie verfügen über Administratorbenutzer, die Abonnementpläne verwalten können, aber keinen Zugriff auf die Stripe-Konsole haben sollten.
Um ein Abo-Plan programmatisch zu erstellen, versuchen Sie dies:
Stripe::Plan.create(
:amount => 4200, #<== Amount is in cents, not dollars
:interval => "month",
:name => "Purple Plan",
:currency => "usd",
:id => "purple"
)
Sie können so viele Pläne erstellen, wie Sie möchten, und können den Benutzer zu einem abonnieren, die sie mögen.
ein Abonnement erstellen für den Kunden
An dieser Stelle Sie das Abonnement auf den Kunden erstellen können, und dies wird den Abrechnungsprozess einzuleiten.
Stripe::Subscription.create(
:customer => customer,
:plan => "purple"
)
einen Web-Haken-Empfänger
Aus irgendeinem Grunde einrichten, diese Dokumentation in einem anderen Ort ist (siehe Webhooks), aber es ist ein sehr notwendiger Teil des Prozesses.Dies wird Ihre Anwendung hält die
beraten def PaymentController protect_from_forgery: außer =>:
Webhook
def # Capture the Ereignisinformationen aus dem Webhook params event_id = params Webhook [: event]
# Verify that the event isn't forged to your Stripe account
event = Stripe::Event.retrieve(event_id)
# Record the event
PaymentEvents.create!(event)
# Handle the event in terms of your application
#...
Ende Ende
Die Arten von Veranstaltungen von Streifen gesendet andokumentiert. Sie können wählen, einige zu erfassen und zu behandeln, während andere passieren. In meinen Anwendungen habe ich jedoch festgestellt, dass es besser ist, alle Ereignisse zu erfassen und zu protokollieren und sie dann nach Bedarf zu verarbeiten. Auf diese Weise haben Sie, wenn Sie die Behandlung eines Ereignisses verpasst haben, das später wichtig behandelt werden soll, die Gelegenheit, sich auf das Ereignis zu beziehen und es post hoc bearbeiten zu können.
Sammeln Sie eine regelmäßige Zahlung
Dies ist der einfache Teil, und kann am besten mit Ihrem Lieblings kalten Getränk getan werden. Alles, was Sie von diesem Punkt aus tun müssen, ist die Überwachung der Stripe-Konsole und Ihres Bankkontos. Keine zusätzliche Aktion erforderlich, da Stripe den Rest erledigt.