Kontext:
Ich verwende Stripe-Checkout, um einmalige Zahlungen in Rails zu akzeptieren. Ich habe einen Gebührencontroller wie unten gezeigt. Ich benutzte zuerst Stripe Webhook, um zu hören, lad.succeeded, aber auf einige Probleme aufgrund der asynchronen Natur der Webhooks. Meine Ich habe die Geschäftslogik auf den Controller verlagert. Wenn die Kundengebühr erfolgreich ist, speichere ich den Kunden und einige andere Details in der db.
Meine Frage:
Reicht diese Überprüfung aus, um sicherzustellen, dass eine Ladung erfolgreich ist?
%Vor%Die Stripe-Dokumentation für Stripe :: Charge.create states, " Gibt ein kostenpflichtiges Objekt zurück, wenn die Gebühr erfolgreich war. Löst einen Fehler aus, wenn etwas schief geht. Eine häufige Fehlerquelle ist eine ungültige oder abgelaufene Karte oder eine gültige Karte mit unzureichendem verfügbarem Guthaben. "
Mein Gebührencontroller:
%Vor% Ja, das ist alles, was Sie tun müssen. Wenn die Ladung erfolgreich war, gibt Stripe ein Charge-Objekt zurück, und Sie können den Parameter paid
überprüfen. Wenn die Ladung fehlschlägt, würden wir eine Ausnahme auslösen.
Prost, Larry
PS Ich arbeite am Support bei Stripe.
Tags und Links ruby ruby-on-rails stripe-payments webhooks payment-processing