Jump to content
thirty bees forum

Strong Customer Authentication - SCA


michael

Recommended Posts

1 minute ago, datakick said:

you mean earlier version of stripe module?

That does not support SCA, so you wont be to receive payments past September

It has 3d checks -is that not the same? When I enter card details it does ask for postcode as a check and also the 3d Mastercard page appears)

However if we use the checkout form rather than the card form then it goes to the stripe checkout page so that should cover it?

I will also talk to the devs and see what they say - Damn Paypal for spoiling my life !

Link to comment
Share on other sites

On 7/12/2019 at 8:03 AM, datakick said:

I don't think this is an issue with this module. I bet you are using some third party one-page checkout module, aren't you?

I think all people would be able to use in OPC modules. I'm trying in mine and works fine.

Did you put the down limit on 50 cents? xD

Link to comment
Share on other sites

5 hours ago, danwarrior said:

I think all people would be able to use in OPC modules. I'm trying in mine and works fine.

Did you put the down limit on 50 cents? xD

Of course it should work with every OPC module, but unfortunately it's not that simple. It's because payment modules are (historically) based on hookPayment which directly returns html code. This html code is supposed to contain one payment button to submit the standard checkout form. And it's very hard to reuse this html code inside different flow, like in OPC. For example, while in standard flow click on payment button submits/completes the checkout, in OPC it usually only selects the payment method. 

Most OPC modules works because of some black magic. They usually render the original html code inside invisible section of  the page, and in the same time they parse the html and scrape information (payment logo, text, etc). They then render their own html content using these information. When you click on final submit button, they must also perform virtual click on the (hidden) payment button.

This is very complicated process, and it doesn't work in 100% of the cases. In this particular case, @haylau uses OPC module that doesn't do this job well enough. 

 

  • Like 1
Link to comment
Share on other sites

  • 1 month later...

I've just installed this update and tested it. It won't work at all with any of the stripe test cards. No matter which one I use, it says declined straight away.

So I tried it with my card and it seemed to process it, but then went to a page saying this:

 An error occurred:

  • Failed to create stripe review object

And the order has not come through. 

Any idea what could be wrong? I'm using the standard thirty bees 5 step checkout.

 

 

Link to comment
Share on other sites

4 minutes ago, spidawebs said:

I've just installed this update and tested it. It won't work at all with any of the stripe test cards. No matter which one I use, it says declined straight away.

So I tried it with my card and it seemed to process it, but then went to a page saying this:

 An error occurred:

  • Failed to create stripe review object

And the order has not come through. 

Any idea what could be wrong? I'm using the standard thirty bees 5 step checkout.

 

 

- test cards can be used in test environment only. If you use production client id/secret, stripe will of course decline it.

- regarding error -- check that database table <PREFIX>_stripe_review exists and contains all required columns

CREATE TABLE `tb_stripe_review` (
  `id_stripe_review` int(11) NOT NULL AUTO_INCREMENT,
  `id_order` int(11) unsigned NOT NULL,
  `status` int(11) unsigned NOT NULL DEFAULT '0',
  `id_review` varchar(255) DEFAULT NULL,
  `id_payment_intent` varchar(255) DEFAULT NULL,
  `id_charge` varchar(255) DEFAULT NULL,
  `captured` tinyint(1) DEFAULT NULL,
  `test` tinyint(1) DEFAULT NULL,
  PRIMARY KEY (`id_stripe_review`)
)

 

Link to comment
Share on other sites

That table doesn't exist, so I've just tried to create it with that code, but it won't create it. It says:

dot.gif MySQL returned an empty result set (i.e. zero rows). (Query took 0.0226 seconds.)
CREATE TABLE `tb_stripe_review` ( `id_stripe_review` int(11) NOT NULL AUTO_INCREMENT, `id_order` int(11) unsigned NOT NULL, `status` int(11) unsigned NOT NULL DEFAULT '0', `id_review` varchar(255) DEFAULT NULL, `id_payment_intent`varchar(255) DEFAULT NULL, `id_charge` varchar(255) DEFAULT NULL, `captured` tinyint(1) DEFAULT NULL, `test` tinyint(1) DEFAULT NULL, PRIMARY KEY (`id_stripe_review`) )
 
...but the table is still not there?
Link to comment
Share on other sites

  • 3 weeks later...
On 8/16/2019 at 9:44 AM, spidawebs said:

I've just installed this update and tested it. It won't work at all with any of the stripe test cards. No matter which one I use, it says declined straight away.

So I tried it with my card and it seemed to process it, but then went to a page saying this:

 An error occurred:

  • Failed to create stripe review object

And the order has not come through. 

Any idea what could be wrong? I'm using the standard thirty bees 5 step checkout.

 

I have that error on my live site, can anyone help?

Bug Report:

https://github.com/thirtybees/stripe/issues/28

Link to comment
Share on other sites

check that database table <PREFIX>_stripe_review exists and contains all required columns

CREATE TABLE `tb_stripe_review` (
  `id_stripe_review` int(11) NOT NULL AUTO_INCREMENT,
  `id_order` int(11) unsigned NOT NULL,
  `status` int(11) unsigned NOT NULL DEFAULT '0',
  `id_review` varchar(255) DEFAULT NULL,
  `id_payment_intent` varchar(255) DEFAULT NULL,
  `id_charge` varchar(255) DEFAULT NULL,
  `captured` tinyint(1) DEFAULT NULL,
  `test` tinyint(1) DEFAULT NULL,
  PRIMARY KEY (`id_stripe_review`)
)
Link to comment
Share on other sites

There are several solutions and further problems being listed on the bug report:

https://github.com/thirtybees/stripe/issues/28

Note that while payments may appear to fail for the customer, with an error message like

     Failed to create stripe review object

The payment may actually be going through without triggering an order in TB. In which case you need to match the payments up with abandoned carts and convert to orders.

Edited by annafjmorris
Link to comment
Share on other sites

UK’s FCA delays, what about other countries?

It does not say whole EU will delay the process, only UK which will leave EU (probably).

When other countries will not deley the new law please not that if you sell in EU not only in UK anyway you will have problems with payments.

Edited by michael
update
Link to comment
Share on other sites

Exceptionally good catch - It didn't occur to me this would not apply to everyone. It's not just the uk though, it's all these countries:

Austria, Belgium, Denmark, Finland, France, Germany, Ireland, Italy, Luxembourg, The Netherlands, Norway, Poland, Slovenia, UK and to a lesser extent Sweden.

So 13 countries have done it already, and 15 have not. (https://support.stripe.com/questions/strong-customer-authentication-sca-enforcement-date )

Thanks so much for noticing that, I am so used to UK centric language when it comes to the EU at the moment, that I didn't event notice!

 

Link to comment
Share on other sites

What is your reason not to upgrade the module?

I do think it's important to update before the deadline. The fact that it's not yet required by law doesn't mean that some of the banks and other institutions won't be using these new security features. After all, this does bring benefits to both card holders and card issuers. And they have invested significant resources to implement them. 

By using checkout flows that does not support SCA you are opening yourself to the risk that some payments will be declined. 

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...