thephpleague / omnipay-sagepay

Sage Pay driver for the Omnipay PHP payment processing library
MIT License
54 stars 78 forks source link

SCA / 3DSv2 compatibility for Direct and Server #163

Open saintanger opened 3 years ago

saintanger commented 3 years ago

I've pulled in here information / code from multiple issues and blogposts / opayos documentation and discussions with them. Has been tested. Hope it helps anyone else.

judgej commented 3 years ago

Do you have any documentation on how to use these changes or tips on how to test and demonstrate it? I've got this PR checked out and would like to work through it before merging. Couple of little fixes as I go along too. I think we can drop the PHP 5.6 support at this point too, since the latest Omnipay Common needs at least 7.1

judgej commented 3 years ago

When you are using a package you are extending, you don't need to rename it, even if installing it from your own repository. composer will handle fetching your own copy nicely using the repositories section of composer.json. Just mentioning that in case you didn't know.

benjam-es commented 3 years ago

Possibly move the constants from src/Message/AbstractRequest.php to src/ConstantsInterface.php

benjam-es commented 3 years ago

Could the protocol default to 4.00 in src/Message/AbstractRequest.php given it now has getters and setters for those needing to go back to 3.00

protected $VPSProtocol = '3.00';

RicLeP commented 3 years ago

Is this still being looked at? Curious if the package supports 3D Secure V2 without this as it’ll be important going forwards.

benjam-es commented 3 years ago

The package currently works, but will likely stop working when sagepay/opayo stop allowing v3

dhavalbhavsar commented 3 years ago

As i got email from sagepay that "3DS2 Non-compliance". So my question is there any upgradation in these package because from march 2022 it will not allow anymore.

dhavalbhavsar commented 3 years ago

@judgej can you please help in these case please ?

judgej commented 3 years ago

Hi, sorry, got pulled in too many other directions. I meant to look at this months ago.

Do you have links to the documentation that this is for, so we know what it is compliant with, what still needs toi be done, and can offer upgrade advice? If nothing else, I'd like to make sure the README is up-to-date with these changes.

benjam-es commented 3 years ago

Hi Jason, I've used similar code as above in my PI branch to get things working, so happy to offer up some time to bounce ideas back and forth if that will help?

judgej commented 3 years ago

That's PR #165 I guess. I don't mind writing up the documentation, and I think it needs that - even if just to say this version is completely compatible with older versions. Are PR #163 and PR #165 compatible with each other? Can both be merged with a large overlap, or would that duplicate a lot of the functionality?

dhavalbhavsar commented 3 years ago

@judgej here in the mail they send us two link https://developer-eu.elavon.com/docs/opayo-direct/protocol-300-400-migration-guide and https://developer-eu.elavon.com/docs/opayo-direct/api-reference

Edited: links fixed

judgej commented 3 years ago

I do miss the PDFs with everything in one document, and the ability to version them. All that documentation needs to do intio a repo really, so changes can be easily extracted.

benjam-es commented 3 years ago

That's PR #165 I guess. I don't mind writing up the documentation, and I think it needs that - even if just to say this version is completely compatible with older versions. Are PR #163 and PR #165 compatible with each other? Can both be merged with a large overlap, or would that duplicate a lot of the functionality?

Mine will likely conflict as mine has a few differences, but I can tidy mine up with if/when this one is merged.

dhavalbhavsar commented 3 years ago

@judgej i check that PR #163 i think almost all things covered.

judgej commented 3 years ago

Thanks. Hopefully getting to it later today. Working on bringin this one up-to-date too: https://github.com/academe/SagePay-Integration/tree/opayo

Got a bit of a bug, so haven't got much done but rest since I posted this

calico-digital commented 2 years ago

Hey, is there any update to this? Need to get upgraded for next month and happy to help however I can. Cheers

dhavalbhavsar commented 2 years ago

You can use sagepay pi.

On Wed, Feb 2, 2022, 11:37 PM calico-digital @.***> wrote:

Hey, is there any update to this? Need to get upgraded for next month and happy to help however I can. Cheers

— Reply to this email directly, view it on GitHub https://github.com/thephpleague/omnipay-sagepay/pull/163#issuecomment-1028213506, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFOIPTHKKXOG6C2WAKQOY4DUZFXHDANCNFSM47BKUGTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

benjam-es commented 2 years ago

@barryvdh believe this is now covered by the pull request you just integrated, so no longer needed?