Open krzysztofbialek opened 8 years ago
Same problem here.
I think @meal or @ianfleeton seemed to fix it here: https://github.com/ianfleeton/paypal-express/commit/cebd62f02966f74a8aa3ece5d1793be9327048a0
Maybe we can merge that back into the canonical version? @nov are you still maintaining this or is there a new canonical fork?
This was @meal's work - my fork contains two improvements, neither by me. A merge from @meal's would be better.
I can create PR for this but I'm not sure if @nov still maintains this repository.
There already are pending PR with this change...Looks like this got abandoned
That's a pity because this gem is very useful and i used it in three projects already!
Which fork are you currently using guys?
I've started using my own fork as I need the changes I've pulled in so far, which include changes from more than one other fork.
I am working on a project that depends on this library for the next year. I'm happy to become a maintainer for the next year or so if it helps others, focusing on bug fixes / minor improvements rather than new features. I've not maintained a project before but first time for everything. Unless there are any other takers? @nov?
awesome @ianfleeton do that! we need somebody to take over. A quick paypal integration gem is quite useful and we can't let it die.
I tried to contact @nov multiple times on email, twitter and github, but no answer. Let's move on!
@nov what about creating an organization for the gem? Time for this useful child to fly away?
If @nov doesn't reply, we may well create the org and move on. @ianfleeton if you need some help, I may find some time here and there.
Excellent, I'll wait to see if anything happens by Sunday and if no news I'll start reviewing the current open issues and pull requests with a view to moving things forward. Any and all help welcome :)
@ianfleeton @dgilperez shall we? 👍
I've made a few commits and pulled in some others' changes into https://github.com/ianfleeton/paypal-express by making pull requests from their forks and merging them.
Fixed:
The next two items to look at:
Is it time to move the discussion over to ianfleeton/paypal-express?
Cheers!
if you guys want help and support from an organisation - AgileVentures is a charity that could help - we were just thinking about integrating paypal
Happy to provide a home for the project at https://github.com/AgileVentures/ if that's any help
I see that Paypal also has their own ruby gem https://github.com/paypal/PayPal-Ruby-SDK - is that any relation?
PayPal Express uses the NVP / SOAP APIs instead of the REST APIs provided by that library. I don't think they overlap, but I'm not 100%.
I encountered this same problem and it turns out that the issue was that, although the paypal-express gem hadn't changed, I had upgraded the rest-client gem from 1.8.2 to 2.0.0. The slight change between the versions is that they serialize querystring parameters slightly differently. Where 1.8.2 would emit:
&SUBJECT=&VERSION=0.88
2.0.0 emits:
&SUBJECT&VERSION=0.88
Although many servers understand this, seemingly Paypal's doesn't. (I'm guessing it sees one parameter named "SUBJECT&VERSION" with value "0.88" - and then complains that there's no VERSION in the request).
I have implemented a horrible workaround for now (evilly monkey-patching RestClient::Utils#encode_query_string). Although fixing to 1.8.2 of the rest-client gem works, too.
@ktopping have you tried using a later API version -- e.g., 204.0 to see if that helps? The fork over at https://github.com/ianfleeton/paypal-express uses that. If you find the same problem with that fork I'd be interested to know. Also, this fork includes the required version parameter in many more places.
I have that running with rest-client 2.0.0 no problems, though I haven't dug in to see whether the SUBJECT param is or isn't set in my usage.
(I find it interesting that your monkey patching did make a difference.. hmm)
Quick solution: using the fork from Ian Fleeton
gem 'paypal-express', github: 'ianfleeton/paypal-express'
I've pulled into the above PR #98 from @ursm (thanks!) which hopefully addresses this problem by explicitly setting a blank string for the subject parameter if it's nil.
Thanks for the replies. I have it working at the moment but will try upgrading to ianfleeton's fork next time I rebundle.
Following @pastullo's suggestion worked for me. Thank you. Too bad that this repo doesn't seem to be receiving any attention from the creator anymore.
We just upgraded rest-client from 1.8.0 to 2.0.2 and started getting this "Version error". Changing to ianfleeton's fork as mentioned by @pastullo above fixed it. Thank you!
Hi! If you want not change of repository you can use monkey patching. This is the code:
File: config/initializers/paypal.rb
....
Paypal::NVP::Request.class_eval do
def common_params
{
USER: self.username,
PWD: self.password,
SIGNATURE: self.signature,
SUBJECT: self.subject,
VERSION: self.version,
version: self.version # This is necessary
}
end
end
A little bit late, but I hoppe help some one.
This solution was taking from ianfleeton/paypal-express repository, so thanks a lot ianfleeton
When trying to register transaction I get:
Full message says that version is not supported. I tried setting
Paypal.api_version
to latest and different values and it doesn't help.This started happening suddenly yesterday. It was working fine few days ago.
full code of method
Still, example curl from paypal page works on sandbox event with my credentials