Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

PayPal WPP Direct Payments & Express Checkout Support


dynamoeffects

Recommended Posts

Hi dynamoeffects,

 

Your work is amazing! This contribution is brillant! I've been working with this module for a while, reading all of the support, and trying to figure out a solution to the error I keep getting. I'm stuck. Please help! The diagnostics came back that I have successfully completed the paypal wpp install. But when I log in as a returning customer I get the following error:

 

Warning: Cannot modify header information - headers already sent by (output started at /home/content/m/p/p/mppantry/html/store/includes/languages/english/login.php:33) in /home/content/m/p/p/mppantry/html/store/includes/functions/general.php on line 33

 

I am fairly new to php so I've been really careful as to what I modify. I've compared my code to your contribution, and I still am having trouble with this. What more can I tell you? Please help! Thank you so much!

Link to comment
Share on other sites

What's in the /html/store/includes/languages/english/login.php file at line 33?

 

Sorry to bother you. I think I just fixed it. I had 2 extra carriage returns. There wasn't any code there. That was what had me stumped. Just for future reference for us php newbies...why do the extra returns cause an error? Thank you Brian for your time!!! Your contrib is amazing!

Link to comment
Share on other sites

can the express checkout part of this contribution be seperated from the wpp?

 

i have a paypal business account and am thinking of using the express checkout after it was mentioned on another thread, but i do not want to pay the monthly charge for wpp and would like to use just the API's to test it's userbility before going live....

 

... can express checkout be used as stand-alone contribution without wpp, using API's to enable customers to use credit cards on an osC store?

 

can anyone give some guidance please?

Edited by chooch

Upon receiving fixes and advice, too many people don't bother to post updates informing the forum of how it went. Until of course they need help again on other issues and they come running back!

 

Why receive the information you require in good faith for free, only to then have the attitude to ignore the people who gave it to you?

 

There's no harm in saying, 'Thanks, it worked'. On the contrary, it creates a better atmosphere.

 

CHOOCH

Link to comment
Share on other sites

... can express checkout be used as stand-alone contribution without wpp, using API's to enable customers to use credit cards on an osC store?

 

can anyone give some guidance please?

 

It is possible to do this. You would have to re-work paypal_wpp.php to supply only the Express Checkout functionality to checkout_payment.php. Since the module wasn't designed that way, you would need some PHP experience to implement it. AFAIK, the Express Checkout API can be used by any (Premier or Business) PayPal customer, and is an excellent alternative to the PayPal IPN API. If you just want to implement EC as an "additional payment option", you could eliminate the changes to login.php and checkout_shipping.php as well.

 

The exact steps to implement this will be left as an exercise to the reader. I haven't done it myself, though I have been thinking about something similar for a year or so.

 

--Glen

Link to comment
Share on other sites

It is possible to do this.

Thanks....

 

Glad to hear it can be done - i will try experimenting within a couple of days :D

Upon receiving fixes and advice, too many people don't bother to post updates informing the forum of how it went. Until of course they need help again on other issues and they come running back!

 

Why receive the information you require in good faith for free, only to then have the attitude to ignore the people who gave it to you?

 

There's no harm in saying, 'Thanks, it worked'. On the contrary, it creates a better atmosphere.

 

CHOOCH

Link to comment
Share on other sites

I'm trying to install this, but I'm stuck at Step 3. How do I import the file "paypal_wpp.sql" into my database? When I log into phpMyAdmin, there is no Import function, or at least I can't find it. And of course, searching the phpMyAdmin documentation yielded no results. Terrific.

Link to comment
Share on other sites

OK, I got everything installed, and it works great...except for one problem.

 

I apologize sincerely if this has already been covered in this thread, but I do not have time to read 90 pages.

 

Whenever you click the PayPal Express Checkout button, whether on the login page or on the shipping page, it just hangs. The browser searches for the page....then nothing happens. After about 45 seconds, it returns the dreaded Page Cannot Be Displayed.

 

Any help is appreciated.

 

Also, what page are the input fields generated from? My page is displaying the fields like this:

 

First Name on

Credit Card:

 

I would like to try to stretch the table wider in order to get all of that on one line, but I've searched and searched and cannot find where this happens.

Edited by nibl69
Link to comment
Share on other sites

OK, disregard my above posts.

 

I now have everything installed, but similar to what others have had trouble with, ALL transactions are being declined. I am testing live, with several different credit cards, and all transactions, both with Direct Payment and Express Checkout, are being declined. Even Express Checkout with a bank account comes back declined. I am a GoDaddy user and have entered the proxy address: http://64.202.165.130:3128.

 

The follow error is displayed during Checkout:

 

Your credit card was declined. Please try another card or contact your bank for more info.

 

Gateway Decline (10752)

This transaction cannot be processed.

 

The error dump is as follows:

 

In function: before_process() - Direct Payment

Did first contact attempt return error? Yes

---------------------------------------------------------------------

-------------------------------DP_DUMP-------------------------------

------------This is the information that was sent to PayPal----------

---------------------------------------------------------------------

---------------------------------------------------------------------

-------------------------------FINAL_REQ-----------------------------

-------------------This is the response from PayPal------------------

---------------------------------------------------------------------

Array

(

[security] =>

[RequesterCredentials] => Array

(

[0] => Array

(

[Credentials] => Array

(

[0] => Array

(

[username] =>

[Password] =>

[subject] =>

)

 

)

 

)

 

)

 

[DoDirectPaymentResponse] => Array

(

[0] => Array

(

[Timestamp] => 2006-12-31T18:35:22Z

[Ack] => Failure

[CorrelationID] => 7fe453d57f86e

[Errors] => Array

(

[0] => Array

(

[shortMessage] => Gateway Decline

[LongMessage] => This transaction cannot be processed.

[ErrorCode] => 10752

[severityCode] => Error

)

 

)

 

[Version] => 2.000000

[build] => 1.0006

[Amount] => 20.66

)

 

)

 

)

 

 

---------------------------------------------------------------------

---------------------------------TS_REQ------------------------------

--------Results of the transaction search if it was executed---------

---------------------------------------------------------------------

 

I was reading through a few pages from people that had similar errors, though not exact, and didn't see a suggested solution. Any help is appreciated.

 

Also, I'd still like to know where the credit card form's HTML is generated from. I want to edit some of its formatting, but can't seem to find where it comes from.

 

Thanks.

Edited by nibl69
Link to comment
Share on other sites

I've confirmed a bug in Express checkout in this module where if the user selects a "gift" shipping address while in PayPal (which adds a new name to the alternate address), the name on the selected address is not transferred back to OSC. The original PayPal account name is transferred back instead.

 

I fixed the address info displayed on checkout_shipping.php and checkout_confirmation.php, but these are only for display so my change does not fix the shipping info stored in the database. So far my attempts to make this a complete solution have failed so I'm posting this to bring attention to this bug and see if there are any hints or fixes that might solve this quicker than I'm able to.

 

The changes I made so far are as follows.

 

paypal_wpp_0.8.2 distribution /catalog/checkout_shipping.php line 345

// FIND

$address_label = $paypal_ec_payer_info['payer_firstname'] . ' ' . $paypal_ec_payer_info['payer_lastname'] . '<br>';

// REPLACE

$address_label = $paypal_ec_payer_info['ship_name'] . '<br>';

 

 

paypal_wpp_0.8.2 distribution /catalog/checkout_confirmation.php line 165

// FIND

<td class="main"><?php echo tep_address_format($order->delivery['format_id'], $order->delivery, 1, ' ', '<br>'); ?></td>

// REPLACE

<?php

if ($ec_checkout && $ec_enabled) {

$paypal_ec_payer_info = $_SESSION['paypal_ec_payer_info'];

$address_label = $paypal_ec_payer_info['ship_name'] . '<br>';

if ($paypal_ec_payer_info['payer_business']) $address_label .= $paypal_ec_payer_info['payer_business'].'<br>';

$address_label .= $paypal_ec_payer_info['ship_street_1'] . '<br>';

if ($paypal_ec_payer_info['ship_street_2']) $address_label .= $paypal_ec_payer_info['ship_street_2'].'<br>';

$address_label .= $paypal_ec_payer_info['ship_city'] . ', ' . $paypal_ec_payer_info['ship_state'] . ' ' . $paypal_ec_payer_info['ship_postal_code'] . '<br>';

$address_label .= $paypal_ec_payer_info['ship_country_name'];

?>

<td class="main" valign="top"><?php echo $address_label; ?></td>

<?php } else { ?>

<td class="main"><?php echo tep_address_format($order->delivery['format_id'], $order->delivery, 1, ' ', '<br>'); ?></td>

<?php } ?>

Link to comment
Share on other sites

I got this contribution working and I can't thank you enough. I don't have time to sift trough 90plus pages so my apoligies if this has been asked before.

 

One thing though :P

 

After a customer completes the order, and a user account is created in osc, there are a couple missing fields in the new users profile.

 

Date of Birth

Telephone Number

 

Are blank in their accounts. Just wondering if that's how it's supposed to be?

 

---------------------------------------------------------------------------------------------

 

I also can confirm that the Guest shipping address selected in PayPal is not being passed to the database.

 

---------------------------------------------------------------------------------------------

 

For people having trouble, here's a couple things you can try:

 

Go to: https://developer.paypal.com

 

Login or create account

 

Click on Sandbox-> Learn More...-> Sandbox User Guide

 

Read this until you understand it. I was having problems untill I started over, deleted all test accounts, and followed this manual word for word, and now it works.

 

You need a Personal account AND a Business account. The business account will be the account the receives the deposits and the personal account is the one that will be making the deposits. All information can and should be fake. Sandbox will fill in any "sensitive" information automatically (CC#'s, Bank Account #'s, etc), these fields should be left default. The business accounts Social Security # is specified in the manual.

 

NOTE: Proir to making fake purchases, make sure you log into BOTH the business and personal accounts in sandbox. Once they timeout (5min), you won't be able to make fake purchases until you log into BOTH again.

 

In "store/catalog/includes/configure.php" make sure there is a "/" on the end of:

define('DIR_FS_CATALOG', 'C:/home/uscomput/public_html/store/catalog/');

 

I'm using Xampp with vhosts so your path will be different. For anyone using xampp and having trouble with the mail client bombing out after checkout:

 

Search Xampp for php.ini

Open each file and uncomment "extension=php_smtp.dll"

 

Restart Apache and start Mercury and click on Admin

Configuration->Mercury core module: Internet name = localhost

 

If you're using vhosts:

Configuration->Mercury core module-> Local Domains:

Add new domain (Local host... = localhost) (Internet name = vhostServeName) ie www.example1.com

 

Configuration-> Mercury SMTP Server-> SSL: check Enable support for SSL

Certificate file: C:\xampp\apache\conf\ssl.crt\server.crt (your path might be different)

 

 

GL

Link to comment
Share on other sites

Firstly HAPPY NEW YEAR!!! :D

 

Now for the advice...

 

When someone uses the direct (not express) checkout and uses a credit card to pay, the order is instantly completed and the customer stays on the osc store at all times - can anyone pelase tell me how long it takes for the paypal account to show that transaction because the paypal account still hasn't shown any of the direct transactions some 12 hours later but immediately shows the express!

 

Yet the orders page in the osc store clearly shows the direct transaction as pending with the correct details...

 

thanks

Edited by chooch

Upon receiving fixes and advice, too many people don't bother to post updates informing the forum of how it went. Until of course they need help again on other issues and they come running back!

 

Why receive the information you require in good faith for free, only to then have the attitude to ignore the people who gave it to you?

 

There's no harm in saying, 'Thanks, it worked'. On the contrary, it creates a better atmosphere.

 

CHOOCH

Link to comment
Share on other sites

Hi,

 

Please reference the error message and trouble I was having above.

 

Tonight I signed up for a Sandbox account. I processed a transaction, with my own credit card, and it worked fine! However, when I enter the proper creditials for my live account and upload the live certificate, it is still not working. All transactions, both Direct Payment and Express Checkout, are coming back declined. Error message says Gateway Decline (#10752).

 

If the Sandbox account worked, then that means this module is installed correctly, right?

 

Then what the heck is the problem?

Link to comment
Share on other sites

Question regarding my above problem....

 

If I am on a shared server, such as GoDaddy web hosting, should I have downloaded the API Signature instead of the API SSL Certificate? Someone told me a page or two back that I was supposed to download the API SSL Cert, but according to the PayPal website, the API Signature is designed for shared servers, while the API Certificate is designed for those that have control over their own server. Could that be the source of my problem?

Edited by nibl69
Link to comment
Share on other sites

When someone uses the direct (not express) checkout and uses a credit card to pay, the order is instantly completed and the customer stays on the osc store at all times - can anyone pelase tell me how long it takes for the paypal account to show that transaction because the paypal account still hasn't shown any of the direct transactions some 12 hours later but immediately shows the express!

I just checked with the bank and my credut card transaction isn't listed at all.... can someone please let me know when funds from a direct payment with credit card show up in your paypal account?

Upon receiving fixes and advice, too many people don't bother to post updates informing the forum of how it went. Until of course they need help again on other issues and they come running back!

 

Why receive the information you require in good faith for free, only to then have the attitude to ignore the people who gave it to you?

 

There's no harm in saying, 'Thanks, it worked'. On the contrary, it creates a better atmosphere.

 

CHOOCH

Link to comment
Share on other sites

Question regarding my above problem....

 

If I am on a shared server, such as GoDaddy web hosting, should I have downloaded the API Signature instead of the API SSL Certificate? Someone told me a page or two back that I was supposed to download the API SSL Cert, but according to the PayPal website, the API Signature is designed for shared servers, while the API Certificate is designed for those that have control over their own server. Could that be the source of my problem?

 

Funds appear in your paypal account straight away... if you do not have them there then your transaction did not go through.

 

Hey Brian, if you are reading this... can you please tell us when are you likely to release the much awaited UK version of the module or basically the sme module but with support for UK Maestro/Switch debit cards. Only thing missing from an otherwise fantastic contribution !

Link to comment
Share on other sites

Funds appear in your paypal account straight away... if you do not have them there then your transaction did not go through.

 

Thanks for clarifying that for me.

 

I have got this error on the checkout payment page:

 

Your credit card was declined. Please try another card or contact your bank for more info.

 

Error #1: Invalid Data (10711)

There's an error with this transaction. Please enter your state in the billing address.

 

Error #2: Invalid Data (10729)

There's an error with this transaction. Please enter your state in the shipping address.

 

Is this because i am using a uk visa credit card with a uk address and the options in the module state 'us dollars only'??

What is the state of play on this contribution for UK cards and UK/Euro currency??

 

--------------------------------------------------------------------------------------------------

 

Also, the paypal email for the Express Checkoutwhich works perfectly shows this:

 

Item Name: Matrox G200 MMS

Item Number: 1{4}1{3}5 (MG200MMS)

 

Anyone know why this happens?

 

Any help is a appreciated - thanks!

Edited by chooch

Upon receiving fixes and advice, too many people don't bother to post updates informing the forum of how it went. Until of course they need help again on other issues and they come running back!

 

Why receive the information you require in good faith for free, only to then have the attitude to ignore the people who gave it to you?

 

There's no harm in saying, 'Thanks, it worked'. On the contrary, it creates a better atmosphere.

 

CHOOCH

Link to comment
Share on other sites

Any help is a appreciated - thanks!

 

I currently have a working UK version of this minus the debit card facility. I know that the modification is under way at the moment but I am just waiting to hear on the debit card side of things.

 

I initially got the state error you had as being in the UK myself I removed state from the configuration. This box is a requierd field and is basically acts as a county box for the UK so maybe this is why it is not working for you?

Link to comment
Share on other sites

I currently have a working UK version of this minus the debit card facility. I know that the modification is under way at the moment but I am just waiting to hear on the debit card side of things.

Thanks for the reply.. I clocked the state fileds and amended that.

 

I take it you pay the £20 monthly paypal fee then? I was looking at this contribution to see if the express checkout and direct payment facility was possible without the WPP (and the £20 monthly charge)

 

I have got really far in my experiments but am having problems at the final hurdle - the express checkout works fine but the credit cards aren't being processed, i get 'checkout success' and order update and emails but i cannot get the transaction/amount to show up in my paypal account because it doesn't actually go through.

 

I was under the impression that WPP and it's monthly charges could be by-passed if API's were used to complete the transaction on the osc store... I have done extensive experimenting and can't be that far off a solution now but have to question whether API's are to be alongside WPP or can be used as stand alone.

Upon receiving fixes and advice, too many people don't bother to post updates informing the forum of how it went. Until of course they need help again on other issues and they come running back!

 

Why receive the information you require in good faith for free, only to then have the attitude to ignore the people who gave it to you?

 

There's no harm in saying, 'Thanks, it worked'. On the contrary, it creates a better atmosphere.

 

CHOOCH

Link to comment
Share on other sites

Chooch,

Turn off the option that lets you process card manually if there is a fialure - that way WPP will not go through if there is a problem so you will know exaclty if the transaction worked or not.

 

I believe Your problem is with the fact that you need to make sure you set your paypal_wpp.php properly is a uk one as a Uk one properly - go through it it is not too hard to figure out... make sure you change the currency in the ph file if your prices are in pounds ect

 

I have it fully working accepting transactions (which post into my paypal account instantly) the only thing that I am missing is the support for Marstro/Switch/Solo cards - but Brian is working on them so it is now just a question of time...

Link to comment
Share on other sites

Chooch,

Turn off the option that lets you process card manually if there is a fialure - that way WPP will not go through if there is a problem so you will know exaclty if the transaction worked or not.

 

I believe Your problem is with the fact that you need to make sure you set your paypal_wpp.php properly is a uk one as a Uk one properly - go through it it is not too hard to figure out... make sure you change the currency in the ph file if your prices are in pounds ect

 

I have it fully working accepting transactions (which post into my paypal account instantly) the only thing that I am missing is the support for Marstro/Switch/Solo cards - but Brian is working on them so it is now just a question of time...

The key question... are you using the WPP with the £20 monthly charge?

Upon receiving fixes and advice, too many people don't bother to post updates informing the forum of how it went. Until of course they need help again on other issues and they come running back!

 

Why receive the information you require in good faith for free, only to then have the attitude to ignore the people who gave it to you?

 

There's no harm in saying, 'Thanks, it worked'. On the contrary, it creates a better atmosphere.

 

CHOOCH

Link to comment
Share on other sites

The key question... are you using the WPP with the £20 monthly charge?

 

 

I am paying the monthly charge as i feel it is worth it for the professional look to my customers. Having said that I don't think paypal UK are starting charging until april

Link to comment
Share on other sites

I am paying the monthly charge as i feel it is worth it for the professional look to my customers. Having said that I don't think paypal UK are starting charging until april

Apparantly, with API's you don't have to pay a monthly fee and you can process the Express Checkout and Paypal Direct credit cards in the same way at your checkout (minus the off-line card facility that WPP provides).

Edited by chooch

Upon receiving fixes and advice, too many people don't bother to post updates informing the forum of how it went. Until of course they need help again on other issues and they come running back!

 

Why receive the information you require in good faith for free, only to then have the attitude to ignore the people who gave it to you?

 

There's no harm in saying, 'Thanks, it worked'. On the contrary, it creates a better atmosphere.

 

CHOOCH

Link to comment
Share on other sites

Apparantly, with API's you don't have to pay a monthly fee and you can process the Express Checkout and Paypal Direct credit cards in the same way at your checkout (minus the off-line card facility that WPP provides).

 

 

Ah right that is intersting. so WPP is only there to give you a virtual terminal in addition to a normal paypal account? I think in my line of business the need to take payments via this method is minimal.

 

Please let me know if you get it working without the charge!!

 

Thanks

Link to comment
Share on other sites

The key question... are you using the WPP with the £20 monthly charge?

 

 

Yes I pay the £20 a month - you need to pay that to be able to take direct payments - without it your api credentials won't work...

 

To use WPP you need a Paypal website payment pro account ..

 

In the Uk they won't start charging the £20 until APril

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...