Git Product home page Git Product logo

Comments (17)

pavelnikolov avatar pavelnikolov commented on August 30, 2024

I have the same problem

undefined method `payment' for #<Spree::Order:

It seems that now there can be more than one payment. So we have to replace payment with payments

@order.payments.first...

from spree_paypal_express.

pavelnikolov avatar pavelnikolov commented on August 30, 2024

The problem is with this file spree_paypal_express / app / overrides / spree / shared / _order_details / add_paypal_details.html.erb.deface
instead the changes should override - spree / core / app / views / spree / payments / _payment.html.erb

from spree_paypal_express.

MatthieuBarthel avatar MatthieuBarthel commented on August 30, 2024

Awesome, thanks @pavelnikolov 👍

It would be cool if someone responsible of this repository can check your PR and merge it, some superhero like @radar maybe ? :)

from spree_paypal_express.

JDutil avatar JDutil commented on August 30, 2024

Fix has been merged.

Also Note: Speaking for myself (this does not reflect the Spree teams opinions) I'm pretty sure this extension is no longer maintained by anyone, and I have no interest in maintaining it. I don't like paypal and this extension is badly needing a refactoring or rewrite to clean it up. Members of the community are going to need to pick up the torch to keep this extension going. It probably wouldn't hurt for someone to make their own canonical fork of the project.

from spree_paypal_express.

radar avatar radar commented on August 30, 2024

I'm also speaking for myself when I say I actively avoid working on this project. As much as I would absolutely love there to be a working gateway for PayPal, I don't want to work on this project because it's too much of a mess. It is in desperate need of a refactoring.

from spree_paypal_express.

radar avatar radar commented on August 30, 2024

I've just spent 20 minutes seeing if the PayPal developer experience is as bad as I thought it was.

TL;DR: yes.

I challenge anyone here to attempt to find out how you can get login credentials to even begin to test the express checkout feature. My favourite part was this PDF document. Go ahead, click the link. Then click the link in the next PDF document. Then read through the complete lack of useful documentation.

Whenever do you eventually find that it's at developer.paypal.com (underneath "Accounts" then "Sandbox Accounts", not "My Apps", as I originally thought), your first account creation will fail with "We're sorry but something went wrong. Please delete the account." Why was the account even created in the first place? Does reality even exist any more?

Creating another account succeeds fine. Click the tiny little arrow and then click "Profile" and wait approximately three quarters of an age for the dialog box to load. I don't know why they couldn't have this box loaded in the background already. Click "API Credentials" and then realise that the "Password" and "Signature" fields are blank. Reload the page, go through the whole process again and now MAGICALLY they're there.

Yay!

Now all you have to do is integrate with PayPal. LOL.

Go back and re-visit the Profile dialog box 5 mins later. Find that API credentials have gone missing again.

How can a company so large get things so so so wrong?


Good luck to whoever wants to take this on. It's HARD.

from spree_paypal_express.

MatthieuBarthel avatar MatthieuBarthel commented on August 30, 2024

Ok, thanks to both of you to be clear and giving your opinion. I don't like paypal very much but for european countries there is very few gateways available.

from spree_paypal_express.

cbrunsdon avatar cbrunsdon commented on August 30, 2024

We use paypal express in... THREE spree stores. We're going to have to deal with this eventually, but I don't have a timeline on it. Is there a better option out there for taking paypal payments than this extension? Or have people just been ignoring paypal because this extension is a pain?

from spree_paypal_express.

msevestre avatar msevestre commented on August 30, 2024

Hi all,

I am also using Paypal Express in various stores. While the code is really
hard to understand and definitely needs some TLC , it does the job in store
using spree 1-2 and 1-3
Removing PayPal support in spree is in my opinion not an option, especially
for smaller shops

  • PayPal is from the user perspective easy to use, and recognized
    worldwide. In fact, that recognition is the reason why most customers like
    to use PayPal.
  • Privacy. Especially with smaller, lesser known sites, when paying with
    PayPal, customers are under the impression that their credit card
    information is protected as it is only shared with PayPal
  • For some people, PayPal is their "mad money" account. They feel free
    to spend whatever is in their account, whereas they might hesitate to spend
    on credit or checking account debit.
  • A 2011 comScore study revealed that PayPal users were more than twice
    as likely to complete their purchase compared to shoppers who used other
    checkout or payment options

I am seriously considering rewriting the spree_paypal_extension from
scratch. I won't have time to deal with that before September however. But
then, I am definitely committed to take time and deep dive into PayPal API
(Classic and/or REST)

I would really appreciate any feedback from the spree core team that could
help me understand, where the design issues with the current extension are
and why is this so much of a pain to work with.
How would you do things differently?

Cheers,
Michael

On Fri, Jul 12, 2013 at 12:35 PM, Clarke Brunsdon
[email protected]:

We use paypal express in... THREE spree stores. We're going to have to
deal with this eventually, but I don't have a timeline on it. Is there a
better option out there for taking paypal payments than this extension? Or
have people just been ignoring paypal because this extension is a pain?


Reply to this email directly or view it on GitHubhttps://github.com//issues/151#issuecomment-20888093
.

from spree_paypal_express.

radar avatar radar commented on August 30, 2024

Removing PayPal support in spree is in my opinion not an option, especially
for smaller shops

I agree. In the same way, I think having an official poorly written extension that is used by a whole bunch of Spreeple is not good and that needs to change.

I am seriously considering rewriting the spree_paypal_extension from
scratch. I won't have time to deal with that before September however. But
then, I am definitely committed to take time and deep dive into PayPal API
(Classic and/or REST)

I have already begun this process in my extension called better_spree_paypal_express, however it's pretty rough around the edges right now. The Free Running Technology guys have volunteered to test it out, and I hope I can get some more people on board for that too. Patches very welcome.

I would really appreciate any feedback from the spree core team that could
help me understand, where the design issues with the current extension are
and why is this so much of a pain to work with.
How would you do things differently?

The main pain point imo is that there are no tests around the functionality at all and that it hacks CheckoutController. This is a terrible idea (remember the good ol' days where spree_promo used to do this too?) and I think having a completely separate controller (as is done in better_spree_paypal_express) is the correct way to go about doing things.

Writing some solid integration tests that actually walk through a PayPal checkout flow using PayPal's sandbox is the way to go here. Once we have that framework in place, we will have a nice safety net that we can leverage when things break.

from spree_paypal_express.

cbrunsdon avatar cbrunsdon commented on August 30, 2024

Yea, honestly we don't give a crap what we use, we only care about the functionality. I'm very happy with better_spree_paypal_express having almost no code in it, relaying on activemerchant for the heavy lifting.

Its got some work to do for sure, but at this point even if Radar never makes another commit we'll look after it eventually.

That said, I haven't looked at what it would take to maintain or migrate existing payments using spree_paypal_express when we do finally switch production sites over to better_spree_paypal_express.

from spree_paypal_express.

radar avatar radar commented on August 30, 2024

I've switched better_spree_paypal_express to use PayPal's Merchant SDK. Can I get @cbrunsdon @gmacdougall @msevestre @MatthieuBarthel and so on to test this please?

from spree_paypal_express.

JDutil avatar JDutil commented on August 30, 2024

Thanks @radar @cbrunsdon and @msevestre for looking to pick this up from scratch. I occasionally have clients working with paypal express and it's the only time I touch this project with dread. Having a fresh solution next time around will be welcome.

from spree_paypal_express.

MatthieuBarthel avatar MatthieuBarthel commented on August 30, 2024

Thank you @radar and team :) I tested in development env (Rails 3.2.13, Spree 2.0.3).

On checkout, when I am at stage 3, I select PayPal and click "save and continue", then I get the following flash alert :

Payment could not be processed, please check the details you entered

Everything looks correct in my checkout, I have an address and a delivery method. I tried as guest and registered user, same result. Also I tried with another method (Spree::PaymentMethod::Check) which works.

Do not hesitate if I can do something else.

from spree_paypal_express.

radar avatar radar commented on August 30, 2024

Matthieu: click the PayPal button itself. I need to devise a way of disabling the save and continue button still.

On Fri, Jul 26, 2013 at 2:12 AM, Matthieu Barthel
[email protected] wrote:

Thank you @radar and team :) I tested in development env (Rails 3.2.13, Spree 2.0.3).
On checkout, when I am at stage 3, I select PayPal and click "save and continue", then I get the following flash alert :

Payment could not be processed, please check the details you entered
Everything looks correct in my checkout, I have an address and a delivery method. I tried as guest and registered user, same result. Also I tried with another method (Spree::PaymentMethod::Check) which works.

Do not hesitate if I can do something else.

Reply to this email directly or view it on GitHub:
#151 (comment)

from spree_paypal_express.

MatthieuBarthel avatar MatthieuBarthel commented on August 30, 2024

I just tried, I get the following error :
NameError (uninitialized constant Spree::Gateway::PayPal::SDK): .../better_spree_paypal_express-67513f9e1704/app/models/spree/gateway/pay_pal_express.rb:16:in provider'
.../gems/better_spree_paypal_express-67513f9e1704/app/controllers/spree/paypal_controller.rb:87:in provider' .../gems/better_spree_paypal_express-67513f9e1704/app/controllers/spree/paypal_controller.rb:26:in express'`

from spree_paypal_express.

radar avatar radar commented on August 30, 2024

Please see spree-contrib/better_spree_paypal_express#7

On Fri, Jul 26, 2013 at 7:24 AM, Matthieu Barthel
[email protected] wrote:

I just tried, I get the following error :

.../better_spree_paypal_express-67513f9e1704/app/models/spree/gateway/pay_pal_express.rb:16:in`provider'
.../gems/better_spree_paypal_express-67513f9e1704/app/controllers/spree/paypal_controller.rb:87:in `provider'

## .../gems/better_spree_paypal_express-67513f9e1704/app/controllers/spree/paypal_controller.rb:26:in `express'```

Reply to this email directly or view it on GitHub:
https://github.com/spree/spree_paypal_express/issues/151#issuecomment-21585788

from spree_paypal_express.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.