Jump to content



Latest News: (loading..)

* * * * * 12 votes

PayPal WPP Direct Payments & Express Checkout Support


  • Please log in to reply
4286 replies to this topic

#41   ken.yong

ken.yong
  • Members
  • 131 posts
  • Real Name:Ken Yong

Posted 13 October 2005 - 06:52 PM

I totally agree with SteveDallas on Point 1 and 3.

In addition, PWA works well - No problem at all.

#42   dynamoeffects

dynamoeffects
  • Members
  • 1,646 posts
  • Real Name:Brian Burton
  • Gender:Male
  • Location:Italy

Posted 13 October 2005 - 07:04 PM

SteveDallas said:

1. If you log in or checkout without an account (PWA), the EC button appears at the top of checkout_shipping.php.  I think that a better placement would be on checkout_payment.php, along with the other payment methods.

Unfortunately, PayPal has specified the exact placement of their Express Checkout button.  It must show up in the checkout process before you ask your customer for their shipping information.  The main goal of this module has been to make it fully compliant with PayPal's TOS, so for that reason alone I won't change it in the official contrib.  I suppose you could change it on your individual store, though.  I really doubt if PayPal would ever cause a stink.

SteveDallas said:

2. When Express Checkout has been selected as the payment method, the checkout confirmation page displays the payment method as "PayPal Direct Payment & Express Checkout".  I realize that this is the module name, but is there a way to display it as "PayPal Express Checkout" without splitting the payment module into two parts?

Sure, that wouldn't be too hard to do.  I'll probably release a v0.3 in a couple days to fix any new bugs that pop up and I'll get that in there.

SteveDallas said:

3. When presenting payment options, checkout_payment.php displays the module name, but the module only offers the direct payment options.  In addition, the PayPal name shouldn't even appear for direct payments.  A generic "Credit Card" text would be more appropriate.  I haven't dug into the architecture deeply enough to determine whether this can be done easily.

Edit the file: /catalog/includes/languages/english/modules/payment/paypal_wpp.php and change the "MODULE_PAYMENT_PAYPAL_DP_TEXT_TITLE" line to whatever you want.
Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

#43   bharper

bharper
  • Members
  • 8 posts
  • Real Name:Brad Harper

Posted 13 October 2005 - 07:05 PM

View PostSteveDallas, on Oct 13 2005, 02:30 PM, said:

3. When presenting payment options, checkout_payment.php displays the module name, but the module only offers the direct payment options.  In addition, the PayPal name shouldn't even appear for direct payments.  A generic "Credit Card" text would be more appropriate.  I haven't dug into the architecture deeply enough to determine whether this can be done easily.


This is easily changed in /includes/languages/english/modules/payment/paypal_wpp.php on line 8.

If you change it here it will also alter how it is displayed in the admin=>payment modules section.

-bh

#44   SteveDallas

SteveDallas
  • Members
  • 720 posts
  • Real Name:Glen
  • Gender:Male
  • Location:Alabama, US

Posted 13 October 2005 - 09:58 PM

View Postbharper, on Oct 13 2005, 02:05 PM, said:

This is easily changed in /includes/languages/english/modules/payment/paypal_wpp.php on line 8.

If you change it here it will also alter how it is displayed in the admin=>payment modules section.

-bh

The problem is that the same variable (MODULE_PAYMENT_PAYPAL_DP_TEXT_TITLE) is also used to display the payment method in checkout_shipping.php, so EC payments show up with a payment method of "Credit Card" if you change it.  Therefore, making the payment method show up correctly both in the payment method list and in the confirmation requires a bit more magic.  I'll have a more detailed look at it.

--Glen

#45   SteveDallas

SteveDallas
  • Members
  • 720 posts
  • Real Name:Glen
  • Gender:Male
  • Location:Alabama, US

Posted 13 October 2005 - 10:32 PM

View Postdynamoeffects, on Oct 13 2005, 02:04 PM, said:

Unfortunately, PayPal has specified the exact placement of their Express Checkout button.  It must show up in the checkout process before you ask your customer for their shipping information.  The main goal of this module has been to make it fully compliant with PayPal's TOS, so for that reason alone I won't change it in the official contrib.  I suppose you could change it on your individual store, though.  I really doubt if PayPal would ever cause a stink.

In this case (user was presented the EC button and chose something else), I believe that it is reasonable to hide the button on the shipping address page.  However, when he gets to the payment selection page, he should still have the opportunity to select PayPal if he changed his mind during the checkout process.  The rules for the placement of PayPal with other payment methods should apply at this point.

--Glen

#46   ken.yong

ken.yong
  • Members
  • 131 posts
  • Real Name:Ken Yong

Posted 14 October 2005 - 12:17 AM

Hi, another problem.... My Express Checkout button is returning error 10417. I know this is not an issue of the module so I have contacted Paypal for help. They asked me if I can provide my logs of SOAP requests and responses. They are looking for the XML documents that are sent to PayPal and the XML documents returns to my server in the process of performing the Express Checkout. There should be three API calls, each with its own request and response document.

In addition, they asked what PayPal SDK, if any, is the module using?

Any help on how to retrieve or turn on logging of SOAP requests and responses will be greatly appreciated!!

Ken

#47   SteveDallas

SteveDallas
  • Members
  • 720 posts
  • Real Name:Glen
  • Gender:Male
  • Location:Alabama, US

Posted 14 October 2005 - 05:53 AM

I'm new to PHP and osCommerce, but I have been programming off and on for years.  I have figured out how to make the payment method show up correctly for both Express Checkout and Direct Payments.

Add these lines to catalog/includes/languages/english/modules/payment/paypal_wpp.php:

  define('MODULE_PAYMENT_PAYPAL_DP_TEXT_EC_TITLE', 'PayPal Express Checkout');
  define('MODULE_PAYMENT_PAYPAL_DP_TEXT_DP_TITLE', 'Credit/Debit Card');

In catalog/includes/modules/payment/paypal_wpp.php, change:

     $this->title = MODULE_PAYMENT_PAYPAL_DP_TEXT_TITLE;

to

      if (tep_session_is_registered('paypal_ec_token') && tep_session_is_registered('paypal_ec_payer_id') && tep_session_is_registered('paypal_ec_payer_info')) {
      $this->title = MODULE_PAYMENT_PAYPAL_DP_TEXT_EC_TITLE;
      } else {
      $this->title = MODULE_PAYMENT_PAYPAL_DP_TEXT_DP_TITLE;
      }


If I monkey around with it a bit more, I might be able to make the original title show up in the admin module.

--Glen

#48   dynamoeffects

dynamoeffects
  • Members
  • 1,646 posts
  • Real Name:Brian Burton
  • Gender:Male
  • Location:Italy

Posted 14 October 2005 - 08:42 AM

ken.yong said:

Hi, another problem.... My Express Checkout button is returning error 10417.

That's the generic error I was getting yesterday.  Unverify your sandbox user by deleting the bank account and then try again (you'll have to turn off the Verify check in the module admin).  As I mentioned before, I think the fake bank account number they give us is depleted and so, thinking the user can't pay, it tells the customer to use another form of payment.


ken.yong said:

In addition, they asked what PayPal SDK, if any, is the module using?

2.0
Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

#49   dynamoeffects

dynamoeffects
  • Members
  • 1,646 posts
  • Real Name:Brian Burton
  • Gender:Male
  • Location:Italy

Posted 14 October 2005 - 08:58 AM

View PostSteveDallas, on Oct 14 2005, 12:32 AM, said:

However, when he gets to the payment selection page, he should still have the opportunity to select PayPal if he changed his mind during the checkout process.

I can agree with that.  I didn't have it show up again simply because if the user is logged in, and skipped past Express Checkout (maybe even twice), I'd personally prefer them use Direct Payment.  I'll make it an option in 0.3 to display an express checkout button on the payment page.
Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

#50   SteveDallas

SteveDallas
  • Members
  • 720 posts
  • Real Name:Glen
  • Gender:Male
  • Location:Alabama, US

Posted 14 October 2005 - 01:45 PM

View Postdynamoeffects, on Oct 14 2005, 03:58 AM, said:

I can agree with that.  I didn't have it show up again simply because if the user is logged in, and skipped past Express Checkout (maybe even twice), I'd personally prefer them use Direct Payment.  I'll make it an option in 0.3 to display an express checkout button on the payment page.

For the time being, I'm just using the PayPal IPN payment contribution to handle this choice.

While fooling around with things last night (well, around 3AM), I added a capability for payment modules to display an icon with the module name.  Once I figured out how payment modules interact with checkout_payment.php, it was pretty straightforward.

--Glen

#51   ken.yong

ken.yong
  • Members
  • 131 posts
  • Real Name:Ken Yong

Posted 14 October 2005 - 02:29 PM

Hi, Dynamo,

Actually I use a real Paypal account to test the Express Checkout button and I am still getting the error 10417 today. Any help will be greatly appreciated!

Ken

#52   dynamoeffects

dynamoeffects
  • Members
  • 1,646 posts
  • Real Name:Brian Burton
  • Gender:Male
  • Location:Italy

Posted 14 October 2005 - 03:52 PM

Don't know what's happening in your case, Ken.  PayPal doesn't return any other info with that error.

Is your real paypal account verified?  Do as I said above and delete the bank account unverifying it, then test it.  Reverify it after you're done, of course.

This is an error on PayPal's side and not sure what to tell you.  While trying to debug that error before, I got a new username with api2 in the username as well as a new certificate.  While it didn't immediately solve my problems, the certifcates might be a little different.

Speaking of, are you trying to use a sandbox username/password/certificate to process a live transaction?
Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

#53   ken.yong

ken.yong
  • Members
  • 131 posts
  • Real Name:Ken Yong

Posted 14 October 2005 - 04:37 PM

Yes, my real paypal bank account is verified. The problem is even if I use my credit card (inside paypal) and it doesn't work as well. I can also try to download a new certificate and see.

I do everything in a live environment. I am keeping my fingers cross to have it all work out, though I am not sure how to debug this. Paypal asked me for the SOAP log of requests and responses - Do you think this can solve the problem (even if I provide them with the log)?

Many thanks!

#54   neale

neale
  • Members
  • 11 posts
  • Real Name:Neale PAshley

Posted 14 October 2005 - 07:16 PM

Warning: paypal_init(Services/PayPal.php): failed to open stream: No such file or directory in /home/nflhardh/public_html/catalog/includes/modules/payment/paypal_wpp.php on line 262

Fatal error: paypal_init(): Failed opening required 'Services/PayPal.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/nflhardh/public_html/catalog/includes/modules/payment/paypal_wpp.php on line 262

Is it the API username that could be causing this problem?  Can someone give me an example of what the API username looks like?

Please Help!!!!!!!!!!!!!!!!!!!!!!

Thanks

#55   dynamoeffects

dynamoeffects
  • Members
  • 1,646 posts
  • Real Name:Brian Burton
  • Gender:Male
  • Location:Italy

Posted 14 October 2005 - 07:46 PM

You either didn't install the pear modules or didn't set the path in the module's admin settings.
Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.

#56   pcs-webservices

pcs-webservices
  • Members
  • 5 posts
  • Real Name:Nicole Fagan
  • Location:FL

Posted 14 October 2005 - 09:17 PM

This was an AWESOME contribution!!  I flubbed up the install the first time, not sure what I did but lots of things weren't working.  Second try went extremely smooth and quick, and I was able to process a credit card with no problem whatsoever (confirmed it already, got the email notification from paypal, the whole thing)!!  Haven't tried processing through paypal, I only have one account at the moment and I can't pay myself...

Anyways, I've barely done anything to the site, but it's "live" and there is a test product in the "New in October" for $.01 if anyone wants to peek.  

www.pcs-webservices.com

I'll refund your penny through paypal if you like, just put a note in the box when you check out.

Kudos Brian!

Nicole

Mine was based on my email address, so if your email address is admin@hotmail.com, the api would look like "admin_api1.hotmail.com".  At least that's how mine was - Hope that helps.

I flubbed my api user name the first time too (I put @ instead of .), but that wasn't all I flubbed.  I ditched it and started over.  2nd intall went smooth as silk.  Both were the 2nd version posted yesterday.

Nicole

#57   neale

neale
  • Members
  • 11 posts
  • Real Name:Neale PAshley

Posted 14 October 2005 - 09:49 PM

View Postpcs-webservices, on Oct 14 2005, 09:17 PM, said:

This was an AWESOME contribution!!  I flubbed up the install the first time, not sure what I did but lots of things weren't working.  Second try went extremely smooth and quick, and I was able to process a credit card with no problem whatsoever (confirmed it already, got the email notification from paypal, the whole thing)!!  Haven't tried processing through paypal, I only have one account at the moment and I can't pay myself...

Anyways, I've barely done anything to the site, but it's "live" and there is a test product in the "New in October" for $.01 if anyone wants to peek.  

www.pcs-webservices.com

I'll refund your penny through paypal if you like, just put a note in the box when you check out.

Kudos Brian!

Nicole

Mine was based on my email address, so if your email address is admin@hotmail.com, the api would look like "admin_api1.hotmail.com".  At least that's how mine was - Hope that helps.

I flubbed my api user name the first time too (I put @ instead of .), but that wasn't all I flubbed.  I ditched it and started over.  2nd intall went smooth as silk.  Both were the 2nd version posted yesterday.

Nicole

Thanks guys, I'm off to figure out this Pear module business.  You are all awesome!

#58   neale

neale
  • Members
  • 11 posts
  • Real Name:Neale PAshley

Posted 14 October 2005 - 10:17 PM

View Postdynamoeffects, on Oct 14 2005, 07:46 PM, said:

You either didn't install the pear modules or didn't set the path in the module's admin settings.


OK, I'm a step further but now I get this when the express button is clicked?

An error occured when we tried to contact PayPal's servers.

()



Sorry, I'm a real newbie here.

#59   SteveDallas

SteveDallas
  • Members
  • 720 posts
  • Real Name:Glen
  • Gender:Male
  • Location:Alabama, US

Posted 14 October 2005 - 11:26 PM

View Postneale, on Oct 14 2005, 05:17 PM, said:

OK, I'm a step further but now I get this when the express button is clicked?

An error occured when we tried to contact PayPal's servers.

()

Sorry, I'm a real newbie here.

This was a problem that I had encountered earlier.  Did you install your API certificate in /catalog/includes/modules/payment/wpp_cert/?  Go to your PayPal profile page and find "API Access" in the left column.  If you haven't already done so, "Request API Certificate", then download the file; it will be called cert_key_pem.txt.  If you already requested a certificate, you can download it again.  Upload it to the above directory on your server, then put the file name in the WPP payment module preferences.

#60   dynamoeffects

dynamoeffects
  • Members
  • 1,646 posts
  • Real Name:Brian Burton
  • Gender:Male
  • Location:Italy

Posted 15 October 2005 - 09:23 AM

0.2 must be mighty stable because I haven't gotten a single bug report, (excuse me while I toot on the ol' horn).  I'm still going to release one more version to wipe out the common problems everyone seems to have run into.

It's going to:

1) Check for your pear modules and give you a big fat error if they don't exist (in the admin section)
2) It'll check for a file in your wpp_cert directory and give you a big fat error if it doesn't exist (in the admin section.  I like big fat errors)
C) When it doesn't connect to PayPal's servers, it'll put out a more descriptive error.  But if the first two errors do their job, and the user installs the pear modules and certificate correctly, it'll start connecting to PayPal's servers and reporting descriptive errors anyway.

Edited by dynamoeffects, 15 October 2005 - 09:24 AM.

Please use the forums for support! I am happy to help you here, but I am unable to offer free technical support over instant messenger or e-mail.