Rob Harrington
75ec77dc31
Remove the 'confirm' step from the order checkout flow
...
This step is not being responded to anyway, since we are not rending a page for each checkout step
It was causing an issue whereby an order in the 'confirm' state was not able to progress through the
checkout controller because it was expecting to only redirect to paypal from the 'payment' state.
figured it was easiest to just remove the step, seeing as it wasn't being used in any meaningful way.
It should be fine to bring the 'confirm' step back in the future if we need it, we will just have to
make sure paypal the paypal issue is resolved.
2017-09-23 15:15:06 +10:00
Rob Harrington
a09a54e4cb
Set transaction fee adjustments to ineligible if payment is invalid or failed
2017-09-23 15:15:06 +10:00
Rob Harrington
e486dbd4f8
Respond to Stripe webhook with status of 204 if specified account is not found
2017-09-23 14:58:35 +10:00
Rob Harrington
db5503dd80
Allow destruction of StripeAccounts even if deauthorise request fails
...
Log deauthorise failures to Bugsnag
2017-09-23 14:58:35 +10:00
Rob Harrington
dd3d205536
Update deauthorize webhook to latest version of API (again)
2017-09-23 14:58:35 +10:00
Rob Harrington
90007d7114
Prevent Stripe-based payment methods that are not linked to a StripeAccount from displaying in the checkout
2017-09-23 14:58:35 +10:00
Rob Harrington
7ba99c0fe0
Update Bogus Gateway error message in checkout spec
2017-09-23 14:58:35 +10:00
Rob Harrington
ba61f94906
Expose Stripe token creation error messages in Checkout
2017-09-23 14:58:35 +10:00
Rob Harrington
7c82fa3d44
Show more helpful payment processing error in checkout
2017-09-23 14:58:35 +10: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
d3566f9303
Update deauthorize webhook to latest version of API
2017-09-23 14:58:35 +10:00
Rob Harrington
7d2deca969
Ensure cart_spec runs in context where backorders are disabled
2017-09-23 14:58:35 +10:00
Rob Harrington
0f19be4db4
Configure StripeElements service to map cc_type to that used by activemerchant
2017-09-23 14:58:35 +10:00
Rob Harrington
393a4efbf6
Fix flaky OrderSerializer spec
...
Make sure that completed payment is for an amount less that the order total
2017-09-23 14:58:35 +10:00
Rob Harrington
4785f3eacc
Use lowercased cc_type in CreditCard service
2017-09-23 14:58:34 +10:00
Rob Harrington
e14b017f1f
Fix broken Stripe checkout spec
2017-09-23 14:58:34 +10:00
Rob Harrington
d2096cf6d1
Make request stubs less brittle by using regex
2017-09-23 14:58:34 +10:00
Rob Harrington
08c723b10f
Use expect syntax instead of should
2017-09-23 14:58:34 +10:00
Rob Harrington
61feb2b27d
Rename Stripe existing_card param key to existing_card_id
2017-09-23 14:58:34 +10:00
Rob Harrington
4464a85a74
Add missing controller specs for CreditCardController #destroy
2017-09-23 14:58:34 +10:00
Rob Harrington
9832966b77
Fix Admin::PaymentsController spec
2017-09-23 14:58:34 +10:00
Rob Harrington
0cd43987de
Hide Stripe payment methods without a preferred_enterprise_id from the front-end
2017-09-23 14:58:34 +10:00
Rob Harrington
ca1987fc87
Prevent Stripe payment methods without account owners from being saved
2017-09-23 14:58:34 +10:00
Rob Harrington
ecef905444
Allow Stripe-based payments to be voided (refunded)
2017-09-23 14:58:34 +10:00
Rob Harrington
dd56e03be1
Stop setting host for url helpers in specs
2017-09-23 14:58:34 +10:00
Rob Harrington
2ed5e144ca
Convert problematic embedded shopfronts feature spec into request spec
2017-09-23 14:58:34 +10:00
Rob Harrington
f9df4d4c93
Rewrite js unit specs for Stripe Elements service
2017-09-23 14:58:34 +10:00
Rob Harrington
1aa477c57c
Update feature specs to look for Stripe Elements element
2017-09-23 14:58:34 +10:00
Rob Harrington
69385370ee
Initialize Stripe object only if a publishable_key has been defined
2017-09-23 14:58:34 +10:00
stveep
f065cbe251
Fix specs for saved credit cards: Add payment profile ID to fixture (now denotes that a card has been saved), check for current user to avoid error attempting to inject saved cards as a guest
2017-09-23 14:58:33 +10:00
Rob Harrington
41b7be900c
Restrict the meaning of 'Saved Cards' to mean those with a payment profile
2017-09-23 14:58:33 +10:00
Rob Harrington
4e96487da9
Redirect to #/payment methods from stripe connect callback
2017-09-23 14:58:33 +10:00
Rob Harrington
4865533f26
Restrict edit permissions on Stripe payment methods
2017-09-23 14:58:33 +10:00
Rob Harrington
7c406f7c3a
Use hash navigation to direct users to #/payment_methods from Stripe PM
2017-09-23 14:58:33 +10:00
Rob Harrington
862443ed6d
Add hash navigation to admin Enterprise edit view
2017-09-23 14:58:33 +10:00
Rob Harrington
3b78179dea
Ask customer about saving card details used in checkout
2017-09-23 14:58:33 +10:00
Rob Harrington
f317cee9e9
Tweak UI for selecting an existing card at Checkout
2017-09-23 14:58:33 +10:00
Rob Harrington
35912605c3
Include customer name in source attrs for Stripe checkout requests
2017-09-23 14:58:33 +10:00
Rob Harrington
8901af897a
Store card details submitted via checkout
2017-09-23 14:58:33 +10:00
Rob Harrington
ee92f46bd5
Fix stripe request spec by providing en enterprise_id
...
The enterprise_id is used to lookup a StripeAccount which is provided to the Spree::Token#create call in the StripeConnect gateway
2017-09-23 14:58:33 +10:00
Rob Harrington
44ba499ad9
Stub rather than set Stripe api_key in specs
2017-09-23 14:58:33 +10:00
Rob Harrington
44d172f3b4
Mock stripe_account_id for StripeAccount gateway specs
2017-09-23 14:58:33 +10:00
Rob Harrington
d2b6ba4330
Provide a Stripe client_id for StripeAccountsController spec
2017-09-23 14:58:33 +10:00
Rob Harrington
576e4db9be
Authorize StripeAccount#status using the account object
...
Rather than the enterprise
2017-09-23 14:58:33 +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
ffc99df373
Consolidate Stripe routes/actions into StripeAccountsController
2017-09-23 14:58:33 +10:00
Rob Harrington
5c58d30ca7
Create payment from user-specified payment method when using existing card
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
Rob Harrington
42dd58426e
Auto-correct rubocop offences for stripe-connect
2017-09-23 14:58:32 +10:00
Rob Harrington
ae2d3d3fd9
Refactoring StripeHelper into service objects
2017-09-23 14:58:32 +10:00