Luis Ramos
e52937c113
Use rubocop auto correct to add frozen string literal to all files
...
This is an unsafe auto corection, we will need to trust our build here
2021-06-17 23:07:26 +01:00
Luis Ramos
23627c5453
Run rubocop -a (safe corrections) removing all exceptions so all possible fixes are applied
...
9290 issues fixed
2021-06-17 22:19:26 +01:00
Matt-Yorkley
e686a4f627
Move raising of errors when payment intent state != "requires_capture" out of PaymentIntentValidator service
...
When we're fetching the payment intent via PaymentIntentValidator in StripeSCA#purhcase (to capture it), we want it to fail loudly if it's not in "requires_capture" state. We're now also re-using the same PaymentIntentValidator service to check if payment processing was *successful*, in which case we need it *not* to fail loudly if the state == "succeeded", eg != "requires_capture".
2021-05-16 12:19:04 +01:00
Maikel Linke
fce8d3a2f8
Record invalid payment states for debugging
...
We observed invalid payment states in Bugsnag but we don't actually know
in which state the payment intent was in. From the context we can guess
that it was "succeeded" but it would be good to validate this. And in
the future it would be good to know if there are other invalid states we
can end up in.
The notification to Bugsnag happens in another part of the code.
2021-03-22 16:35:22 +11:00
Andy Brett
6996001580
add defensive checking for stripe response
2021-03-13 10:58:30 +00:00
Andy Brett
ab5ffead1d
require that the redirect url be to stripe.com and over https
2021-01-21 09:18:29 -08:00
Andy Brett
3d8c7cc9f0
Merge pull request #6522 from arku/feat/stripe-credit-card-removal
...
Extract Stripe credit card deletion logic to a service object
2021-01-02 14:56:00 -08:00
Andy Brett
b4e47217ef
Merge pull request #6523 from arku/fix/credit-card-clone-destroyer
...
Handle nil stripe customer in credit card clone removal logic
2020-12-21 14:27:16 -08:00
Andy Brett
13d6d2c978
separate conditionals 🤦
2020-12-17 13:23:14 -08:00
Arun Kumar Mohan
020df3619f
Add tests for Stripe::CreditCardRemover
2020-12-12 21:39:21 -05:00
Arun Kumar Mohan
f02f2c540c
Handle nil stripe customer in credit card clone removal logic
2020-12-12 21:31:06 -05:00
Andy Brett
655512adab
add missing require statements
2020-12-10 12:17:42 -08:00
Andy Brett
f50577b489
refactor cloner to use ivars
2020-12-10 11:42:28 -08:00
Andy Brett
a1f6fe5522
remove unused method now that we use autopaging
2020-12-10 11:22:14 -08:00
Andy Brett
8c747e4812
refactor destroy_clones to separate class
2020-12-10 11:22:02 -08:00
Andy Brett
4c25edd91c
refactor find_cloned_card to separate class
2020-12-10 11:04:27 -08:00
Andy Brett
13b95f41bb
use built-in auto_paging_each with stripe
2020-12-10 08:19:41 -08:00
Andy Brett
103366ea97
add request limits to credit card cloner
2020-12-08 07:52:42 -08:00
Andy Brett
9c544ef2f4
remove cloned cards after removing the platform card
2020-12-08 07:52:42 -08:00
Andy Brett
a466886a32
fix rubocop warnings
2020-12-08 07:52:42 -08:00
Andy Brett
fea7576ac1
update CreditCardCloner to find existing clone
2020-12-08 07:52:42 -08:00
Luis Ramos
f848a89a00
Rename update_attributes to update #rails4
2020-06-22 16:51:43 +01:00
Luis Ramos
1c628fac58
Merge branch 'master' into 3-0-stable-mar20
2020-03-20 11:28:06 +00:00
Luis Ramos
0815068050
Merge branch 'master' into 3-0-stable-mar6
2020-03-06 09:20:03 +00:00
Luis Ramos
b54b981740
Improve readability of PaymentIntentValidator and cover with specs
2020-03-02 17:30:12 +00:00
luisramos0
6877485c90
Extract AuthorizeResponsePatcher from stripeSCA gateway
2020-03-02 17:30:12 +00:00
luisramos0
95c1b7f7a6
Extract PaymentIntentValidator from StripeSCA gateway
2020-03-02 17:30:12 +00:00
Matt-Yorkley
53645517af
Update deprecated #find_by_* methods
2020-02-22 11:06:51 +00:00
luisramos0
404e7c1f37
Make credit card cloner clone the payment method even if the customer is not given
...
This makes the payments without saving card work again in the frontoffice as well as the payments taken by the seller in the backoffice
2020-02-21 14:11:13 +00:00
Luis Ramos
ccb4c77d1f
Adapt credit card cloner to not clone card if it's a card to be used only once
...
Adapt stripe_sca specs to new cloner logic
2020-02-21 10:56:32 +00:00
luisramos0
5ef1510fc7
Adapt CreditCard cloner to clone not 'cards of the platform account to payment_methods of the connected accounts' but instead 'cards or payment_methods of the platform account to payment_methods of the connected accounts'
...
This process mimicks the existing process of generating a token on the connected account from a card on the platform account. In the Payment Intents API we need to create a payment method in the connected account, a token is not enough
2020-02-21 10:56:32 +00:00
luisramos0
1afd712ff4
Make StripeSCA store cards (and delete them) on the Stripe platform account and not the Stripe Connected account (the sellers accounts)
...
This is important so that cards can be re-used across sellers in OFN
2020-02-21 10:56:32 +00:00
luisramos0
3fb1df9bb3
Rename CardCloner to CreditCardCloner because it's dependent on Spree:CreditCard attributes
2020-02-21 10:56:32 +00:00
luisramos0
14c03ead31
Extract CardCloner to separate class
2020-02-21 10:56:32 +00:00
luisramos0
b8457ebece
Make profile storer a bit easier to read
2020-02-21 10:52:56 +00:00
luisramos0
ac8f3c811f
Fix rubocop issues in some stripe integration related files
2020-02-21 10:52:55 +00:00
luisramos0
ec7b91bb68
Make ProfileStorer a bit easier to read
2020-02-21 10:52:29 +00:00
luisramos0
db1065a69e
Make saving a card on checkout work with the payment intents api by making profile storer work with the slightly different api responses from stripe
2020-02-21 10:52:29 +00:00
luisramos0
9404aacfb2
run rubocop --auto-correct
2019-11-10 18:42:43 +00:00
luisramos0
86b0d71c7e
Result of rubocop auto-correct and rebuilding rubocop_manual_todo
2019-05-28 12:57:29 +01:00
Pau Perez
b23cb55525
Fix current violations of Style/Send cop
2018-09-05 12:05:05 +02:00
Rob Harrington
01f9fd3232
Rename webhook handler status mappings
2017-10-12 22:47:51 +11:00
Rob Harrington
ed375a1e2c
Build Event object in controller instead of service object
2017-10-12 20:51:17 +11:00
Rob Harrington
4345285164
Allow more granularity in Stripe WebhookHandler responses
2017-10-12 20:51:17 +11:00
Rob Harrington
f22dd7513d
Add a service object for handling Stripe webhooks
2017-10-11 17:50:46 +11:00
Rob Harrington
665749d0c5
Refactor Stripe::AccountConnector
...
Connector now handles cancellation of the connection wizard by the user more elegantly
2017-09-23 14:58:35 +10:00
Rob Harrington
0e42c1cf30
Refactor ProfileStorer, call options as a separate method
2017-09-23 14:58:34 +10:00
Rob Harrington
a74c502fd9
Refactor logic for creating a payment profile from a Stripe token into a service object
2017-09-23 14:58:34 +10:00
Rob Harrington
ce65a9d063
Bump stripe gem version to 3.0.1
...
Allows us to use the stripe gem's built-in OAuth wrappers, rather than our own
2017-09-23 14:58:33 +10:00
Rob Harrington
5b675cbaba
Make OAuth private methods actually private
2017-09-23 14:58:32 +10:00