Commit Graph

207 Commits

Author SHA1 Message Date
Justin DiRose 9491f558ea
FEATURE: Add support for 3D Secure payments (#19)
Adds an additional checkout flow to support authentication of payment methods.
2020-07-24 15:07:18 -05:00
Justin DiRose 587661fafb
FEATURE: Allow one-time purchases on products (#18)
Building off the foundation of using the Prices API, this PR adds the ability to create a one-time purchase plan for any product, which then can add a user to the specified plan group.

Some things to be aware of:

    One-time purchases cannot have trials.
    One-time purchases use the Invoice API instead of Subscriptions. Invoices are created then charged immediately.
    Users should receive emails for these invoices directly from Stripe just like subscriptions.
2020-07-22 11:06:34 -05:00
Justin DiRose c9ff55b46a
REFACTOR: Use the Prices API in place of Plans (#17)
Stripe has a newer API called Prices where you can create a price for any product and it can either be recurring or one-time. The easy part is existing Plans work with the Prices API by passing a Plan ID, but objects are returned in the slightly-different Prices API object format.

This commit is a refactor to the new API to handle the data in its new form, and lays the foundation for a one time payment plan to be added to any subscriptions product.
2020-07-15 08:44:40 -05:00
Justin DiRose fb4f50478d
REFACTOR: Use engine to load files, add constraint (#14) 2020-07-06 11:11:04 -05:00
Justin DiRose 9c46794e80
DEV: Remove deprecations & improve error handling (#12)
- Replace deprecated methods on client
- Fix broken dropdowns due to select kit 2 upgrade
- Graceful error handling when Stripe keys are not configured but plugin enabled
2020-05-28 10:32:57 -05:00
Justin DiRose fb4fac197b
REFACTOR: Use models to store data (#11)
* REFACTOR: Use api to add subscribe link

* FIX: I18n subscribe link

* REFACTOR: Use models to store some data

This enables the plugin to show only subscription information which was
generated on Discourse. Subscription data storage is limited to the
external identifiers Stripe generates so we can interact with the API.

* DEV: Test/linting fixes/rake task
2020-05-22 11:20:05 -05:00
Rishabh 3d9fe5fdce
Update README.md & plugin.rb after moving to /discourse 2020-04-29 16:27:17 +05:30
Rimian Perkins 69af94b31f upgrade stripe gem 2020-04-27 19:22:23 +10:00
Rimian Perkins 39564ea779 bump 2020-03-21 20:35:05 +11:00
Rimian Perkins 4ed5d163dd upgrade stripe gem 2020-03-20 10:30:32 +11:00
Rimian Perkins 1e62f698ee bump 2020-01-28 09:11:15 +11:00
Rimian Perkins 3ec1907c1c upgrade stripe gem 2020-01-15 10:33:33 +11:00
Rimian Perkins 431279a4f7 Add empty webhook url and upgrade stripe gem 2020-01-10 10:24:09 +11:00
Rimian Perkins 7f4fb2a503 upgrade stripe gem 2020-01-10 09:59:42 +11:00
Rimian Perkins 330e6f6a2d bump with ux changes 2019-12-18 09:10:14 +11:00
Rimian Perkins 52db93ecd8 user payments page 2019-12-17 16:31:58 +11:00
Rimian Perkins f21891453b rm removed file reference 2019-12-16 11:09:43 +11:00
Rimian Perkins 55f4592033 subscription and billing templates 2019-12-16 10:42:55 +11:00
Rimian Perkins 57fb508514 buttons for selecting price and one time payment 2019-12-13 10:41:14 +11:00
Rimian Perkins a14d26f186 bump with ux change on payment page 2019-12-12 10:09:16 +11:00
Rimian Perkins 2ce314fc8d initial payment buttons component 2019-12-06 13:52:03 +11:00
Rimian Perkins 2c1eb9b22b bumpus 2019-12-05 17:20:43 +11:00
Rimian Perkins 42b79fdaaa bump and upgrade api 2019-12-05 10:29:26 +11:00
Rimian Perkins 80b721ddd8 rename some settings 2019-12-04 11:53:05 +11:00
Rimian Perkins b397ba5a68 name space module 2019-12-04 11:23:45 +11:00
Rimian Perkins 0b908e4da8 rename engine file 2019-12-04 09:44:20 +11:00
Rimian Perkins 21b8340f4f rename the translations 2019-12-04 09:29:13 +11:00
Rimian Perkins d8a3ae5554 fix broken unauthenticated page 2019-12-03 14:31:15 +11:00
Rimian Perkins e10af61f10 bump. table rename 2019-12-03 13:39:28 +11:00
Rimian Perkins 6d71d26574 rename assets 2019-12-03 11:51:18 +11:00
Rimian Perkins 08cbff0c1c change engine mount point and base path in jsapp 2019-12-03 10:29:44 +11:00
Rimian Perkins 382fd4ac41 name space the js admin 2019-12-02 18:58:14 +11:00
Rimian Perkins b1db6e7a4c set currency 2019-11-30 17:44:16 +11:00
Rimian Perkins 57a18f5a4e whoops did not set currency 2019-11-30 17:24:49 +11:00
Rimian Perkins 325ca5d7b3 bumpus with currency select in plan 2019-11-30 17:07:52 +11:00
Rimian Perkins 66051b35fc bump. done for card css 2019-11-29 15:54:41 +11:00
Rimian Perkins 947ec4338e css the card 2019-11-29 15:08:51 +11:00
Rimian Perkins dc42a057aa fix remove from groups 2019-11-29 12:16:27 +11:00
Rimian Perkins 3904310432 group concern 2019-11-29 09:01:56 +11:00
Rimian Perkins c7dcc18923 Bump stripe gem 2019-11-27 10:50:06 +11:00
Rimian Perkins 7340bf5bc5 fix customer id not found 2019-11-26 11:09:54 +11:00
Rimian Perkins 75f5ec4393 fix missing radix on parseInt 2019-11-19 10:21:05 +11:00
Rimian Perkins 423abc8761 bump with spinners 2019-11-14 14:34:28 +11:00
Rimian Perkins e4093e5a69 fix null delete subscription error 2019-11-14 12:07:24 +11:00
Rimian Perkins 533dc943d3 bump with auth on subscribe page 2019-11-14 11:23:06 +11:00
Rimian Perkins 6590d8051c delete subscriptions in admin 2019-11-14 10:51:04 +11:00
Rimian Perkins 0f17acc47e rm unused var 2019-11-13 15:33:53 +11:00
Rimian Perkins 91d9d12371 bump version. subscription metadata 2019-11-13 10:31:45 +11:00
Rimian Perkins 608a778b05 upgrade stripe gem 2019-11-12 12:44:40 +11:00
Rimian Perkins 7c350b7881 fix broken merge. Doh! 2019-11-08 08:55:23 +11:00