academe / OmniPay-Payone

A PAYONE gateway driver for the OmniPay framework
MIT License
15 stars 16 forks source link

Usage with payum andpayum omnipay bridge #13

Closed mcbuckets closed 7 years ago

mcbuckets commented 7 years ago

Is it possible to use this library with payum omnipay bridge? I have tried to use the Frontend API to obtain cardpan and process it further with Server API but using a bridge leaves me with payum gateway execute method only which redirects me offsite to payone site.

judgej commented 7 years ago

In short, I have no idea! However:-

If you have some example code showing how you expect it to work, and what happens instead, we could knock it into shape. The Frontend API is kind of not very standardised across OmniPay yet, though with gateways popping up all over the place using AJAX card tokenisation (which, if I understand, is where this is going wrong?) then some standards need to be set. We can see how other AJAX gateways interact with payum to see what we can pull out for consistency.

judgej commented 7 years ago

With the Frontend API in this gateway driver, you have an option to send the user to the remote gateway, or put the form into an iframe - both work. Either way, the form is hosted remotely, can be pre-filled with person and address details, can allow the user to emend those details or block them from doing so. The result is always sent back to your site through the back-channel notification handler, so that must be set up too.

judgej commented 7 years ago

The Client API is a lot more like Stripe. You build your own form and either POST direct to PAYONE (which returns without any further user interaction) or use AJAX to generate a card token that is then POSTed to your site. Again, both ways are supported. The payment is then performed by your server using the card token, so no back channel is needed (though it does get triggered too, which can be logged for auditing).

mcbuckets commented 7 years ago

Thank you @judgej. It makes sense now. I was in a dilemma of using payum in this step or not. I'm gonna go with iframe and capturing with payum on server side.