2012-04-24 11 views
15

Już zaczynam układać moją pierwszą stronę z paskiem, ale czuję, że mogłem zaprojektować integrację mojego paska znacznie lepiej niż ja. Główne problemy, na które natknąłem się, to: jak utrzymywać stan konta pasków (próbne i przeterminowane itp.), Jakie są ważne sesje internetowe (i najlepsze sposoby radzenia sobie ze wszystkimi zdarzeniami) i ile danych powinienem duplikować w mojej bazie danych i ile powinienem pobrać z bazy danych Stripe.Stripe recurring/subskrypcja Billing najlepszy projekt/praktyki?

Chciałbym rzucić trochę pomysłów na to, co byłoby najlepsze. W celach informacyjnych rozwinąłem moją stronę w Ruby na szynach, rozmieszczono ją na heroku, użyłem wysłać siatkę heroku dodać, aby wysyłać powiadomienia e-mail o rachunkach, spóźnionych płatnościach, itp.

Również dla osób używających paska na RoR, oto kilka dobrych zasobów że kiedyś (choć nie znalazłem jeden, który naprawdę obejmuje cykliczne płatności/subskrypcja z paskiem):

RailsCast:

Oczywiście dokumentacji paskiem i API:

ten mały kawałek kodu dla webhooks/korespondencyjny

Odpowiedz

1

SaaS Rails Kit (który stworzyłem) integruje się z paskiem, przechowując informacje o karcie z paskiem (nie ustanawiając opłaty cyklicznej), odzyskując token, a następnie rozliczając token za pomocą codziennego zadania cron, gdy konta osób są należne.

Kilka korzyści dla tego podejścia to nie martwienie się o haczyki internetowe/utrzymywanie synchronizacji obu systemów oraz możliwość wykonywania rozliczeń z pomiarem oprócz stałej miesięcznej opłaty.

+1

interesujące, więc w zasadzie ręcznie wszystko sobie z nimi poradzisz na twoim końcu – hajpoj

+10

Dlaczego chcesz skonfigurować zadania cron do obsługi tego, gdy Stripe ma już cykliczną/subskrypcyjną fakturę jako funkcjonalność? – JM4

+0

Jestem googeling dla rozwiązania, ponieważ podobnie jak 2 godziny. Każdy zasób znajduję tam gdzieś komentarz od ciebie. – b1nary

3

W odniesieniu do powielania - zdecydowałem się przechowywać lokalnie klucz klienta tylko na moich rekordach użytkownika. Wszystko inne, faktury, transakcje itp. Są przechowywane w Stripe. IMO najlepiej nie próbować zachować parytetu między obydwoma systemami - w najlepszym razie będziesz mieć duplikaty danych, w najgorszym wypadku wywołasz różnego rodzaju bóle głowy, nie będąc zsynchronizowanymi ...

+1

Huh Próbowałem nie utrzymywać parzystości, ale chciałem użyć statusu konta, aby wyświetlać komunikaty o błędach podczas ładowania strony, ale połączenia z paskiem trwały zbyt długo, aby uzyskać status, a zatem ładowanie strony zajęło dużo czasu. – hajpoj

+1

Co z buforowaniem wywołań Stripe? Problemy z ładowaniem stron wystąpią tylko przy pierwszym uruchomieniu wywołania interfejsu API.Kolejne wywołania są wyciągane z pamięci podręcznej. –

+0

@ChristianFazzini Wiem, że minęło kilka lat, ale zakładam, że mówisz o Stripe.js dla tych połączeń i pamięci podręcznej, czy też jest jakaś pamięć podręczna po stronie serwera, której można użyć ? –